Исправлено с помощью этих руководств:
https://docs.microsoft.com/en-us/azure/active-directory-b2c/tokens-overview https://docs.microsoft.com/en-us/azure/active-directory-b2c/access-tokens
У меня были некоторые проблемы, когда я получил ошибку "AADB2C90205: This application does not have sufficient permissions against this web resource to perform the operation.
множество раз. Оказалось, что я не объявил правильные области применения для приложения.

Поэтому первый шаг - убедиться, что у вас есть область чтения для вашего Azure AD B2 C заявка под Published scopes
:

Затем под API access
добавьте вашу заявку с прочтенной областью.

Затем выполните запрос GET с этим форматом. Самый простой способ проверить это использовать его в Chrome или любом другом браузере:
https://<tenant-name>.b2clogin.com/tfp/<tenant-name>.onmicrosoft.com/<policy-name>/oauth2/v2.0/authorize?
client_id=<application-ID>
&nonce=anyRandomValue
&redirect_uri=https://jwt.ms
&scope=https://<tenant-name>.onmicrosoft.com/api/read
&response_type=code
Убедитесь, что redirect_uri
присутствует как Reply URL
для вашего приложения.

Это должно дать вам такой результат, как после входа в систему, как https://jwt.ms/?code=...
или https//localhost:44376/signin-oidc?code=
в зависимости от redirect_uri
. В примере Microsoft используется https://jwt.ms
, но я предпочитаю хранить свои коды на доменах, которые я контролирую.
Скопируйте значение из параметра кода и затем выполните запрос POST, я использую Почтальон.
POST <tenant-name>.onmicrosoft.com/oauth2/v2.0/token?p=<policy-name> HTTP/1.1
Host: <tenant-name>.b2clogin.com
Content-Type: application/x-www-form-urlencoded
grant_type=authorization_code
&client_id=<application-ID>
&scope=https://<tenant-name>.onmicrosoft.com/api/read
&code=eyJraWQiOiJjcGltY29yZV8wOTI1MjAxNSIsInZlciI6IjEuMC...
&redirect_uri=https://jwt.ms
&client_secret=<app-key>
client_secret
из ключей:

Правильный ответ должен выглядеть следующим образом:

Затем можно скопировать значение для access_token
и получить доступ ваш локальный API с Bearer Authorization
. Чтобы просмотреть содержимое вашего access_token
, вы можете скопировать значение в https://jwt.ms/

