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


identity Пакет

Учетные данные для клиентов пакета SDK Azure.

Пакеты

aio

Учетные данные для асинхронных клиентов azure SDK.

Классы

AuthenticationRecord

Сведения о несекретной учетной записи для пользователя, прошедшего проверку подлинности

Этот класс обеспечивает доступ к ранее кэшируемым DeviceCodeCredential данным проверки подлинности и InteractiveBrowserCredential . Приложения не должны создавать экземпляры этого класса. Вместо этого они должны получить его из метода проверки подлинности учетных данных, например authenticate. Дополнительные сведения см. в примере user_authentication.

AuthenticationRequiredError

Для получения маркера требуется интерактивная проверка подлинности.

Эта ошибка возникает только из-за интерактивных учетных данных пользователя, которые не будут автоматически запрашивать взаимодействие с пользователем по мере необходимости. Его свойства предоставляют дополнительные сведения, которые могут потребоваться для проверки подлинности. Пример control_interactive_prompts демонстрирует обработку этой ошибки путем вызова метода проверки подлинности учетных данных.

AuthorizationCodeCredential

Выполняет проверку подлинности путем активации кода авторизации, ранее полученного из Azure Active Directory.

Дополнительные сведения о потоке проверки подлинности см. в документации по Azure Active Directory .

AzureAuthorityHosts

Учетные данные для клиентов пакета SDK Azure.

AzureCliCredential

Выполняет проверку подлинности, запрашивая маркер из Azure CLI.

Для этого необходимо выполнить вход в Azure с помощью команды az login и использовать текущее удостоверение CLI.

AzureDeveloperCliCredential

Выполняет проверку подлинности, запрашивая маркер из Azure Developer CLI.

Azure Developer CLI — это средство интерфейса командной строки, которое позволяет разработчикам создавать, администрировать и развертывать ресурсы в Azure. Он основан на Azure CLI и предоставляет дополнительные функции, характерные для разработчиков Azure. Она позволяет пользователям проходить проверку подлинности в azure Active Directory (Azure AD) в качестве пользователя и (или) субъекта-службы. AzureDeveloperCliCredential выполняет проверку подлинности в среде разработки и получает маркер от имени вошедшего пользователя или субъекта-службы в Azure Developer CLI. Он выступает в качестве Azure Developer CLI вошедшего пользователя или субъекта-службы и выполняет команду Azure CLI в разделе для проверки подлинности приложения в Azure Active Directory.

Чтобы использовать эти учетные данные, разработчику необходимо выполнить локальную проверку подлинности в Azure Developer CLI с помощью одной из приведенных ниже команд:

  • Выполните команду azd auth login в Azure Developer CLI для интерактивной проверки подлинности от имени пользователя.

  • Выполните команду azd auth login –client-id 'client_id' –client-secret 'client_secret' –tenant-id 'tenant_id'», чтобы пройти проверку подлинности в качестве субъекта-службы.

Возможно, этот процесс придется повторить по истечении некоторого периода времени в зависимости от срока действия маркеров обновления в организации. Как правило, период действия маркера обновления составляет от нескольких недель до нескольких месяцев. AzureDeveloperCliCredential предложит выполнить вход еще раз.

AzurePowerShellCredential

Выполняет проверку подлинности, запрашивая маркер из Azure PowerShell.

Для этого необходимо предварительно войти в Azure с помощью Connect-AzAccount и использовать текущее удостоверение.

CertificateCredential

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

Сертификат должен иметь закрытый ключ RSA, так как эти учетные данные подписывает утверждения с помощью RS256. Дополнительные сведения о настройке проверки подлинности на основе сертификата см. в документации по Azure Active Directory .

ChainedTokenCredential

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

Его get_token метод вызывает get_token для каждого учетных данных в последовательности по порядку, возвращая первый полученный допустимый маркер.

ClientAssertionCredential

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

