Заявление azp Отсутствует в Azure AD JWT

#azure-active-directory #jwt

Вопрос:

Я зарегистрировал приложение в Azure AD и могу получать JWT, но я получаю претензии, связанные с V1 JWT, в соответствии с этим, в то время как я ожидаю претензий, связанных с V2 JWT.

Более конкретно, я хотел бы добавить утверждение azp, которое доступно только в версии V2.

Я следовал этим инструкциям, чтобы добавить azp, но он недоступен для добавления в качестве дополнительного утверждения. У меня сложилось впечатление, что я использую приложение версии 2, поскольку конечные точки заканчиваются на /V2, и у меня также есть возможность добавить ipaddr, который, насколько я понимаю, доступен только для приложений версии 2.

Может ли кто-нибудь указать мне на то, чего мне не хватает?

Комментарии:

1. Вы получили токен версии 2.0?

2. Вам нужно проанализировать токен, чтобы увидеть версию токена.

3. спасибо за ваш очень подробный ответ

Ответ №1:

Версия маркера доступа не имеет ничего общего с конечной точкой, которую вы используете для запроса маркера, но связана с запрошенным вами ресурсом. Версия ms graph api по умолчанию-это маркер версии 1.0 . Если вы хотите получить 2.0 версию токена, вам следует запросить свой пользовательский api.

Сначала вам нужно создать приложение, представляющее api, а затем предоставить api, защищенный Azure.

введите описание изображения здесь

Затем в разделе «Разрешения API» предоставьте интерфейсному приложению доступ к внутреннему api:

  • В разделе «Разрешения API» нажмите «Добавить разрешение», затем перейдите на вкладку «Мои API».
  • Найдите свое серверное приложение и выберите соответствующую область.
  • Нажмите «Добавить разрешения».
  • Предоставьте согласие администратора для ваших API.

введите описание изображения здесь

Затем перейдите к манифесту интерфейсного приложения и задайте для accessTokenAcceptedVersion атрибута значение: 2 .

введите описание изображения здесь

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

введите описание изображения здесь

Проанализируйте токен, он отобразит azp утверждение и версию версии 2.0.

введите описание изображения здесь