Я очень плохо знаком с AD B2C, и у меня возникают проблемы с API Graph Graph.
Моя цель - перечислить всех пользователей, зарегистрированных в моей AD. Я хотел бы выполнить это только по HTTP-запросам.
Пока я обнаружил, что должен использовать эту конечную точку:
https://graph.windows.net/my_tenant.onmicrosoft.com/users?api-version=1.6
Моя проблема в том, что я не могу найти, где я могу получить токен, используемый в заголовке Authorization
.
На данный момент я аутентифицирую по этому URL:
https://my_tenant.b2clogin.com/my_tenant.onmicrosoft.com/oauth2/v2.0/authorize?
client_id=27fb84fe-4baf-4b6b-bfe7-f2d0638f2790
&response_type=code
&redirect_uri=http%3A%2F%2Flocalhost
&response_mode=query
&scope=27fb84fe-4baf-4b6b-bfe7-f2d0638f2790%20offline_access
&state=data
&p=B2C_1_SignUporSignIn
Я получаю код через свой redirect_uri и отправляю этот код этой конечной точке, чтобы получить токен:
https://my_tenant.b2clogin.com/my_tenant.onmicrosoft.com/oauth2/v2.0/token?p=b2c_1_signuporsignin
Следуя документации здесь: https://docs.microsoft.com/fr-fr/azure/active-directory-b2c/active-directory-b2c-access-tokens, Я отправляю эти параметры:
grant_type:authorization_code
client_secret:my_secret
client_id:27fb84fe-4baf-4b6b-bfe7-f2d0638f2790
scope:openid
code:code
Проблема в том, что я не получаю ответ, подобный показанному в документации. Я получаю только id_token
, token_type
, not_before
, id_token_expires_in
, profile_info
. Тем не менее, id_token
, кажется, соответствует access_token
в документах.
Итак, вопрос в том, должен ли этот токен использоваться в заголовке авторизации для отправки запросов в API Graph Graph?
Потому что, если я использую этот токен, я получаю следующую ошибку: Authentication_ExpiredToken
- Срок действия вашего токена истек. Пожалуйста, обновите его перед отправкой запроса.
Заранее спасибо за помощь