首页 > 解决方案 > 限制对特定租户的 Azure Active Directory 应用程序访问

问题描述

我希望使用 Microsoft 身份平台 -​​ Azure Active Directory - 来管理我的应用程序的身份验证。

我使用 v2.0 端点。

我已在新的应用程序注册门户 ( apps.dev.microsoft.com) 中注册了我的应用程序,它现在显示在 Azure 主门户的下方Azure Active Directory > App registrations

我需要限制某些组织对我的应用程序的访问——我正在假设这意味着我需要允许访问一组特定的 AD 租户。

在应用程序清单中,有一个signInAudience属性,其选项是AzureADMyOrg,AzureADMultipleOrgsAzureADandPersonalMicrosoftAccount

AzureADMultipleOrgs听起来最接近我正在寻找的内容,但到目前为止,这意味着拥有 AD 帐户的任何人都可以访问我的应用程序。

我遇到了一个orgRestrictions属性的文档(https://github.com/microsoftgraph/microsoft-graph-docs/blob/master/api-reference/beta/resources/application.md),这听起来很有用,但它只是说Reserved for future use

我认为这是一个常见的用例,例如只允许访问订阅您的产品的组织,但我没有看到一个简单的方法来做到这一点。

标签: azureactive-directoryazure-active-directory

解决方案


我认为这是一个常见的用例,例如只允许访问订阅您的产品的组织,但我没有看到一个简单的方法来做到这一点。

是的,大多数多租户示例都展示了这一点。目前没有办法说给定的应用程序应该允许从 X 和 Y 登录,因此它必须允许所有 Azure AD 租户。(尽管这是一项被大量要求的功能)然后在身份验证后,您的应用程序可以检查tid声明。例如,您可以从数据库中检查此租户是否具有有效订阅。如果他们不这样做,请将他们重定向到错误页面并且不要让他们登录。


推荐阅读