Общие претензии, обнаруженные в токенах Azure Ad Oauth, включают следующее:
* AUD (аудитория): Это идентифицирует предполагаемый получатель токена, который, для Azure AD B2C, является идентификатором приложения. Приложения должны подтвердить это значение, чтобы убедиться, что оно соответствует их идентификатору и отклоняет токен, если он не [3]. Аудитория является синонимом ресурса [3].
* ISS (эмитент): Эта претензия идентифицирует службу токена безопасности (STS), которая построила и возвращала токен, а также идентифицирует каталог, в котором пользователь был аутентифицирован. Заявки должны подтвердить это утверждение, чтобы гарантировать, что токен поступает из соответствующей конечной точки [3].
* IAT (выпущен в): это представляет время, в которое был выпущен токен, во время эпохи [3].
* exp (время истечения): это указывает на время, в которое токен становится недействительным, представленным во время эпохи. Заявки должны использовать эту претензию, чтобы проверить обоснованность срока службы токена [3].
* NBF (не раньше): это утверждение указывает время, в которое токен становится действительным в эпоху времени. Обычно он такой же, как и время, когда был выпущен токен, и ваша заявка должна использовать это утверждение, чтобы проверить обоснованность жизни токена [3].
* VER (версия): это указывает на версию токена идентификатора, как определено Azure AD B2C [3].
* C_HASH (CODE HASH): включен в токен идентификатора только тогда, когда токен выпускается вместе с кодом авторизации OAUTH 2.0. Его можно использовать для проверки подлинности кода авторизации [3].
* AT_HASH (HASH TOCKEN ACCEST): включен в токен идентификатора только тогда, когда токен выпускается вместе с токеном AUATH 2.0, и используется для проверки подлинности токена доступа [3].
* nonce: стратегия, используемая для смягчения атак жекенов. Ваше приложение может указать Nonce в запросе авторизации, используя параметр «nonce». Значение, которое вы предоставляете в запросе, испускается, неизменное в претензии «Незм» только токена идентификатора [3].
* sub (субъект): эта претензия представляет основную сумму, о которой токен утверждает информацию, такую как пользователь приложения. Значение неизменно и не может быть переназначено или повторно использовано. Его можно использовать для безопасного выполнения проверки авторизации. По умолчанию субъектная претензия заполняется идентификатором объекта пользователя в каталоге [3].
* ACR (Ссылка на контекст аутентификации): используется только с более старыми политиками [3].
* TFP (Политика траста фреймворса): название политики, которая использовалась для приобретения токена ID [3].
* auth \ _time: время, в которое пользователь в последний раз вводил учетные данные, представлено во время эпохи. Там нет никакой дискриминации между этой аутентификацией, являющейся свежей входом, единым сеансом (SSO) или другим типом входа [3].
* SCP (Scope): это относится к разрешениям, предоставленным ресурсу для токена доступа. Несколько предоставленных разрешений разделены пространством [3].
* AZP (уполномоченная сторона): идентификатор приложения клиентской заявки, которая инициировала запрос [3].
* OID: это требование содержит уникальный идентификатор объекта в Azure AD, неизменен и не может быть переназначен или повторно используется. Его можно использовать для идентификации объекта в запросах Azure AD [1].
Цитаты:
[1] https://stackoverflow.com/questions/40972416/what-jwt-claims-from-azure-ad-tokens-can-be-sefely-user-user-mappings
[2] https://stackoverflow.com/questions/70867353/azure-access-token-contains-info-that-i-that-be-in-hid-token-and-vi
[3] https://github.com/microsoftdocs/azure-docs/blob/main/articles/active-directory-b2c/tokens-overview.md
[4] https://www.descope.com/blog/post/noauth
[5] https://learn.microsoft.com/en-us/entra/identity-platform/access-token-claims-reference
[6] https://auth0.com/blog/refresh-tokens-what-hey-hey-and-to-use-them//
[7] https://learn.microsoft.com/en-us/entra/identity-platform/id-token-claims-reference
[8] https://www.descope.com/blog/post/access-token-vs-refresh-token