2015-11-02 3 views
2

Была возможность сбросить пароль для пользователей, не являющихся администраторами. Но не для пользователей с ролями каталога администратора.Как сбросить пароль глобального администратора с помощью Azure Graph API?

Пробовал как описано: https://msdn.microsoft.com/Library/Azure/Ad/Graph/api/users-operations#ResetUserPassword

Ответ: Код: Authorization_RequestDenied сообщение: Недостаточно прав для выполнения операции.

Я настроил приложение в AzureAD со всеми приложениями и делегированными разрешениями (чтение и запись данных каталога и т. Д.).

Googled и нашел одну соответствующую должность: сфера разрешение было недавно изменено http://blogs.msdn.com/b/aadgraphteam/archive/2015/10/06/new-graph-api-consent-permissions.aspx

ответ

1

Я нахожусь в такой же ситуации, как вы, но со всеми пользователями. В настоящее время есть веб-приложение, которое использует API Azure Graph для сброса паролей. Каждое разрешение разрешено в интерфейсе Azure AD для моего собственного клиентского приложения &.

Я нашел this reference (последнее изменение 10/30/2015), которое было связано с сообщением в блоге, которое у вас есть здесь. К сожалению, у него нет никакой информации о том, как сменить пароль, но он подтверждает ваши подозрения относительно изменения области разрешения.

Поиск «Примечание: нет прав на сброс паролей пользователей». Опять же нет упоминания об альтернативном решении.

Я обновлю свой ответ, если найду решение, но пока это вызывает у меня много головных болей. Если у вас есть какие-то советы о том, как вы его работали для обычных пользователей, это было бы здорово!

2

У нас была та же проблема, что и у Кайла. Сброс пароля через Graph API внезапно прекратил работу для всех пользователей. Наконец, мы получили его для работы с некоторой помощью от поддержки Microsoft.

Существовал последние обновления, чтобы исправить дыру в безопасности: https://support.microsoft.com/en-us/kb/3004133

В настоящее время единственный способ, чтобы добавить приложение в роли администратора необходимопрактический через PowerShell ...
Вы также должны следовать инструкциям здесь, чтобы установить Лазурное AD командлет: https://msdn.microsoft.com/en-us/library/azure/jj151815.aspx#bkmk_installmodule

Мы также получили немного другой пример, чем показано в КБ, который выглядел так:

$tenant = "<Tenant Name>" 
$tenantGuid = "<Guid for Tenant>" 
$graphver = "1.5" 
$appID = "<Application ID>" 

$userVal = "<username>@" + $tenant 
$pass = "<password>" 
$Creds = New-Object System.Management.Automation.PsCredential($userVal, (ConvertTo-SecureString $pass -AsPlainText -Force)) 

Connect-MSOLSERVICE -Credential $Creds 
$msSP = Get-MsolServicePrincipal -AppPrincipalId $appID -TenantID $tenantGuid 

#ID of the Application 
$objectId = $msSP.ObjectId 

Add-MsolRoleMember -RoleName "Company Administrator" -RoleMemberType ServicePrincipal -RoleMemberObjectId $objectId 

И теперь, наконец, он работает без необходимости переписывать наше приложение :-)

Смежные вопросы