InteractiveLoginAuthentication クラス
認証を管理し、対話型ログイン ワークフローで承認トークンを取得します。
対話型ログイン認証は、所有するコンピューターでのローカル実験に適しており、Azure Machine Learning SDK を使用する場合の既定の認証モデルです。 たとえば、Jupyter ノートブックでローカルで作業する際、資格情報がまだ存在しない場合は、対話型ログイン認証プロセスによって、資格情報の入力を求めるブラウザー ウィンドウが開きます。
クラス対話型ログイン認証コンストラクター。
このコンストラクターは、ユーザーにログインを求めるメッセージを表示し、その後の試行の資格情報を保存します。 ユーザーが既に Azure CLI にログインしているか、以前にログインしている場合、コンストラクターはプロンプトなしで既存の資格情報を読み込みます。 この Python プロセスが Azure Notebook サービスで実行されている場合、コンストラクターは Azure Notebooks で "azure への接続" 機能の使用を試みます。 この Python プロセスが Notebook VM で実行されている場合、コンストラクターは MSI 認証の使用を試みます。
- 継承
-
InteractiveLoginAuthentication
コンストラクター
InteractiveLoginAuthentication(force=False, tenant_id=None, cloud=None)
パラメーター
名前 | 説明 |
---|---|
force
|
前の "az login" がまだ有効な場合でも "az login" を実行するかどうかを示します。 既定値は False です。 規定値: False
|
tenant_id
|
ログイン先のテナント ID。 これは、複数のテナントにアクセスできる場合に、特定のテナントを指定するために使用できます。 指定しない場合は、既定のテナントが使用されます。 規定値: None
|
cloud
|
ターゲット クラウドの名前。 "AzureCloud"、"AzureChinaCloud"、または "AzureUSGovernment" のいずれかを指定できます。 クラウドが指定されていない場合、Azure CLI に構成されている既定値が使用されます。 既定値が見つからない場合は、"AzureCloud" が使用されます。 規定値: None
|
force
必須
|
前の "az login" がまだ有効な場合でも "az login" を実行するかどうかを示します。 既定値は False です。 |
tenant_id
必須
|
ログイン先のテナント ID。 これは、複数のテナントにアクセスできる場合に、特定のテナントを指定するために使用できます。 指定しない場合は、既定のテナントが使用されます。 |
cloud
必須
|
ターゲット クラウドの名前。 "AzureCloud"、"AzureChinaCloud"、または "AzureUSGovernment" のいずれかを指定できます。 クラウドが指定されていない場合、Azure CLI に構成されている既定値が使用されます。 既定値が見つからない場合は、"AzureCloud" が使用されます。 |
注釈
クラスのコンストラクターからログインを求めるダイアログが表示されます。 その後、コンストラクターによって、後続の試行用に資格情報が保存されます。 Azure CLI を使用して既にログインしている場合や、以前にログインしたことがある場合、コンストラクターはダイアログを表示せずに既存の資格情報を読み込みます。
from azureml.core.authentication import InteractiveLoginAuthentication
interactive_auth = InteractiveLoginAuthentication()
auth_header = interactive_auth.get_authentication_header()
print(auth_header)
Workspace クラスの from_config メソッドを使用して対話型ログインを開始することもできます。
この Python プロセスが Azure Notebook サービスで実行されている場合、コンストラクターは Azure Notebook で "connect to azure" フィーチャーの使用を試行します。
この Python プロセスが Notebook VM で実行されている場合、コンストラクターは MSI 認証の使用を試行します。
場合によっては、テナント ID を指定する必要があります。 たとえば、既定ではないテナントへのゲストとしてサブスクリプションにアクセスする場合、次の例に示すように、使用している Azure Active Directory のテナント ID を指定する必要があります。
from azureml.core.authentication import InteractiveLoginAuthentication
interactive_auth = InteractiveLoginAuthentication(tenant_id="my-tenant-id")
ws = Workspace(subscription_id="my-subscription-id",
resource_group="my-ml-rg",
workspace_name="my-ml-workspace",
auth=interactive_auth)
完全なサンプルは、https://github.com/Azure/MachineLearningNotebooks/blob/master/how-to-use-azureml/manage-azureml-service/authentication-in-azureml/authentication-in-azureml.ipynb から入手できます