У меня есть приложение Azure AD (AAD App1), для которого включено назначение пользователей.Таким образом, только пользователи из определенной группы, скажем, «Группа А», могут получить доступ к любому ресурсу (скажем, API-функции Azure), защищенному этим приложением Azure AD. Теперь у меня есть еще одно задание функции-демона Azure, которое должно выполнить аутентифицированный вызов вышеупомянутого API-функции функции Azure.Поскольку это задание демона, для этого я создал другое приложение Azure AD (AAD App2).Ниже приведен мой код для получения токенов доступа:
string resourceId = "id of app used to authenticate azure function"; // AAD app ID used by the Azure function for authentication
string clientId = "id of app registered for the daemon job";// AAD app ID of your console app
string clientSecret = "secret of app registered for the daemon job"; // Client secret of the AAD app registered for console app
string resourceUrl = "https://blahblah.azurewebsites.net/api/events";
string domain = "<mytenant>.onmicrosoft.com"; //Tenant domain
var accessToken = await TokenHelper.GetAppOnlyAccessToken(domain, resourceId, clientId, clientSecret);
Теперь, когда я пытаюсь сгенерировать токен доступа для доступа к API функции Azure, я получаю недопустимую ошибку предоставления, как показано ниже:
AdalException: {"error": "invalid_grant", "error_description": "AADSTS50105: приложению" не назначена роль для приложения ". \ R \ nTrace ID: 6df90cf440-c16d-480e-8daf-2349ddef3800 \r \ nКорреляционный идентификатор: 4c4bf7bf-2140-4e01-93e3-b85d1ddfc09d4d \ r \ nTimestamp: 2018-05-09 17: 28: 11Z "," error_codes ": [50105]," timestamp ":" 2018-05-09 17: 28: 11Z "," trace_id ":" 690cf440-c16d-480e-8daf-2349ddef3800 "," correlation_id ":" 4c4bf7bf-2140-4e01-93ef3-b85d1dc09d4d "}: неизвестная ошибка
* 1015Я могу правильно сгенерировать токены доступа AAD, если отключу назначение пользователя.
Я пытаюсь избежать создания учетной записи службы здесь.Можно ли в любом случае добавить участника приложения в группу Azure AD или добавить его в качестве члена другого приложения Azure AD?