你当前正在访问 Microsoft Azure Global Edition 技术文档网站。 如果需要访问由世纪互联运营的 Microsoft Azure 中国技术文档网站,请访问 https://docs.azure.cn。
identity 包
Azure SDK 客户端的凭据。
包
aio |
异步 Azure SDK 客户端的凭据。 |
类
AuthenticationRecord |
经过身份验证的用户的非机密帐户信息 此类启用 DeviceCodeCredential 和 InteractiveBrowserCredential 访问以前缓存的身份验证数据。 应用程序不应构造此类的实例。 他们应改为从凭据的 身份验证 方法(例如 authenticate)获取一个。 有关更多详细信息,请参阅user_authentication示例。 |
AuthenticationRequiredError |
需要交互式身份验证才能获取令牌。 只有配置为不根据需要自动提示用户交互的交互式用户凭据才会引发此错误。 其属性提供身份验证可能需要的其他信息。 control_interactive_prompts示例演示如何通过调用凭据的“authenticate”方法处理此错误。 |
AuthorizationCodeCredential |
通过兑换以前从 Azure Active Directory 获取的授权代码进行身份验证。 有关身份验证流的详细信息,请参阅 Azure Active Directory 文档 。 |
AzureAuthorityHosts |
Azure SDK 客户端的凭据。 |
AzureCliCredential |
通过从 Azure CLI 请求令牌进行身份验证。 这需要之前通过“az login”登录到 Azure,并且将使用 CLI 的当前登录标识。 |
AzureDeveloperCliCredential |
通过从Azure Developer CLI请求令牌进行身份验证。 Azure Developer CLI 是一种命令行接口工具,开发人员可在 Azure 中创建、管理和部署资源。 它基于 Azure CLI 构建,提供特定于 Azure 开发人员的其他功能。 它允许用户以用户和/或服务主体的身份对 Azure Active Directory (Azure AD) 进行身份验证。 AzureDeveloperCliCredential 在开发环境中进行身份验证,并代表 Azure Developer CLI 中登录的用户或服务主体获取令牌。 它充当Azure Developer CLI登录的用户或服务主体,并在其下执行 Azure CLI 命令,以针对 Azure Active Directory 对应用程序进行身份验证。 若要使用此凭据,开发人员需要使用以下命令之一在 Azure Developer CLI 本地进行身份验证:
根据组织中的刷新令牌有效性,可能需要在特定时间段后重复此过程。 通常,刷新令牌的有效期为几周到几个月。 AzureDeveloperCliCredential 将提示你重新登录。 |
AzurePowerShellCredential |
通过从 Azure PowerShell 请求令牌进行身份验证。 这需要之前通过“Connect-AzAccount”登录到 Azure,并且将使用当前登录的标识。 |
CertificateCredential |
使用证书作为服务主体进行身份验证。 证书必须具有 RSA 私钥,因为此凭据使用 RS256 对断言进行签名。 有关配置证书身份验证的详细信息,请参阅 Azure Active Directory 文档 。 |
ChainedTokenCredential |
一个凭据序列,它本身就是一个凭据。 其 get_token 方法按顺序对序列中的每个凭据调用 |
ClientAssertionCredential |
使用 JWT 断言对服务主体进行身份验证。 此凭据适用于高级方案。 CertificateCredential 对于最常见的断言方案,具有更方便的 API,使用证书对服务主体进行身份验证。 |
ClientSecretCredential |
使用客户端密码作为服务主体进行身份验证。 |
CredentialUnavailableError |
凭据未尝试进行身份验证,因为所需的数据或状态不可用。 |
DefaultAzureCredential |
能够处理大多数 Azure SDK 身份验证方案的默认凭据。 它使用的标识取决于环境。 当需要访问令牌时,它会依次使用这些标识请求访问令牌,在提供令牌时停止访问令牌:
可以使用关键字 (keyword) 参数配置此默认行为。 |
DeviceCodeCredential |
通过设备代码流对用户进行身份验证。 调用 时 get_token ,此凭据将从 Azure Active Directory 获取验证 URL 和代码。 用户必须浏览到 URL,输入代码,并使用 Azure Active Directory 进行身份验证。 如果用户身份验证成功,则凭据会收到访问令牌。 此凭据主要用于在没有 Web 浏览器的环境中对用户进行身份验证,例如 SSH 会话。 如果 Web 浏览器可用, InteractiveBrowserCredential 更方便,因为它会自动打开浏览器到登录页。 |
EnvironmentCredential |
由环境变量配置的凭据。 此凭据能够使用客户端机密或证书作为服务主体进行身份验证,或者作为具有用户名和密码的用户进行身份验证。 使用以下环境变量按以下顺序尝试配置: 具有机密的服务主体:
具有证书的服务主体:
具有用户名和密码的用户:
|
InteractiveBrowserCredential |
打开浏览器以交互方式对用户进行身份验证。 get_token 打开浏览器到 Azure Active Directory 提供的登录 URL,并使用 PKCE (Code Exchange 的证明密钥) 内部对授权代码流中的用户进行身份验证,以保护代码。 |
KnownAuthorities | |
ManagedIdentityCredential |
在任何支持托管标识的托管环境中,使用 Azure 托管标识进行身份验证。 此凭据默认使用系统分配的标识。 若要配置用户分配的标识,请使用关键字 (keyword) 参数之一。 有关为应用程序配置托管标识的详细信息,请参阅 Azure Active Directory 文档 。 |
OnBehalfOfCredential |
通过代理流对服务主体进行身份验证。 此流通常由中间层服务使用委托的用户标识授权对其他服务的请求。 由于这不是交互式身份验证流,因此使用它的应用程序必须在请求任何委托权限之前获得管理员同意。 有关代理流的更详细说明,请参阅 Azure Active Directory 文档 。 |
SharedTokenCacheCredential |
使用在 Microsoft 应用程序之间共享的本地缓存中的令牌进行身份验证。 |
TokenCachePersistenceOptions |
用于持久令牌缓存的选项。 大多数凭据接受此类的实例来配置永久性令牌缓存。 默认值将凭据配置为使用与 Microsoft 开发人员工具和 SharedTokenCacheCredential共享的缓存。 若要将凭据的数据与其他应用程序隔离,请指定缓存 的名称 。 默认情况下,缓存使用当前平台的用户数据保护 API 进行加密,当它不可用时将引发错误。 若要将缓存配置为回退到未加密的文件而不是引发错误,请指定 allow_unencrypted_storage=True。 警告 缓存包含身份验证机密。 如果缓存未加密,则保护缓存是 应用程序的责任。 违反其内容将完全入侵帐户。 |
UsernamePasswordCredential |
使用用户名和密码对用户进行身份验证。 通常,Microsoft 不建议使用此类身份验证,因为它比其他身份验证流不安全。 使用此凭据进行身份验证不是交互式的,因此它 与任何形式的多重身份验证或同意提示不兼容。 应用程序必须已获得用户或目录管理员的同意。 此凭据只能对工作和学校帐户进行身份验证;不支持 Microsoft 帐户。 有关帐户类型的详细信息,请参阅 Azure Active Directory 文档 。 |
VisualStudioCodeCredential |
通过“Azure 帐户”扩展登录到 Visual Studio Code的 Azure 用户进行身份验证。 这是一个已知问题,即此凭据不适用于 0.9.11 以上的 Azure 帐户扩展版本。 正在对此问题进行长期修复。 同时,请考虑使用 AzureCliCredential进行身份验证。 |
WorkloadIdentityCredential |
使用 Azure Active Directory 工作负载标识进行身份验证。 工作负载标识身份验证是 Azure 中的一项功能,它允许在虚拟机 (VM 上运行的应用程序) 访问其他 Azure 资源,而无需服务主体或托管标识。 使用工作负载标识身份验证时,应用程序使用自己的标识(而不是共享服务主体或托管标识)对自身进行身份验证。 工作负载标识身份验证使用服务帐户凭据的概念 (SAC) ,这些凭据由 Azure 自动创建并安全地存储在 VM 中。 通过使用工作负载标识身份验证,可以避免管理和轮换每个 VM 上每个应用程序的服务主体或托管标识。 此外,由于 SAC 由 Azure 自动创建和管理,因此无需担心自行存储和保护敏感凭据。 WorkloadIdentityCredential 支持在 Azure Kubernetes 上进行 Azure 工作负载标识身份验证,并使用 Azure Kubernetes 环境中可用的服务帐户凭据获取令牌。 有关详细信息,请参阅 此工作负载标识概述 。 |
反馈
https://aka.ms/ContentUserFeedback。
即将推出:在整个 2024 年,我们将逐步取消以“GitHub 问题”作为内容的反馈机制,并将其替换为新的反馈系统。 有关详细信息,请参阅:提交和查看相关反馈