В настоящее время я создаю свои приложения в каталоге Azure Active вручную, когда есть запрос на новую среду. Я изучал способы создания этих приложений из кода через REST API. Я добился успеха в создании пользователей и групп в существующих приложениях, используя «client_credentials», как показано.Как программно создавать приложения в Azure AD
ClientCredential clientCred = new ClientCredential(clientID, clientSecret);
AuthenticationResult authenticationResult = await authenticationContext.AcquireTokenAsync(resAzureGraphAPI, clientCred);
Подобным же образом я пытался использовать 'access_token' генерируется сверху, чтобы создать новое приложение adClient.Applications.AddApplicationAsync (NewApplication) .Wait()
Но это бросает error- " Недостаточно привилегий для завершения операции. "
Я смотрел другие темы и страницу Azure AD msdn и получается, что поток client_credentials не поддерживает создание/обновление приложений.
Adding Applications programmatically in Azure AD using Client Credentials Flow
выше нить также отметил, что способ, чтобы обойти это с помощью «grant_type = пароль» поток. Я попробовал это, как было предложено, но я продолжаю получать следующую ошибку, которая не имеет смысла для меня.
"error": "invalid_grant",
"error_description": "AADSTS50034: To sign into this application the account must be added to the 1283y812-2u3u-u293u91-u293u1 directory.\r\nTrace ID: 66da9cf9-603f-4f4e-817a-cd4774619631\r\nCorrelation ID: 7990c26f-b8ef-4054-9c0b-a346aa7b5035\r\nTimestamp: 2016-02-21 23:36:52Z",
"error_codes": [
50034
],
Вот полезная нагрузка и конечная точка, на которую я нажимаю. Пользователь, который передается является владельцем нашей эры, где я хочу, чтобы создать приложение
endpoint:https://login.windows.net/mytenantID/oauth2/token
post data
resource 00000002-0000-0000-c000-000000000000
client_id id
client_secret secret
grant_type password
username [email protected]
password password
scope openid
Любые мысли или предложения о том, где я мог бы идти неправильно было бы оценено.
Я первый связан вход с 'Connect-MsolService'. «Get-MsolRole» перечисляет кучу ролей и их имена. Затем я хотел проверить свою роль. поэтому я уволил «Get-MsolUserRole -UserPrincipalName test @ mydomain.com». Это было пусто. Когда я добрался до создания «New-MsolServicePrinicpal», я всегда получаю ошибку - _Access denied. у вас нет разрешения на доступ к этому командлету. – Srikanth