25 lines
1.2 KiB
C#
25 lines
1.2 KiB
C#
using System;
|
|
using System.Linq;
|
|
using OpenStack.Client.Powershell.Utility;
|
|
using OpenStack.Identity;
|
|
|
|
namespace AcmeInc.OpenStack.Client.Powershell.Utility
|
|
{
|
|
[ServiceProviderAttribute("AcmeInc")]
|
|
public class AcmeRegistrationManager : RegistrationManager
|
|
{
|
|
public override RegistrationResponse Register(ServiceProvider serviceProvider)
|
|
{
|
|
this.ValidateCredentialElements(ref serviceProvider);
|
|
|
|
string authenticationEndpoint = serviceProvider.CredentialElements.Where(ce => ce.Key == "AuthenticationServiceURI").Single().Value;
|
|
string userName = serviceProvider.CredentialElements.Where(ce => ce.Key == "Username").Single().Value;
|
|
string password = serviceProvider.CredentialElements.Where(ce => ce.Key == "Password").Single().Value;
|
|
string tenantId = serviceProvider.CredentialElements.Where(ce => ce.Key == "DefaultTenantId").Single().Value;
|
|
|
|
IOpenStackCredential credential = new OpenStackCredential(new Uri (authenticationEndpoint), userName, password, tenantId);
|
|
return new RegistrationResponse(credential, serviceProvider);
|
|
}
|
|
}
|
|
}
|