public PSADServicePrincipal CreateServicePrincipal(CreatePSServicePrincipalParameters createParameters) { ServicePrincipalCreateParameters graphParameters = new ServicePrincipalCreateParameters { AppId = createParameters.ApplicationId.ToString(), AccountEnabled = createParameters.AccountEnabled }; try { return(GraphClient.ServicePrincipal.Create(graphParameters).ServicePrincipal.ToPSADServicePrincipal()); } catch (CloudException ce) { if (ce.Response.StatusCode == HttpStatusCode.Forbidden) { GetCurrentUserResult currentUser = GraphClient.Objects.GetCurrentUser(); if (currentUser.AADObject != null && string.Equals(currentUser.AADObject.UserType, "Guest", StringComparison.InvariantCultureIgnoreCase)) { throw new InvalidOperationException(ProjectResources.CreateServicePrincipalNotAllowedGuestUser); } } throw; } }
public PSADServicePrincipal CreateServicePrincipal(CreatePSServicePrincipalParameters createParameters) { ServicePrincipalCreateParameters graphParameters = new ServicePrincipalCreateParameters { AppId = createParameters.ApplicationId.ToString(), AccountEnabled = createParameters.AccountEnabled }; return(GraphClient.ServicePrincipal.Create(graphParameters).ServicePrincipal.ToPSADServicePrincipal()); }
public override void ExecuteCmdlet() { CreatePSServicePrincipalParameters createParameters = new CreatePSServicePrincipalParameters { ApplicationId = ApplicationId, AccountEnabled = !DisableAccount.IsPresent }; WriteObject(ActiveDirectoryClient.CreateServicePrincipal(createParameters)); }
protected override void ProcessRecord() { CreatePSServicePrincipalParameters createParameters = new CreatePSServicePrincipalParameters { ApplicationId = ApplicationId, AccountEnabled = !DisableAccount.IsPresent }; WriteObject(ActiveDirectoryClient.CreateServicePrincipal(createParameters)); }
public PSADServicePrincipal CreateServicePrincipal(CreatePSServicePrincipalParameters createParameters) { IList <PasswordCredential> passwordCredentials = createParameters.PasswordCredentials != null ? createParameters.PasswordCredentials.Select(psCredential => psCredential.ToGraphPasswordCredential()).ToList() : null; IList <KeyCredential> keyCredentials = createParameters.KeyCredentials != null ? createParameters.KeyCredentials.Select(psCredential => psCredential.ToGraphKeyCredential()).ToList() : null; ServicePrincipalCreateParameters graphParameters = new ServicePrincipalCreateParameters { AppId = createParameters.ApplicationId.ToString(), AccountEnabled = createParameters.AccountEnabled, KeyCredentials = keyCredentials, PasswordCredentials = passwordCredentials }; try { return(GraphClient.ServicePrincipals.Create(graphParameters).ToPSADServicePrincipal()); } catch (GraphErrorException ce) { if (ce.Response.StatusCode == HttpStatusCode.Forbidden) { AADObject currentUser = GraphClient.Objects.GetCurrentUser(); if (currentUser != null && string.Equals(currentUser.UserType, "Guest", StringComparison.InvariantCultureIgnoreCase)) { throw new InvalidOperationException(ProjectResources.CreateServicePrincipalNotAllowedGuestUser); } } throw; } }
public PSADServicePrincipal CreateServicePrincipal(CreatePSServicePrincipalParameters createParameters) { ServicePrincipalCreateParameters graphParameters = new ServicePrincipalCreateParameters { AppId = createParameters.ApplicationId.ToString(), AccountEnabled = createParameters.AccountEnabled }; return GraphClient.ServicePrincipal.Create(graphParameters).ServicePrincipal.ToPSADServicePrincipal(); }
public PSADServicePrincipal CreateServicePrincipal(CreatePSServicePrincipalParameters createParameters) { IList<PasswordCredential> passwordCredentials = createParameters.PasswordCredentials != null ? createParameters.PasswordCredentials.Select(psCredential => psCredential.ToGraphPasswordCredential()).ToList() : null; IList<KeyCredential> keyCredentials = createParameters.KeyCredentials != null ? createParameters.KeyCredentials.Select(psCredential => psCredential.ToGraphKeyCredential()).ToList() : null; ServicePrincipalCreateParameters graphParameters = new ServicePrincipalCreateParameters { AppId = createParameters.ApplicationId.ToString(), AccountEnabled = createParameters.AccountEnabled, KeyCredentials = keyCredentials, PasswordCredentials = passwordCredentials }; try { return GraphClient.ServicePrincipals.Create(graphParameters).ToPSADServicePrincipal(); } catch (GraphErrorException ce) { if (ce.Response.StatusCode == HttpStatusCode.Forbidden) { AADObject currentUser = GraphClient.Objects.GetCurrentUser(); if (currentUser != null && string.Equals(currentUser.UserType, "Guest", StringComparison.InvariantCultureIgnoreCase)) { throw new InvalidOperationException(ProjectResources.CreateServicePrincipalNotAllowedGuestUser); } } throw; } }
public PSADServicePrincipal CreateServicePrincipal(CreatePSServicePrincipalParameters createParameters) { ServicePrincipalCreateParameters graphParameters = new ServicePrincipalCreateParameters { AppId = createParameters.ApplicationId.ToString(), AccountEnabled = createParameters.AccountEnabled }; try { return GraphClient.ServicePrincipal.Create(graphParameters).ServicePrincipal.ToPSADServicePrincipal(); } catch (CloudException ce) { if (ce.Response.StatusCode == HttpStatusCode.Forbidden) { GetCurrentUserResult currentUser = GraphClient.Objects.GetCurrentUser(); if (currentUser.AADObject != null && string.Equals(currentUser.AADObject.UserType, "Guest", StringComparison.InvariantCultureIgnoreCase)) { throw new InvalidOperationException(ProjectResources.CreateServicePrincipalNotAllowedGuestUser); } } throw; } }
public override void ExecuteCmdlet() { ExecutionBlock(() => { if (ApplicationId == Guid.Empty) { string uri = "http://" + DisplayName.Trim().Replace(' ', '_'); // Create an application and get the applicationId CreatePSApplicationParameters appParameters = new CreatePSApplicationParameters { DisplayName = DisplayName, IdentifierUris = new[] { uri }, HomePage = uri }; if (ShouldProcess(target: appParameters.DisplayName, action: string.Format("Adding a new application for with display name '{0}'", appParameters.DisplayName))) { var application = ActiveDirectoryClient.CreateApplication(appParameters); ApplicationId = application.ApplicationId; } } CreatePSServicePrincipalParameters createParameters = new CreatePSServicePrincipalParameters { ApplicationId = ApplicationId, AccountEnabled = true }; switch (ParameterSetName) { case ParameterSet.ApplicationWithPasswordPlain: case ParameterSet.DisplayNameWithPasswordPlain: createParameters.PasswordCredentials = new PSADPasswordCredential[] { new PSADPasswordCredential { StartDate = StartDate, EndDate = EndDate, KeyId = Guid.NewGuid(), Password = Password } }; break; case ParameterSet.ApplicationWithPasswordCredential: case ParameterSet.DisplayNameWithPasswordCredential: createParameters.PasswordCredentials = PasswordCredentials; break; case ParameterSet.ApplicationWithKeyPlain: case ParameterSet.DisplayNameWithKeyPlain: createParameters.KeyCredentials = new PSADKeyCredential[] { new PSADKeyCredential { StartDate = StartDate, EndDate = EndDate, KeyId = Guid.NewGuid(), CertValue = CertValue } }; break; case ParameterSet.ApplicationWithKeyCredential: case ParameterSet.DisplayNameWithKeyCredential: createParameters.KeyCredentials = KeyCredentials; break; } if (ShouldProcess(target: createParameters.ApplicationId.ToString(), action: string.Format("Adding a new service principal to be associated with an application having AppId '{0}'", createParameters.ApplicationId))) { WriteObject(ActiveDirectoryClient.CreateServicePrincipal(createParameters)); } }); }