authentication 모듈
Azure Machine Learning에서 다양한 형식의 인증을 관리하기 위한 기능이 포함되어 있습니다.
지원되는 인증 형식:
- 대화형 로그인 - Azure Machine Learning SDK를 사용하는 경우 기본 모드입니다. 대화형 대화 상자를 사용합니다.
- Azure CLI - azure-cli 패키지와 함께 사용할 수 있습니다.
- 서비스 주체 - 자동화된 Machine Learning 워크플로와 함께 사용할 수 있습니다.
- MSI - Azure Virtual Machine과 같은 관리되는 서비스 ID 지원 자산과 함께 사용할 수 있습니다.
- Azure ML 토큰 - 제출된 실행을 위해서만 Azure ML 토큰을 획득하는 데 사용됩니다.
이 인증 메커니즘에 관한 자세한 내용은 https://aka.ms/aml-notebook-auth를 참조하세요.
클래스
AbstractAuthentication |
Azure Machine Learning에서 모든 인증 클래스의 추상 부모 클래스입니다. 파생 클래스는 대상 사용 사례에 따라 토큰을 인증하고 획득하는 다양한 방법을 제공합니다. 인증의 예는 https://aka.ms/aml-notebook-auth를 참조하세요. 클래스 AbstractAuthentication 생성자입니다. |
AccessToken |
AccessToken(토큰, expires_on)의 새 instance 만들기 |
ArmTokenAuthentication |
서비스 원칙 또는 관리되는 서비스 ID 인증을 사용하여 ARM 액세스 토큰을 획득하기 위해 내부적으로 사용됩니다. 관리되는 액세스 제어가 필요한 자동화된 워크플로의 경우 대신 ServicePrincipalAuthentication를 사용합니다. 클래스 ArmTokenAuthentification 생성자입니다. |
AzureCliAuthentication |
인증을 관리하고 Azure CLI를 사용하여 액세스 토큰을 얻습니다. 이 클래스를 사용하려면 azure-cli 패키지가 설치되어 있어야 합니다. 더 나은 Azure Notebooks 환경을 위해 InteractiveLoginAuthentication 클래스를 사용합니다. 클래스 Azure Cli 인증 생성자입니다. |
AzureMLTokenAuthentication |
제출된 실행 컨텍스트에서 인증 및 액세스 토큰을 관리합니다. Azure Machine Learning 토큰은 실행이 제출될 때 생성되며 실행을 제출한 코드에서만 사용할 수 있습니다. AzureMLTokenAuthentication 클래스는 제출된 실행의 컨텍스트에서만 사용할 수 있습니다. 반환된 토큰은 컴퓨팅 프로비저닝과 같은 ARM(Azure Resource Manager) 작업에 사용할 수 없습니다. Azure Machine Learning 토큰은 사용자의 프라이빗 자격 증명을 사용하는 것이 안전하지 않을 수 있는 프로그램을 원격으로 실행할 때 유용합니다. Azure ML 토큰으로 사용자에게 권한을 부여합니다. Azure ML 토큰은 실행이 제출될 때 생성되며 제출된 코드에서만 사용할 수 있습니다. 클래스는 제출된 실행의 컨텍스트에서만 사용할 수 있습니다. 토큰은 컴퓨팅 프로비저닝과 같은 ARM 작업에 사용할 수 없습니다. Azure ML 토큰은 사용자의 개인 자격 증명을 사용하는 것이 안전하지 않을 수 있는 원격으로 프로그램을 실행할 때 유용합니다. 이 클래스의 소비자는 새 개체를 만들거나 제공된 동일한 run_scope(subscription_id, resource_group_name, workspace_name, experiment_name, run_id)을 사용하여 등록된 instance 반환하는 클래스 메서드 create를 호출해야 합니다. |
InteractiveLoginAuthentication |
대화형 로그인 워크플로에서 인증을 관리하고 인증 토큰을 얻습니다. 대화형 로그인 인증은 고유의 컴퓨터에서 로컬 실험에 적합하며 Azure Machine Learning SDK를 사용할 때 기본 인증 모델입니다. 예를 들어 Jupyter Notebook에서 로컬로 작업할 때 대화형 로그인 인증 프로세스는 자격 증명이 아직 없는 경우 자격 증명을 묻는 브라우저 창이 열립니다. 클래스 대화형 로그인 인증 생성자입니다. 이 생성자는 사용자에게 로그인하라는 메시지를 표시한 다음, 후속 시도에 대한 자격 증명을 저장합니다. 사용자가 이미 Azure CLI에 로그인했거나 이전에 로그인한 경우 생성자는 프롬프트 없이 기존 자격 증명을 로드합니다. 이 Python 프로세스가 Azure Notebook 서비스에서 실행 중인 경우 생성자는 Azure Notebooks에서 "azure에 연결" 기능을 사용하려고 시도합니다. 이 Python 프로세스가 Notebook VM에서 실행 중인 경우 생성자는 MSI 인증을 사용하려고 시도합니다. |
MsiAuthentication |
Azure Active Directory에서 관리 ID를 사용하여 인증을 관리합니다. Azure VM(가상 머신)에서 Azure ML SDK를 사용하는 경우 관리 ID(이전의 관리되는 서비스 ID - MSI)로 인증할 수 있습니다. 관리 ID를 사용하면 Python 코드에 자격 증명을 저장하지 않고도 VM을 작업 영역에 연결할 수 있으므로 특정 사용자 로그인에서 인증 프로세스를 분리할 수 있습니다. 클래스 MsiAuthentication 생성자입니다. |
ServicePrincipalAuthentication |
사용자 ID 대신 서비스 주체를 사용하여 인증을 관리합니다. 서비스 주체 인증은 CI/CD 시나리오와 같은 자동화된 워크플로에 적합합니다. 이 형식의 인증은 특정 사용자 로그인에서 인증 프로세스를 분리하고 관리형 액세스 제어를 허용합니다. 클래스 ServicePrincipalAuthentication 생성자입니다. |
TokenAuthentication |
대상 그룹별로 범위가 지정된 AAD 토큰을 사용하여 인증을 관리합니다. 토큰 인증은 토큰 생성 및 새로 고침이 AML SDK 외부에 있을 때 적합합니다. 이러한 형식의 인증을 사용하면 토큰 생성 및 새로 고침을 더 잘 제어할 수 있습니다. 관리되는 액세스 제어가 필요한 자동화된 워크플로의 경우 대신 ServicePrincipalAuthentication를 사용합니다. 이 클래스는 토큰을 검색하기 위해 호출될 get_token_for_audience 메서드를 제공해야 합니다. get_token_for_audience가 호출되고 대상 그룹 get_token_for_audience(audience)에게 전달되는 방법의 예 대상 그룹별로 범위가 지정된 AAD 토큰을 사용하여 인증을 관리합니다. 토큰 인증은 토큰 생성 및 새로 고침이 AML SDK 외부에 있을 때 적합합니다. 이러한 형식의 인증을 사용하면 토큰 생성 및 새로 고침을 더 잘 제어할 수 있습니다. 관리되는 액세스 제어가 필요한 자동화된 워크플로의 경우 대신 ServicePrincipalAuthentication를 사용합니다. 이 클래스는 토큰을 검색하기 위해 호출될 get_token_for_audience 메서드를 제공해야 합니다. get_token_for_audience가 호출되고 대상 그룹 get_token_for_audience(audience)에게 전달되는 방법의 예 대상 그룹이 ARM 또는 AML 인증 = TokenAuthentication(get_token_for_audience)일 수 있는 위치
|
열거형
Audience |
AML에서 지원하는 대상 그룹입니다. TokenAuthentication 클래스에만 사용됩니다. |