你当前正在访问 Microsoft Azure Global Edition 技术文档网站。 如果需要访问由世纪互联运营的 Microsoft Azure 中国技术文档网站,请访问 https://docs.azure.cn

EnvironmentCredential 类

定义

启用身份验证以使用客户端密码或证书Microsoft Entra ID,或者作为具有用户名和密码的用户进行身份验证。

使用以下环境变量按以下顺序尝试配置:

具有机密的服务主体:
变量说明
AZURE_TENANT_IDMicrosoft Entra租户 (目录) ID。
AZURE_CLIENT_ID客户端 (应用程序) 租户中应用注册的 ID。
AZURE_CLIENT_SECRET专为应用注册生成的客户端密码。
具有证书的服务主体:
变量说明
AZURE_TENANT_IDMicrosoft Entra租户 (目录) ID。
AZURE_CLIENT_ID客户端 (应用程序) 租户中应用注册的 ID。
AZURE_CLIENT_CERTIFICATE_PATHPEM 或 PFX 格式的证书和私钥对路径,可对应用注册进行身份验证。
AZURE_CLIENT_CERTIFICATE_PASSWORD (可选) 目前仅 PFX (PKCS12) 证书) 支持保护证书文件的密码 (。
AZURE_CLIENT_SEND_CERTIFICATE_CHAIN (可选) 指定身份验证请求是否将包含 x5c 标头以支持基于使用者名称/颁发者的身份验证。 设置为“true”或“1”时,身份验证请求包括 x5c 标头。
用户名和密码:
变量说明
AZURE_TENANT_IDMicrosoft Entra租户 (目录) ID。
AZURE_CLIENT_ID客户端 (应用程序) 租户中应用注册的 ID。
AZURE_USERNAMEMicrosoft Entra 用户帐户的用户名(也称为 upn)。
AZURE_PASSWORDMicrosoft Entra 用户帐户的密码。 请注意,这不支持已启用 MFA 的帐户。

此凭据最终使用 ClientSecretCredentialClientCertificateCredentialUsernamePasswordCredential 使用这些详细信息执行身份验证。 有关更多详细信息,请参阅该类的文档。

public class EnvironmentCredential : Azure.Core.TokenCredential
type EnvironmentCredential = class
    inherit TokenCredential
Public Class EnvironmentCredential
Inherits TokenCredential
继承
EnvironmentCredential

构造函数

EnvironmentCredential()

创建 EnvironmentCredential 类的实例,并从环境变量读取客户端机密详细信息。 如果此时找不到预期的环境变量,则 GetToken 方法将在调用时返回默认值 AccessToken

EnvironmentCredential(EnvironmentCredentialOptions)

创建 EnvironmentCredential 类的实例,并从环境变量读取客户端机密详细信息。 如果此时找不到预期的环境变量,则 GetToken 方法将在调用时返回默认值 AccessToken

方法

GetToken(TokenRequestContext, CancellationToken)

使用环境变量AZURE_TENANT_ID、AZURE_CLIENT_ID、AZURE_CLIENT_SECRET或AZURE_USERNAME和AZURE_PASSWORD中指定的客户端详细信息,从Microsoft Entra ID 获取令牌。 获取的令牌由凭据实例缓存。 令牌生存期和刷新是自动处理的。 如果可能,请重复使用凭据实例来优化缓存效率。

GetTokenAsync(TokenRequestContext, CancellationToken)

使用环境变量AZURE_TENANT_ID、AZURE_CLIENT_ID、AZURE_CLIENT_SECRET或AZURE_USERNAME和AZURE_PASSWORD中指定的客户端详细信息,从Microsoft Entra ID 获取令牌。 获取的令牌由凭据实例缓存。 令牌生存期和刷新是自动处理的。 如果可能,请重复使用凭据实例来优化缓存效率。

适用于