У меня есть собственный веб-API в ядре dotnet, я защитил веб-API с помощью [Authorize (Policy = "Admin")].
Я зарегистрировал веб-API в Azure AD с помощью регистрации приложений. Я создал две роли приложения: «Администратор» и «Клиент».
У меня есть консольное приложение, которое зарегистрировано как клиент в Azure AD с помощью регистрации приложений в Azure.
Теперь, когда я запрашиваю токен доступа с помощью области - api: // {guid} /.default (все разрешения), запрашивая конечную точку токена OAuth 2.0 (v2) - https://login.microsoftonline.com/ {tenantID} /oauth2/v2.0/token
Я получаю токен доступа и могу вызвать свой метод веб-API. Но когда я вызываю веб-API с определенной областью действия, скажите "Область администратора": api: // {guid} / Admin
Я получаю сообщение об ошибке -
Ошибка: Cound не завершил запрос токена OAuth 2.0: "AADSTS70011: предоставленный запрос должен включать входной параметр" scope ". Указанное значение для входного параметра" scope "недействительно. Scope api: // {guid} / Admin не действует