若要使应用使用标识和访问管理 (IAM) Microsoft Entra ID的功能(包括访问受保护的资源),必须先注册它。 然后,Microsoft 标识平台为已注册的应用程序执行 IAM 函数。 本文介绍如何在Microsoft Entra 管理中心中注册 Web 应用程序。 可以了解有关可在Microsoft 标识平台中注册的应用类型的详细信息。
注册应用程序会在应用与Microsoft 标识平台之间建立信任关系。 信任是单向的:你的应用信任Microsoft 标识平台,而不是相反。 创建后,应用程序对象不能在不同的租户之间移动。
登录到 Microsoft Entra 管理中心。
如果有权访问多个租户,请使用顶部菜单中的 “设置” 图标从“ 目录 + 订阅 ”菜单切换到要在其中注册应用程序的租户。
浏览到“标识>应用程序”>应用注册并选择“新建注册”。
输入应用程序的显示 名称 。
在 支持的帐户类型 部分中指定谁可以使用该应用程序。
支持的帐户类型 |
说明 |
仅限此组织目录中的帐户 |
如果要构建 仅供租户中的 用户 (或来宾) 使用的应用程序,请选择此选项。
此应用通常称为业务线 (LOB) 应用程序,是Microsoft 标识平台中的单租户应用程序。 |
任何组织目录中的帐户 |
如果希望任何Microsoft Entra租户中的用户使用应用程序,请选择此选项。 例如,如果要构建要提供给多个组织的 SaaS) 应用程序 (软件即服务,则此选项适用。
这种类型的应用在Microsoft 标识平台称为多租户应用程序。 |
任何组织目录中的帐户和 Microsoft 个人帐户 |
若要面向最广泛的客户,请选择此选项。
通过选择此选项,你将注册一个 多租户 应用程序,该应用程序也可以支持拥有个人 Microsoft 帐户的用户。 个人 Microsoft 帐户包括 Skype、Xbox、Live 和 Hotmail 帐户。 |
个人 Microsoft 帐户 |
如果仅为拥有个人 Microsoft 帐户的用户生成应用程序,请选择此选项。 个人 Microsoft 帐户包括 Skype、Xbox、Live 和 Hotmail 帐户。 |
不要为重定向 URI 输入任何内容 , (可选) 。 你将在下一部分中配置重定向 URI。
选择“ 注册 ”以完成初始应用注册。
注册完成后,Microsoft Entra 管理中心将显示应用注册的“概述”窗格。 在此页上,为应用分配了以下值:
-
应用程序 (客户端) ID ,用于跨所有租户在 Microsoft 云生态系统中唯一标识应用程序。
- 唯一标识租户中应用程序的对象 ID。
平台设置包括重定向 URI、特定身份验证设置或特定于应用程序平台的字段,例如 Web 和 单页应用程序。
在 “管理”下,选择“ 身份验证”。
在 “平台配置”下,选择“ 添加平台”。
在 “配置平台”下,选择应用程序类型的磁贴 (平台) 以配置其设置。
平台 |
“设置”选项 |
Web |
输入应用的 重定向 URI 。 此 URI 是 Microsoft 标识平台重定向用户客户端并在身份验证后发送安全令牌的位置。
还可以配置 Front-channel 注销 URL 以及 隐式授权和混合流 属性。
为在服务器上运行的标准 Web 应用程序选择此平台。 |
单页应用程序 |
输入应用的 重定向 URI 。 此 URI 是 Microsoft 标识平台重定向用户客户端并在身份验证后发送安全令牌的位置。
还可以配置 Front-channel 注销 URL 以及 隐式授权和混合流 属性。
如果要使用 JavaScript 或框架(如 Angular、Vue.js、React.js 或 Blazor WebAssembly)生成客户端 Web 应用,请选择此平台。 |
iOS /macOS |
输入应用 捆绑 ID。 在 “生成设置” 或 Info.plist 的 Xcode 中找到它。
指定 捆绑 ID 时,会为你生成重定向 URI。 |
Android |
输入应用 包名称。 在 AndroidManifest.xml 文件中找到它。 同时生成并输入 签名哈希。
指定这些设置时,会为你生成重定向 URI。 |
移动和桌面应用程序 |
选择建议的 重定向 URI 之一。 或者指定或更多 自定义重定向 URI。
对于使用嵌入式浏览器的桌面应用程序,我们建议
https://login.microsoftonline.com/common/oauth2/nativeclient
对于使用系统浏览器的桌面应用程序,我们建议
http://localhost
对于未使用最新的 Microsoft 身份验证库 (MSAL) 或未使用代理的移动应用程序,请选择此平台。 此外,为桌面应用程序选择此平台。 |
选择“ 配置 ”以完成平台配置。
添加到应用注册的重定向 URI 的格式存在一些限制。 有关这些限制的详细信息,请参阅 重定向 URI (回复 URL) 限制和限制。
凭据由访问 Web API 的 机密客户端应用程序 使用。 机密客户端的示例包括 Web 应用、其他 Web API 或服务类型和守护程序类型应用程序。 凭据允许应用程序以自身身份进行身份验证,无需用户在运行时进行交互。
可以将证书、客户端机密 (字符串或密码) ,或联合凭据作为凭据添加到机密客户端应用注册。
证书有时称为 公钥,是推荐的凭据类型,因为它们被认为比客户端机密更安全。 有关在应用程序中使用证书作为身份验证方法的详细信息,请参阅Microsoft 标识平台应用程序身份验证证书凭据。
- 选择 “证书 & 机密>证书>上传证书”。
- 选择要上传的文件。 它必须是以下文件类型之一: .cer、 .pem、 .crt。
- 选择“添加”。
有时称为 应用程序密码,客户端密码是一个字符串值,你的应用可以使用它来代替证书来标识自身。
客户端机密被认为不如证书凭据安全。 应用程序开发人员有时在本地应用开发期间使用客户端机密,因为它们易于使用。 但是,对于在生产环境中运行的应用程序,应使用证书凭据或联合凭据。
- 选择 “证书”& 机密>“”客户端机密>“”新建客户端密码”。
- 添加客户端密码的说明。
- 选择机密的过期时间或指定自定义生存期。
- 客户端机密生存期限制为两年 (24 个月) 或更短。 不能指定超过 24 个月的自定义生存期。
- Microsoft 建议将过期值设置为小于 12 个月。
- 选择“添加”。
-
记录要在 客户端应用程序代码中使用的机密值。 离开此页面后 ,永远不会再次显示 此机密值。
有关应用程序安全建议,请参阅Microsoft 标识平台最佳做法和建议。
如果使用可自动创建服务主体的 Azure DevOps 服务连接,则需要从 Azure DevOps 门户网站更新客户端密码,而不是直接更新客户端密码。 请参阅以下文档,了解如何从 Azure DevOps 门户网站更新客户端密码:排查 Azure 资源管理器服务连接问题。
联合凭据是一种凭据类型,它允许工作负载(如GitHub Actions、Kubernetes 上运行的工作负荷或 Azure 外部计算平台中运行的工作负荷)访问受Microsoft Entra ID保护的资源,而无需管理机密。 联合凭据使用 工作负载联合身份验证。
若要添加联合凭据,请执行以下步骤:
选择 “证书 & 机密>联合凭据>添加凭据”。
在 “联合凭据方案 ”下拉框中,选择支持的方案之一,并按照相应的指南完成配置。
有关如何获取具有联合凭据的访问令牌的详细信息,请参阅 Microsoft 标识平台 和 OAuth 2.0 客户端凭据流。