authentication Модуль

Содержит функциональные возможности для управления различными типами проверки подлинности в Машинном обучении Azure.

Поддерживаемые типы проверки подлинности:

  • Интерактивный вход — режим по умолчанию при использовании пакета SDK Машинного обучения Azure. Использует интерактивное диалоговое окно.
  • Azure CLI — для использования с пакетом azure-cli.
  • Субъект-служба — для использования с рабочими процессами автоматизированного машинного обучения.
  • MSI — для использования с ресурсами, которые поддерживают удостоверение управляемой службы, например, с виртуальной машиной Azure.
  • Маркер Azure ML — используется для получения маркеров Azure ML только для отправленных запусков.

Дополнительные сведения об этих механизмах проверки подлинности см. здесь: https://aka.ms/aml-notebook-auth.

Классы

AbstractAuthentication

Абстрактный родительский класс для всех классов проверки подлинности в Машинном обучении Azure.

Производные классы предоставляют различные средства для проверки подлинности и получения маркера на основе их целевого варианта использования. Примеры проверки подлинности приведены в https://aka.ms/aml-notebook-auth.

Конструктор Класса AbstractAuthentication.

AccessToken

Создание экземпляра AccessToken(token, expires_on)

ArmTokenAuthentication

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

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

Конструктор класса ArmTokenAuthentification.

AzureCliAuthentication

Управляет проверкой подлинности и получает маркер доступа с помощью Azure CLI.

Для использования этого класса необходимо установить пакет azure-cli. Чтобы улучшить работу с Записными книжками Azure, используйте класс InteractiveLoginAuthentication.

Конструктор проверки подлинности Класса Azure Cli.

AzureMLTokenAuthentication

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

Маркер Машинного обучения Azure создается при отправке запуска и доступен только для кода, выполнившего отправку. Класс AzureMLTokenAuthentication можно использовать только в контексте отправленного запуска. Возвращенный маркер нельзя использовать для любых операций Azure Resource Manager (ARM), таких как подготовка вычислений. Маркер Машинного обучения Azure полезен при удаленном выполнении программы, когда использование частных учетных данных пользователя может оказаться небезопасным.

Авторизация пользователей с помощью маркера Машинного обучения Azure.

Маркер Azure ML создается при отправке запуска и доступен только для отправленного кода. Класс можно использовать только в контексте отправленного запуска. Маркер нельзя использовать для любых операций ARM, таких как подготовка вычислительных ресурсов. Маркер Машинного обучения Azure полезен при удаленном выполнении программы, где может быть небезопасно использовать частные учетные данные пользователя. Потребитель этого класса должен вызвать метод класса create, который создает новый объект или возвращает зарегистрированный экземпляр с тем же run_scope (subscription_id, resource_group_name, workspace_name, experiment_name run_id).

InteractiveLoginAuthentication

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

Интерактивная проверка подлинности входа подходит для локального экспериментирования на своем компьютере и служит моделью проверки подлинности по умолчанию при использовании пакета SDK Машинного обучения Azure. Например, при локальной работе в Jupyter Notebook интерактивный процесс проверки подлинности при входе открывает окно браузера для запроса учетных данных, если они еще не существуют.

Конструктор интерактивной проверки подлинности для входа в класс.

Этот конструктор предложит пользователю выполнить вход, а затем сохранит учетные данные для всех последующих попыток. Если пользователь уже вошел в azure CLI или выполнил вход ранее, конструктор загрузит существующие учетные данные без запроса. Когда этот процесс Python выполняется в службе записных книжек Azure, конструктор попытается использовать функцию "подключение к Azure" в записных книжках Azure. Если этот процесс Python выполняется на виртуальной машине записной книжки, конструктор попытается использовать проверку подлинности MSI.

MsiAuthentication

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

При использовании пакета SDK Azure ML на виртуальной машине Azure можно выполнить проверку подлинности с помощью управляемого удостоверения (прежнее название — Управляемое удостоверение службы, или MSI). Благодаря управляемому удостоверению виртуальная машина может подключаться к рабочей области, не сохраняя учетные данные в коде Python, тем самым устраняется привязка процесса проверки подлинности к конкретному входу пользователя.

Конструктор класса MsiAuthentication.

ServicePrincipalAuthentication

Управляет проверкой подлинности, используя субъект-службу, а не удостоверения пользователя.

Проверка подлинности с помощью субъекта-службы подходит для автоматических рабочих процессов, таких как сценарии CI/CD. Этот тип проверки подлинности устраняет привязку процесса проверки подлинности к конкретному входу пользователя и обеспечивает управляемый контроль доступа.

Конструктор Класса ServicePrincipalAuthentication.

TokenAuthentication

Управление проверкой подлинности с помощью маркера AAD, область действия которого ограничена аудиторией.

Проверка подлинности на основе маркера уместна, если создание и обновление маркера происходит вне пакета SDK AML. Этот тип проверки подлинности позволяет лучше контролировать создание и обновление маркера.

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

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

Пример вызова get_token_for_audience и передачи для аудитории get_token_for_audience (аудитория)

Управление проверкой подлинности с помощью маркера AAD, область действия которого ограничена аудиторией.

Проверка подлинности на основе маркера уместна, если создание и обновление маркера происходит вне пакета SDK AML. Этот тип проверки подлинности позволяет лучше контролировать создание и обновление маркера.

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

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

Пример вызова get_token_for_audience и передачи для аудитории get_token_for_audience (аудитория)

где аудитория может быть либо arm, либо AML auth = TokenAuthentication(get_token_for_audience)

  AML audience value passed to get_token_for_audience can be retrieved by :
  auth.get_aml_resource_id(cloud)

  ARM audience value passed to get_token_for_audience can be retrieved by :
  auth._cloud_type.endpoints.active_directory_resource_id

Перечисления

Audience

Аудитория, поддерживаемая AML. Используется только с классом TokenAuthentication.