Как мы можем получить AccessToken, используя AzureServiceTokenProvider для пользовательских API, защищенных с помощью Azure AD? - PullRequest
0 голосов
/ 26 сентября 2019

Я пытаюсь получить токен доступа для моего webapi, который защищен с помощью AAD.Я не хочу устанавливать область действия и т. Д., Просто для проверки подлинности

Я уже пытался передать имя ресурса, передавая tokenProvider.GetAccessTokenAsync ("http://testapi.azurewebsites.net/").Result;

var client = new HttpClient ();

var tokenProvider = new AzureServiceTokenProvider (); var accessToken = tokenProvider.GetAccessTokenAsync ("http://testapi.azurewebsites.net"); client.DefaultRequestHeaders.Accept.Add (новый MediaTypeWithQualityHeaderValue (" application / je) = jault "):AuthenticationHeaderValue («Носитель», accessToken);

1 Ответ

0 голосов
/ 26 сентября 2019

Я написал целую статью на эту тему здесь: https://joonasw.net/view/calling-your-apis-with-aad-msi-using-app-permissions.

Вы должны сначала настроить хотя бы одно разрешение приложения в вашем API.Затем назначьте клиентскому приложению управляемой идентификации / среды разработки это разрешение приложения.

При получении токена вы используете URI идентификатора приложения или идентификатор клиента API в качестве ресурса.Если вы запускаете приложение в среде разработки, вам потребуется использовать идентификатор клиента + секретный или идентификатор клиента + сертификат через строку подключения токен-провайдера.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...