authentication モジュール

Azure Machine Learning のさまざまな種類の認証を管理するための機能が含まれています。

サポートされている認証の種類:

  • 対話型のログイン - Azure Machine Learning SDK を使用する場合の既定のモード。 対話型ダイアログを使用します。
  • Azure CLI - azure-cli パッケージで使用します。
  • サービス プリンシパル - 自動機械学習ワークフローで使用します。
  • MSI - Azure 仮想マシンなど、マネージド サービス ID 対応のアセットで使用します。
  • Azure ML トークン - 送信された実行でのみ Azure ML トークンを取得するために使用されます。

これらの認証メカニズムの詳細については、https://aka.ms/aml-notebook-authを参照してください。

クラス

AbstractAuthentication

Azure Machine Learning のすべての認証クラスの抽象親クラス。

派生クラスは、対象となるユース ケースに基づき、認証およびトークン取得のためのさまざまな手段を提供します。 認証の例については、https://aka.ms/aml-notebook-auth を参照してください。

AbstractAuthentication クラスコンストラクター。

AccessToken

AccessToken(token, expires_on) の新しいインスタンスを作成する

ArmTokenAuthentication

サービス プリンシパルまたはマネージド サービス ID 認証を使用して ARM アクセス トークンを取得するために内部的に使用されます。

マネージド アクセス制御が必要な自動化されたワークフローの場合は、代わりに ServicePrincipalAuthentication を使用します。

クラス ArmTokenAuthentification コンストラクター。

AzureCliAuthentication

Azure CLI を使用して、認証の管理とアクセス トークンの取得を行います。

このクラスを使用するには、azure-cliパッケージがインストールされている必要があります。 Azure Notebooks のエクスペリエンスを向上させるには、InteractiveLoginAuthentication クラスを使用します。

クラス Azure Cli 認証コンストラクター。

AzureMLTokenAuthentication

送信された実行のコンテキストで認証とアクセス トークンを管理します。

Azure Machine Learning トークンは、実行が送信されると生成され、実行を送信したコードでのみ使用できます。 AzureMLTokenAuthentication クラスは、送信される実行のコンテキストでのみ使用できます。 返されたトークンは、コンピューティングのプロビジョニングなどの Azure Resource Manager (ARM) 操作に対しては使用できません。 Azure Machine Learning トークンは、ユーザーのプライベート資格情報を使用すると安全でない可能性がある、プログラムをリモートで実行する場合に便利です。

Azure ML トークンによってユーザーを承認します。

Azure ML トークンは、実行が送信されると生成され、送信を行ったコードでのみ使用できます。 クラスは、送信された実行のコンテキストでのみ使用できます。 トークンは、コンピューティングのプロビジョニングなどの ARM 操作に対して使用することはできません。 Azure ML トークンは、ユーザーのプライベート資格情報を使用するのが安全でない可能性があるプログラムをリモートで実行する場合に便利です。 このクラスのコンシューマーは、新しいオブジェクトを作成するか、同じrun_scope (subscription_id、resource_group_name、workspace_name、experiment_name、run_id) を持つ登録済みインスタンスを返すクラス メソッド create を呼び出す必要があります。

InteractiveLoginAuthentication

認証を管理し、対話型ログイン ワークフローで認証トークンを取得します。

対話型ログイン認証は、所有するコンピューターでのローカル実験に適しており、Azure Machine Learning SDK を使用する場合の既定の認証モデルです。 たとえば、Jupyter ノートブックでローカルで作業する際、資格情報がまだ存在しない場合は、対話型ログイン認証プロセスによって、資格情報の入力を求めるブラウザー ウィンドウが開きます。

クラス対話型ログイン認証コンストラクター。

このコンストラクターは、ユーザーにログインを求めるメッセージを表示し、その後の試行の資格情報を保存します。 ユーザーが既に 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 を使用すると、VM は Python コードに資格情報を保存せずにワークスペースに接続できます。これにより、認証プロセスが特定のユーザー ログインから切り離されます。

クラス 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) のいずれかです

  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 クラスでのみ使用されます。