Примечание
Для доступа к этой странице требуется авторизация. Вы можете попробовать войти или изменить каталоги.
Для доступа к этой странице требуется авторизация. Вы можете попробовать изменить каталоги.
Централизованный поставщик удостоверений особенно полезен для приложений, у которых есть пользователи по всему миру, которые не обязательно входят из сети предприятия. Платформа удостоверений Майкрософт проверяет подлинность пользователей и предоставляет маркеры безопасности, в том числе маркеры доступа, маркеры обновления и маркеры идентификации. Маркеры безопасности позволяют клиентскому приложению получать доступ к защищенным ресурсам на сервере ресурсов.
- Маркер доступа . Маркер доступа — это маркер безопасности, выданный сервером авторизации в рамках потока OAuth 2.0. Он содержит сведения о пользователе и ресурсе, для которых предназначен маркер. Эти сведения можно использовать для доступа к веб-API и другим защищенным ресурсам. Ресурсы проверяют маркеры доступа для предоставления доступа клиентскому приложению. Дополнительные сведения см. в разделе Маркеры доступа на платформе идентификации Майкрософт.
- Токен обновления — так как токены доступа действительны только в течение короткого времени, серверы авторизации иногда выдают токен обновления одновременно с токеном доступа. При необходимости клиентское приложение может обменять этот токен обновления на новый токен доступа. Для получения дополнительной информации см. Токены обновления в платформе идентификации Microsoft.
- Маркер идентификации. Эти маркеры отправляются клиентскому приложению в составе потока OpenID Connect. Их можно отправлять вместе с токеном доступа или вместо него. Маркеры идентификации используются клиентом для проверки подлинности пользователя. Чтобы узнать больше о том, как платформа удостоверений Microsoft выдает токены идентификатора, см. Токены идентификатора в платформе удостоверений Microsoft.
Многие корпоративные приложения используют для проверки подлинности пользователей протокол SAML. Для получения информации об утверждениях SAML см. Справочник по токену SAML.
Проверка токенов
Это зависит от приложения, для которого был сгенерирован токен, веб-приложения, через которое пользователь вошел в систему, или веб-API, которое вызывается для проверки токена. Сервер авторизации подписывает маркер закрытым ключом. Сервер авторизации публикует соответствующий открытый ключ. Для валидации токена приложение проверяет цифровую подпись с помощью открытого ключа сервера авторизации, чтобы убедиться, что подпись была создана с использованием закрытого ключа. Для получения дополнительной информации ознакомьтесь с статьей "Безопасность приложений и API путём проверки утверждений".
По возможности рекомендуется использовать поддерживаемые библиотеки проверки подлинности Майкрософт (MSAL ). Это реализует приобретение, обновление и проверку токенов для вас. Он также реализует обнаружение параметров клиента и ключей, совместимых со стандартами, с помощью известного документа обнаружения OpenID клиента. MSAL поддерживает множество различных архитектур приложений и платформ, в том числе .NET, JavaScript, Java, Python, Android и iOS.
Токены действительны только в течение ограниченного времени, поэтому сервер авторизации часто предоставляет пару токенов. Предоставляется токен доступа для доступа к приложению или защищенному ресурсу. Предоставляется токен обновления, который используется для обновления токена доступа, когда срок его действия близок к истечению.
Маркеры доступа передаются в веб-API в качестве маркера носителя в заголовке Authorization
. Приложение может предоставлять маркер обновления серверу авторизации. Если доступ пользователя к приложению не был отозван, он получает новый токен доступа и новый токен обновления. Когда сервер авторизации получает маркер обновления, он выдает еще один маркер доступа, только если пользователь по-прежнему авторизован.
Токены JSON Web и утверждения
Платформа идентификации Майкрософт реализует токены безопасности в виде токенов JSON Web (JWT), которые содержат утверждения. Так как маркеры JWT используются в качестве маркеров безопасности, такая форма проверки подлинности иногда называется проверкой подлинности JWT.
Утверждение предоставляет информацию об одной сущности, например клиентском приложении или владельце ресурса, другой сущности, например ресурсному серверу. Утверждение также может называться утверждением JWT или утверждением JSON Web Token.
Утверждения — это пары имен и значений, которые передают факты о токене. Например, утверждение может содержать факты о основном субъекте безопасности, который был проверен сервером авторизации. Утверждения, представленные в конкретном маркере, зависят от многих факторов, например типа маркера, типа учетных данных, используемых для проверки подлинности субъекта, и конфигурации приложения.
Приложения могут использовать утверждения для следующих различных задач:
- Проверка токена
- Определите арендатора субъекта токена
- Отображение сведений о пользователе
- определение авторизации субъекта.
Утверждение состоит из пар "ключ-значение", которые содержат следующие типы сведений.
- Сервер токенов безопасности, сгенерировавший токен
- Дата создания маркера
- Тема (например, пользователь, но не демоны)
- Аудитория, то есть приложение, для которого был создан токен.
- Приложение (клиент), запрашивающее маркер
Конечные точки и издатели токенов
Идентификатор Microsoft Entra поддерживает две конфигурации клиента: конфигурацию рабочей силы, предназначенную для внутреннего использования и управления сотрудниками и бизнес-гостями, а также конфигурацию клиента, оптимизированную для изоляции потребителей и партнеров в ограниченном внешнем каталоге. Хотя базовая служба удостоверений идентична для обоих конфигураций арендаторов, домены для входа и орган, выдающий токены для внешних арендаторов, отличаются. Это позволяет приложениям при необходимости сохранять разделение между рабочими процессами и процессами обработки внешних идентификаторов.
Корпоративные клиенты Microsoft Entra аутентифицируются на login.microsoftonline.com с токенами, выданными sts.windows.net. Маркеры арендаторов рабочей среды взаимозаменяемы между арендаторами и мультитенантными приложениями, если базовые отношения доверия позволяют такую совместимость. Внешние клиенты Microsoft Entra используют конечные точки формы {tenantname}.ciamlogin.com
. Приложения, зарегистрированные во внешних клиентах, должны учитывать это разделение для правильного получения и проверки токенов.
Каждый клиент Microsoft Entra публикует хорошо известные метаданные, соответствующие стандартам. Этот документ содержит сведения о имени издателя, конечных точках проверки подлинности и авторизации, поддерживаемых областях и утверждениях. Для внешних клиентов документ доступен по адресу: https://{tenantname}.ciamlogin.com/{tenantid}/v2.0/.well-known/openid-configuration
. Эта конечная точка возвращает значение эмитента https://{tenantid}.ciamlogin.com/{tenantid}/v2.0
.
Потоки авторизации и коды проверки подлинности
В зависимости от того, как создан клиент, он может использовать один или несколько потоков проверки подлинности, поддерживаемых платформа удостоверений Майкрософт. Поддерживаемые потоки могут создавать различные токены и коды авторизации, и для их работы требуются разные токены. В следующей таблице представлен обзор.
Поток | Требуется | Маркер идентификации | Маркер доступа | токен обновления. | Код авторизации |
---|---|---|---|---|---|
Поток кода авторизации | x | x | x | x | |
Неявный поток | x | x | |||
Гибридный поток OIDC | x | x | |||
Активация маркера обновления | токен обновления | x | x | x | |
Поток выполнения от имени | Маркер доступа | x | x | x | |
Учетные данные клиента | x (только приложение) |
Связанный контент
- Сведения об основных понятиях, связанных с проверкой подлинности и авторизацией, см. в статье Проверка подлинности и авторизация.
- OAuth 2.0
- OpenID Connect