Эти учетные данные для расширенных сценариев. CertificateCredential имеет более удобный API для наиболее распространенного сценария утверждения, при котором выполняется проверка подлинности субъекта-службы с помощью сертификата.

ClientSecretCredential

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

CredentialUnavailableError

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

DefaultAzureCredential

Учетные данные по умолчанию, способные обрабатывать большинство сценариев проверки подлинности пакета Azure SDK.

Используемое удостоверение зависит от среды. Когда требуется маркер доступа, он запрашивает один из них, используя эти удостоверения, в свою очередь, и останавливается, когда он предоставляет маркер:

  1. Субъект-служба, настроенный с помощью переменных среды. Дополнительные сведения см. в статье EnvironmentCredential.

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

  3. Управляемое удостоверение Azure. Дополнительные сведения см. в статье ManagedIdentityCredential.

  4. Только в Windows: пользователь, выполнивший вход с помощью приложения Майкрософт, например Visual Studio. Если в кэше несколько удостоверений, то для выбора используемого удостоверения используется значение переменной AZURE_USERNAME среды. Дополнительные сведения см. в статье SharedTokenCacheCredential.

  5. Удостоверение, вошедшего в Azure CLI.

  6. Удостоверение, вошедшего в Azure PowerShell.

  7. Удостоверение, вошедшего в Azure Developer CLI.

Это поведение по умолчанию можно настроить с помощью ключевое слово аргументов.

DeviceCodeCredential

Проверяет подлинность пользователей с помощью потока кода устройства.

При get_token вызове эти учетные данные получают URL-адрес проверки и код из Azure Active Directory. Пользователь должен перейти по URL-адресу, ввести код и пройти проверку подлинности в Azure Active Directory. Если пользователь успешно проходит проверку подлинности, учетные данные получают маркер доступа.

Эти учетные данные в первую очередь полезны для проверки подлинности пользователя в среде без веб-браузера, например в сеансе SSH. Если веб-браузер доступен, это более удобно, InteractiveBrowserCredential так как он автоматически открывает браузер на странице входа.

EnvironmentCredential

Учетные данные, настроенные переменными среды.

Эти учетные данные могут выполнять проверку подлинности в качестве субъекта-службы с помощью секрета клиента или сертификата либо как пользователя с именем пользователя и паролем. Попытка настройки выполняется в таком порядке с использованием следующих переменных среды:

Субъект-служба с секретом:

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

  • AZURE_CLIENT_ID: идентификатор клиента субъекта-службы.

  • AZURE_CLIENT_SECRET: один из секретов клиента субъекта-службы.

  • AZURE_AUTHORITY_HOST: полномочия конечной точки Azure Active Directory, например "login.microsoftonline.com", центр для общедоступного облака Azure, который используется по умолчанию, если значение не задано.

Субъект-служба с сертификатом:

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

  • AZURE_CLIENT_ID: идентификатор клиента субъекта-службы.

  • AZURE_CLIENT_CERTIFICATE_PATH: путь к файлу сертификата PEM или PKCS12, включая закрытый ключ.

  • AZURE_CLIENT_CERTIFICATE_PASSWORD: (необязательно) пароль файла сертификата, если таковой есть.

  • AZURE_AUTHORITY_HOST: полномочия конечной точки Azure Active Directory, например "login.microsoftonline.com", центр для общедоступного облака Azure, который используется по умолчанию, если значение не задано.

Пользователь с именем пользователя и паролем:

  • AZURE_CLIENT_ID: идентификатор клиента приложения.

  • AZURE_USERNAME: имя пользователя (обычно это адрес электронной почты).

  • AZURE_PASSWORD: пароль пользователя

  • AZURE_TENANT_ID: (необязательно) идентификатор клиента субъекта-службы. Также называется идентификатором каталога. Если этот параметр не указан, по умолчанию используется клиент organizations, который поддерживает только рабочие или учебные учетные записи Azure Active Directory.

  • AZURE_AUTHORITY_HOST: полномочия конечной точки Azure Active Directory, например "login.microsoftonline.com", центр для общедоступного облака Azure, который используется по умолчанию, если значение не задано.

