Azure AD - утверждение о пропущенных ролях в токене - PullRequest
3 голосов
/ 16 октября 2019

Я установил аутентификацию через Azure Active Directory (AAD), и все работает нормально (я получаю токены доступа и обновления).

Я прочитал о ролях приложений и хотел бы использовать их(для простоты предположим, что я хочу иметь роли администратора и пользователя). Я следил за официальной документацией (в которой отсутствует последняя часть ..) здесь .

К сожалению, токены не содержат утверждения о ролях.

Вот мои настройки более подробно:

1) У меня есть приложение Azure AD с именем TestAuthApp, и я добавил роли в манифест enter image description here

2) Я назначилроли enter image description here

3) Это URL для входа в систему: https://login.microsoftonline.com/3926f5f4-ca60-46de-b9f8-72639d55232d/oauth2/authorize?client_id=fea5d169-5535-4a8c-ba61-bcb0b25129dd&response_type=code&redirect_uri=http%3A%2F%2Flocalhost%3A1338%2Fauth enter image description here

4) Иэто код node.js, который обрабатывает код авторизации и получает токены enter image description here

5) Пример возвращенного токена доступа для Test Joe (когда вы проверяете его в jwt. -й вы видите, что роли претензия нет) eyJ0eXAiOiJKV1QiLCJhbGciOiJSUzI1NiIsIng1dCI6ImFQY3R3X29kdlJPb0VOZzNWb09sSWgydGlFcyIsImtpZCI6ImFQY3R3X29kdlJPb0VOZzNWb09sSWgydGlFcyJ9..Z8gydgRzEqk9dZ_fxt67iZMwVqu708WrZWJf3_9ydgc9cV0HizECxXxeNuws6EtiQhLxnguOVYKq7s5R2V4AlquAnc75YaMn0mWhZXGEtuVT6T6tldy5GgrbDpJy9eU5Ismo5ppfkcGRkUoJ0lScHeXic1gQ_M_k44e-QXJtMMxr6JdPA9jqixuCMK-84TdbYC1RlJYM47PJfYttWoibI29XsoUU-0ucwcCB8hshZfQRU48LrTlCwmtB-p9rim6E7xLmBxaXMBo99N9AizGJj9jV-rr_bPGXpq8_CQsiF07cKJ51SWe8dbMpCwybKYVVoMc3rsazylKcJzxDp1rD4A

1 Ответ

1 голос
/ 16 октября 2019

Токен - это токен доступа, который не предназначен для вашего приложения. Роли, которые вы ищете, должны быть в маркере идентификатора.

Причина, по которой я это говорю, заключается в том, что аудитория - 00000002-0000-0000-c000-000000000000, которая является встроенным API (может 'хотя вспомнить какой).

...