DefaultAzureCredential クラス
- java.
lang. Object - com.
azure. identity. ChainedTokenCredential - com.
azure. identity. DefaultAzureCredential
- com.
- com.
public final class DefaultAzureCredential
extends ChainedTokenCredential
DefaultAzureCredential は、アプリケーションが最終的に Azure で実行されることを意図しているほとんどのシナリオに適しています。 DefaultAzureCredential は、デプロイ時の認証に一般的に使用される資格情報と、開発環境での認証に使用される資格情報を組み合わせます。 DefaultAzureCredential は、次のメカニズムを使用して順番に認証を試みます。
![画像 1][]
- EnvironmentCredential - DefaultAzureCredential は、環境変数で指定されたアカウント情報を読み取り、それを使用して認証します。
- WorkloadIdentityCredential - ワークロード ID webhook によって設定された環境変数を使用してアプリが Kubernetes にデプロイされている場合、DefaultAzureCredential によって構成された ID が認証されます。
- ManagedIdentityCredential - マネージド ID が有効になっている Azure ホストにアプリケーションがデプロイされた場合、DefaultAzureCredential はそのアカウントで認証されます。
- IntelliJCredential - [Azure Toolkit for IntelliJ][] を使用して認証した場合、DefaultAzureCredential はそのアカウントで認証されます。
- AzureCliCredential - Azure CLI
az login
コマンドを使用してアカウントを認証した場合、DefaultAzureCredential はそのアカウントで認証されます。 - AzurePowerShellCredential - [Azure Power Shell][]
Az Login
コマンドを使用してアカウントを認証した場合、DefaultAzureCredential はそのアカウントで認証されます。 - 上記の資格情報を作成できなかった場合は失敗します。
詳細については、[既定の Azure 資格情報認証に関するドキュメント][] を参照してください。
DefaultAzureCredential を構成する
DefaultAzureCredential では、 または 環境変数のセッターを使用した一連の構成が DefaultAzureCredentialBuilder サポートされます。
- 環境変数
AZURE_CLIENT_ID
、、AZURE_CLIENT_SECRET/AZURE_CLIENT_CERTIFICATE_PATH
を設定すると、AZURE_TENANT_ID
DefaultAzureCredential が値で指定されたサービス プリンシパルとして認証されるように構成されます。 - ビルダーまたは環境変数 AZURE_CLIENT_ID に設定 managedIdentityClientId(String clientId) すると、DefaultAzureCredential がユーザー定義マネージド ID として認証されるように構成されますが、空のままにすると、システム割り当てマネージド ID として認証するように構成されます。
- ビルダーまたは環境変数
AZURE_TENANT_ID
を設定tenantId(String tenantId)すると、Visual Studio Code と IntelliJ IDEA の特定のテナントに対して認証するように DefaultAzureCredential が構成されます。
サンプル: DefaultAzureCredential を構築する
次のコード サンプルは、 を使用して DefaultAzureCredentialBuilder DefaultAzureCredential を作成して構成する方法を示しています。 この資格情報が作成されると、多くの Azure SDK for Java クライアント ビルダーのビルダーに 'credential' パラメーターとして渡される場合があります。
TokenCredential defaultAzureCredential = new DefaultAzureCredentialBuilder()
.build();
サンプル: ユーザー割り当てマネージド ID を使用して DefaultAzureCredential を構築する
Azure User-Assigned マネージド ID (UAMI) は、1 つ以上の Azure リソースに関連付けられている [Azure Active Directory (Azure AD) ][Azure Active Directory Azure AD] で ID を作成できる機能です。 この ID を使用して、さまざまな Azure サービスとリソースへのアクセスを認証および承認できます。 次のコード サンプルは、 を使用して DefaultAzureCredentialBuilder ユーザー割り当てマネージド ID を構成する DefaultAzureCredential の作成を示しています。 この資格情報が作成されると、多くの Azure SDK for Java クライアント ビルダーのビルダーに 'credential' パラメーターとして渡される場合があります。
TokenCredential dacWithUserAssignedManagedIdentity = new DefaultAzureCredentialBuilder()
.managedIdentityClientId("<Managed-Identity-Client-Id")
.build();
[Image 1]: [Azure Toolkit for IntelliJ]: https://learn.microsoft.com/azure/developer/java/toolkit-for-intellij/ [Azure Power Shell]: https://learn.microsoft.com/powershell/azure/?view=azps-9.4.0 [default azure credential authentication docs]: https://aka.ms/azsdk/java/identity/defaultazurecredential/docs [Azure Active Directory Azure AD]: https://learn.microsoft.com/azure/active-directory/fundamentals/