你当前正在访问 Microsoft Azure Global Edition 技术文档网站。 如果需要访问由世纪互联运营的 Microsoft Azure 中国技术文档网站,请访问 https://docs.azure.cn。
DefaultAzureCredentialBuilder 类
- java.
lang. Object - com.
azure. identity. CredentialBuilderBase<T> - com.
azure. identity. DefaultAzureCredentialBuilder
- com.
- com.
public class DefaultAzureCredentialBuilder
extends CredentialBuilderBase<DefaultAzureCredentialBuilder>
用于实例化 的 DefaultAzureCredentialFluent 凭据生成器。
适用于 DefaultAzureCredential 应用程序最终在 Azure 中运行的大多数方案。 DefaultAzureCredential 将通常用于在部署时进行身份验证的凭据与用于在开发环境中进行身份验证的凭据组合在一起。 DefaultAzureCredential 将按顺序尝试通过以下机制进行身份验证。
示例:构造 DefaultAzureCredential
下面的代码示例演示如何 DefaultAzureCredential使用 DefaultAzureCredentialBuilder 对其进行配置来创建 。 创建此凭据后,它可能会作为“credential”参数传递到许多 Azure SDK for Java 客户端生成器的生成器中。
TokenCredential defaultAzureCredential = new DefaultAzureCredentialBuilder()
.build();
示例:使用用户分配的托管标识构造 DefaultAzureCredential
User-Assigned 托管标识 (Azure 中的 UAMI) 是一项功能,可用于在 Azure Active Directory (Azure AD) 中创建与一个或多个 Azure 资源关联的标识。 然后,可以使用此标识对各种 Azure 服务和资源进行身份验证和授权访问。 下面的代码示例演示了如何使用 DefaultAzureCredentialBuilder 对其进行配置,创建 DefaultAzureCredential 以用户分配的托管标识为目标。 创建此凭据后,它可能会作为“credential”参数传递到许多 Azure SDK for Java 客户端生成器的生成器中。
TokenCredential dacWithUserAssignedManagedIdentity = new DefaultAzureCredentialBuilder()
.managedIdentityClientId("<Managed-Identity-Client-Id")
.build();
构造函数摘要
构造函数 | 说明 |
---|---|
DefaultAzureCredentialBuilder() |
创建默认 |
方法摘要
方法继承自 CredentialBuilderBase
方法继承自 java.lang.Object
构造函数详细信息
DefaultAzureCredentialBuilder
public DefaultAzureCredentialBuilder()
创建 DefaultAzureCredentialBuilder 的实例。
方法详细信息
additionallyAllowedTenants
public DefaultAzureCredentialBuilder additionallyAllowedTenants(String[] additionallyAllowedTenants)
对于多租户应用程序, 指定凭据可能为其获取令牌的其他租户。 添加通配符值“*”以允许凭据为安装应用程序的任何租户获取令牌。
Parameters:
Returns:
additionallyAllowedTenants
public DefaultAzureCredentialBuilder additionallyAllowedTenants(List
对于多租户应用程序, 指定凭据可能为其获取令牌的其他租户。 添加通配符值“*”以允许凭据为安装应用程序的任何租户获取令牌。
Parameters:
Returns:
authorityHost
public DefaultAzureCredentialBuilder authorityHost(String authorityHost)
指定要获取令牌的 Azure Active Directory 终结点。
Parameters:
Returns:
build
public DefaultAzureCredential build()
使用配置的选项集创建新的 DefaultAzureCredential 。
Returns:
credentialProcessTimeout
public DefaultAzureCredentialBuilder credentialProcessTimeout(Duration credentialProcessTimeout)
指定 Duration 依赖于单独进程调用的开发人员凭据 ((例如 Azure CLI) )的超时。
Parameters:
Returns:
disableInstanceDiscovery
public DefaultAzureCredentialBuilder disableInstanceDiscovery()
禁用设置,该设置确定在尝试进行身份验证时是否执行实例发现。 这将完全禁用实例发现和颁发机构验证。 此功能适用于无法访问元数据终结点的方案,例如在私有云或 Azure Stack 中。 实例发现过程需要从 https://login.microsoft.com/ 中检索颁发机构元数据以验证颁发机构。 利用此 API 可禁用颁发机构的验证。 因此,确保配置的颁发机构主机有效且可信至关重要。
Returns:
executorService
public DefaultAzureCredentialBuilder executorService(ExecutorService executorService)
指定要用于执行身份验证请求的 ExecutorService。 开发人员负责维护 ExecutorService 的生命周期。
如果未配置此配置, common fork join pool 则将使用 ,它也会与其他应用程序任务共享。 如果公共池大量用于其他任务,身份验证请求可能会耗尽,应考虑设置此执行程序服务。
如果 Azure SDK 客户端不再使用 TokenCredential 并且应在应用程序退出之前关闭,则可以安全地关闭执行程序服务和 。
Parameters:
Returns:
intelliJKeePassDatabasePath
public DefaultAzureCredentialBuilder intelliJKeePassDatabasePath(String databasePath)
指定用于读取用于 IntelliJ 插件的 Azure 工具包的缓存凭据的 KeePass 数据库路径。 databasePath
在 Windows 平台上需要 。 对于 macOS 和 Linux 平台,将分别访问本机密钥链/密钥环以检索缓存的凭据。
此路径可以位于 IntelliJ IDE 中。 Windows:文件 -> 设置 -> 外观 & 行为 -> 系统设置 -> 密码。
Parameters:
Returns:
managedIdentityClientId
public DefaultAzureCredentialBuilder managedIdentityClientId(String clientId)
指定此凭据在使用托管标识的环境中运行时的用户分配标识或系统分配标识的客户端 ID。 如果未设置,将使用AZURE_CLIENT_ID环境变量中的值。 如果两者均未设置,则默认值为 null,并且仅适用于系统分配的托管标识,而不适用于用户分配的托管标识。 只能指定 managedIdentityClientId 和 managedIdentityResourceId 中的一个。
Parameters:
Returns:
managedIdentityResourceId
public DefaultAzureCredentialBuilder managedIdentityResourceId(String resourceId)
指定此凭据在使用托管标识的环境中运行时的用户分配标识或系统分配标识的资源 ID。 如果未设置,将使用AZURE_CLIENT_ID环境变量中的值。 如果两者均未设置,则默认值为 null,并且仅适用于系统分配的托管标识,而不适用于用户分配的托管标识。 只能指定 managedIdentityResourceId 和 managedIdentityClientId 中的一个。
Parameters:
Returns:
tenantId
public DefaultAzureCredentialBuilder tenantId(String tenantId)
设置要通过 DefaultAzureCredential进行身份验证的用户的租户 ID。 如果未设置,将使用AZURE_TENANT_ID环境变量中的值。 如果两者均未设置,则默认值为 null,并将向其默认租户验证用户身份。
Parameters:
Returns:
workloadIdentityClientId
public DefaultAzureCredentialBuilder workloadIdentityClientId(String clientId)
指定要用于 AKS 工作负载标识身份验证的 Azure AD 应用的客户端 ID。 如果未设置, managedIdentityClientId(String clientId) 则使用 。 如果未设置这两个值,则将使用AZURE_CLIENT_ID环境变量中的值。 如果未设置任何值,则默认值为 null,并且不会尝试工作负载标识身份验证。
Parameters:
Returns: