Поделиться через


OnBehalfOfCredential Класс

Выполняет проверку подлинности субъекта-службы с помощью потока on-behalf-of.

Этот поток обычно используется службами среднего уровня, которые авторизуют запросы к другим службам с делегированным удостоверением пользователя. Так как это не интерактивный поток проверки подлинности, приложение, использующее его, должно иметь согласие администратора на все делегированные разрешения, прежде чем запрашивать маркеры для них. Более подробное описание потока on-behalf-of см. в документации по Azure Active Directory .

Наследование
azure.identity._internal.msal_credentials.MsalCredential
OnBehalfOfCredential
azure.identity._internal.get_token_mixin.GetTokenMixin
OnBehalfOfCredential

Конструктор

OnBehalfOfCredential(tenant_id: str, client_id: str, **kwargs: Any)

Параметры

tenant_id
str
Обязательно

Идентификатор клиента субъекта-службы. Также называется идентификатором каталога.

client_id
str
Обязательно

Идентификатор клиента субъекта-службы

client_secret
str

Необязательный элемент. Секрет клиента для проверки подлинности субъекта-службы. Необходимо указать client_secret или client_certificate .

client_certificate
bytes

Необязательный элемент. Байты сертификата в формате PEM или PKCS12, включая закрытый ключ для проверки подлинности субъекта-службы. Необходимо указать client_secret или client_certificate .

user_assertion
str

Обязательный. Маркер доступа, который учетные данные будут использовать в качестве утверждения пользователя при запросе маркеров on-behalf-of

authority
str

Центр конечной точки Azure Active Directory, например "login.microsoftonline.com", центр для общедоступного облака Azure (по умолчанию). AzureAuthorityHosts определяет центры для других облаков.

password
str или bytes

Пароль сертификата. Используется только при указании client_certificate . Если это значение является строкой Юникода, оно будет закодировано как UTF-8. Если сертификату требуется другая кодировка, передайте байты, закодированные соответствующим образом.

disable_instance_discovery
bool

Определяет, выполняется ли обнаружение экземпляра при попытке проверки подлинности. Если задать для этого параметра значение true, обнаружение экземпляров и проверка центра будут полностью отключены. Эта функция предназначена для использования в сценариях, где не удается получить доступ к конечной точке метаданных, например в частных облаках или Azure Stack. Процесс обнаружения экземпляров подразумевает получение метаданных центра для https://login.microsoft.com/ проверки центра. Если присвоить этому параметру значение True, проверка центра отключается. Поэтому важно убедиться, что настроенный узел центра является допустимым и надежным.

additionally_allowed_tenants
List[str]

Указывает клиентов в дополнение к указанному "tenant_id", для которого учетные данные могут получать маркеры. Добавьте значение подстановочного знака "*", чтобы разрешить учетным данным получать маркеры для любого клиента, к который может получить доступ приложение.

Примеры

Создайте Объект OnBehalfOfCredential.


   from azure.identity import OnBehalfOfCredential

   credential = OnBehalfOfCredential(
       tenant_id="<tenant_id>",
       client_id="<client_id>",
       client_secret="<client_secret>",
       user_assertion="<access_token>",
   )

Методы

close
get_token

Запросите маркер доступа для областей.

Этот метод вызывается автоматически клиентами пакета SDK Azure.

close

close() -> None

get_token

Запросите маркер доступа для областей.

Этот метод вызывается автоматически клиентами пакета SDK Azure.

get_token(*scopes: str, claims: str | None = None, tenant_id: str | None = None, **kwargs: Any) -> AccessToken

Параметры

scopes
str
Обязательно

требуемые области для маркера доступа. Для этого метода требуется по крайней мере один область. Дополнительные сведения об областях см. в разделе https://learn.microsoft.com/azure/active-directory/develop/scopes-oidc.

claims
str

дополнительные утверждения, необходимые в маркере, например те, которые возвращаются в запросе на утверждения поставщика ресурсов после сбоя авторизации.

tenant_id
str

необязательный клиент для включения в запрос маркера.

enable_cae
bool

указывает, следует ли включить непрерывную оценку доступа (CAE) для запрошенного маркера. Значение по умолчанию — False.

Возвращаемое значение

Маркер доступа с нужными областями.

Возвращаемый тип

Исключения

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

сбой проверки подлинности. Атрибут ошибки message указывает причину.