InteractiveBrowserCredential

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

get_token открывает в браузере URL-адрес для входа, предоставленный Azure Active Directory, и выполняет проверку подлинности пользователя с помощью потока кода авторизации, используя PKCE (ключ подтверждения для Code Exchange) для внутренней защиты кода.

KnownAuthorities

Псевдоним AzureAuthorityHosts

ManagedIdentityCredential

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

Эти учетные данные по умолчанию используют удостоверение, назначаемое системой. Чтобы настроить назначаемое пользователем удостоверение, используйте один из аргументов ключевое слово. Дополнительные сведения о настройке управляемого удостоверения для приложений см. в документации по Azure Active Directory .

OnBehalfOfCredential

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

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

SharedTokenCacheCredential

Проверяет подлинность с использованием токенов в локальном кэше, совместно используемом приложениями Майкрософт.

TokenCachePersistenceOptions

Параметры для постоянного кэширования маркеров.

Большинство учетных данных принимают экземпляр этого класса для настройки постоянного кэширования маркеров. Значения по умолчанию настраивают учетные данные для использования кэша, совместно используемого средствами разработчика Майкрософт и SharedTokenCacheCredential. Чтобы изолировать данные учетных данных от других приложений, укажите имя кэша.

По умолчанию кэш шифруется с помощью API защиты данных пользователей текущей платформы и вызывает ошибку, если он недоступен. Чтобы настроить кэш для возврата к незашифрованным файлам, а не создавать ошибку, укажите allow_unencrypted_storage=True.

Предупреждение

Кэш содержит секреты проверки подлинности. Если кэш не зашифрован, защита его выполняется

ответственность приложения. Нарушение его содержимого приведет к полной компрометации учетных записей.

UsernamePasswordCredential

Проверяет подлинность пользователя с помощью имени пользователя и пароля.

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

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

Эти учетные данные могут проверять подлинность только рабочих и учебных учетных записей; Учетные записи Майкрософт не поддерживаются. Дополнительные сведения о типах учетных записей см. в документации по Azure Active Directory .

VisualStudioCodeCredential

Выполняет проверку подлинности при входе пользователя Azure в Visual Studio Code с помощью расширения "Учетная запись Azure".

Известно , что эти учетные данные не работают с более поздними версиями расширения учетной записи Azure , чем 0.9.11. В настоящее время выполняется долгосрочное решение этой проблемы. В то же время рассмотрите возможность проверки подлинности с помощью AzureCliCredential.

WorkloadIdentityCredential

Выполняет проверку подлинности с помощью удостоверения рабочей нагрузки Azure Active Directory.

Проверка подлинности удостоверений рабочей нагрузки — это функция в Azure, которая позволяет приложениям, работающим на виртуальных машинах, получать доступ к другим ресурсам Azure без необходимости в субъекте-службе или управляемом удостоверении. При использовании проверки подлинности удостоверений рабочей нагрузки приложения проходят проверку подлинности с помощью собственного удостоверения, а не с помощью общего субъекта-службы или управляемого удостоверения. При проверке подлинности на основе удостоверения рабочей нагрузки используется концепция учетных данных учетной записи службы (SAC), которые автоматически создаются Azure и безопасно хранятся на виртуальной машине. Используя проверку подлинности на основе удостоверения рабочей нагрузки, можно избежать необходимости в управлении субъектами-службами или управляемыми удостоверениями для каждого приложения на каждой виртуальной машине. Кроме того, так как sac создаются автоматически и управляются Azure, вам не нужно беспокоиться о хранении и защите конфиденциальных учетных данных.

WorkloadIdentityCredential поддерживает проверку подлинности удостоверения рабочей нагрузки Azure в Azure Kubernetes и получает маркер, используя учетные данные учетной записи службы, доступные в среде Azure Kubernetes. Дополнительные сведения см. в этом обзоре удостоверений рабочей нагрузки .