生成机密客户端应用程序时,有效管理凭据至关重要。 本文介绍如何在 Microsoft Entra 中向应用注册添加客户端证书、联合标识凭据或客户端密码。 这些凭据使应用程序能够安全地进行身份验证,无需用户交互即可访问 Web API。
先决条件
将凭据添加到您的应用程序
为机密客户端应用程序创建凭据时:
若要了解有关客户端机密漏洞的详细信息,请参阅 从基于机密的身份验证迁移应用程序。
证书有时称为公钥,是建议的凭据类型,因为我们认为证书比客户端机密更安全。
在 Microsoft Entra 管理中心门户中,在“应用注册”中选择你的应用。
选择“证书和机密”“证书”>“上传证书”>。
选择你想要上传的文件。 它必须是以下文件类型之一:.cer、.pem、.crt 。
选择 并添加。
记录证书 指纹 ,以便在客户端应用程序代码中使用。
客户端密码有时称为应用程序密码,它是一个字符串值,应用可以使用该值代替证书来标识自身。
客户端机密的安全性低于证书或联合凭据,因此不应在生产环境中 使用 。 虽然它们可能方便本地应用开发,但必须对生产环境中运行的任何应用程序使用证书或联合凭据,以确保更高的安全性。
在 Microsoft Entra 管理中心门户中,在“应用注册”中选择你的应用。
选择“证书和机密”“客户端密码”>“新建客户端密码”>。
为您的客户端密钥添加描述。
选择机密的过期时间或指定自定义生存期。
- 客户端机密生存期限制为两年(24 个月)或更少。 不能指定超过 24 个月的自定义生存期。
- Microsoft 建议将过期时间值设置为小于 12 个月。
选择 并添加。
记录客户端密码 值 ,以便在客户端应用程序代码中使用。 退出此页面后,此机密值永不再显示。
注释
如果使用自动创建服务主体的 Azure DevOps 服务连接,则需要从 Azure DevOps 门户网站更新客户端密码,而不是直接更新客户端密码。 请参阅此文档,了解如何从 Azure DevOps 门户网站更新客户端密码:排查 Azure 资源管理器服务连接问题。
联合标识凭据是一种凭据类型,此类凭据支持工作负载(例如 GitHub Actions、Kubernetes 上运行的工作负载,或在 Azure 外部的计算平台中运行的工作负载)访问受 Microsoft Entra 保护的资源,而无需使用工作负载标识联合身份验证管理机密。
若要添加联合凭据,请执行以下步骤:
在 Microsoft Entra 管理中心门户中,在“应用注册”中选择你的应用。
选择“证书和机密”“联合凭据”>“添加凭据”。>
在“联合凭据方案”下拉框中选择一种支持的方案,并按照相应的指导完成配置。
- 客户管理的密钥 ,用于使用另一租户中的 Azure Key Vault 加密租户中的数据。
- 部署 Azure 资源的 GitHub Actions,用于配置 GitHub 工作流以获取应用程序的令牌并将资产部署到 Azure。
- Kubernetes 访问 Azure 资源,以配置 Kubernetes 服务帐户,以获取应用程序的令牌并访问 Azure 资源。
- 其他颁发者,用于将应用程序配置为信任托管标识或由外部 OpenID Connect 提供程序管理的标识,以获取应用程序的令牌并访问 Azure 资源。
有关如何使用联合凭据获取访问令牌的详细信息,请参阅 Microsoft标识平台和 OAuth 2.0 客户端凭据流。
相关内容