azure - Azure Active Directory 应用程序注册如何建立信任?

标签 azure azure-active-directory azure-app-registration

Microsoft docs状态:

Registering your application establishes a trust relationship between your app and the Microsoft identity platform. The trust is unidirectional: your app trusts the Microsoft identity platform, and not the other way around.

这里的“信任”到底是什么意思以及应用程序注册如何建立所述信任?

我理解的方式是,注册基本上使应用程序为 AD 所知,但这如何使 AD(应用程序重定向到交互式登录)更值得应用程序信任?恶意广告难道不能假装知道任何使用它进行登录的应用程序吗?是否不需要某种共享 secret 来向应用程序保证 AD 确实是 AD? HTTPS 不是已经建立了这种信任吗?

反过来对我来说更有意义:AD 接收登录请求以及应用程序设置的重定向 URI。但如果 AD 不知道重定向 URI,则该请求不值得信任,将被拒绝。

我可能误解了一些东西,所以有人可以解释一下这背后的想法吗?

最佳答案

在身份验证世界中,信任是一个复杂的词。在我看来,解决这个问题的最简单方法是以Google登录按钮为例。您可以使用它在几乎每个网站上使用您的 Google 帐户登录。这是否意味着 Google 信任每个使用它的网站?不,当然不。这些网站信任 Google 吗?当然可以,但如果 Google 将有关用户的正确信息返回给他们,他们就看不到。

这里的情况非常相似,因为在大多数情况下您将使用相同的协议(protocol)来实现它(OAuth2 OIDC)。

您是对的,您需要配置 Secrets 和 returnUrls 以确保应用程序注册不会用于恶意目的,但是,这不会在身份提供者和应用程序之间建立信任。这只是保护客户端的技术措施。

但是,如果您愿意,您当然可以信任该应用程序。最常见的方法是授予其访问 scopes 的权限因此应用程序可以代表用户执行操作。通常,这是通过您可能知道的同意屏幕来完成的(“授予对您的电子邮件和电话号码的访问权限”)。在企业环境中,它们经常被省略,并通过 admin constent 授予访问权限。 .

TL;博士;仅仅因为有应用程序注册,就不会继承信任,但是您可以信任应用程序来访问用户数据。

关于azure - Azure Active Directory 应用程序注册如何建立信任?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/75211883/

相关文章:

Azure AD 管理员同意吗? Multi-Tenancy 应用程序管理

azure - 返回 400 "Resource not found for the segment ' 联系人的组的图表 Delta API。”

azure - 我可以使用 Azure 通知中心来提供自定义推送通知服务吗?

azure - 从 Google 服务帐户模拟 Azure 服务主体

嵌入 Microsoft Team 时的 Azure Web App 授权问题

azure - 使用证书获取 token 时,未将对象引用设置为对象的实例

azure - 调用RestMethod :unauthorized client for getting Authentication-token

azure - 使用 Powershell 将范围添加到 Azure AD 应用程序(公开 API)

azure - Azure WebJobs 从哪里读取配置设置?

azure - 以编程方式将应用程序设置添加到 azure 函数