繁体   English   中英

Azure Active Directory | 多租户申请

[英]Azure Active Directory | Multi-tenant Application

在Azure AD上使用多租户应用程序时,是否存在限制某些租户的方法?

也许我误解了整个事情,但我意识到另一个租户的用户可以在同意后登录我的应用程序,但我找不到限制登录到我信任的一组租户的方法。

我们目前没有应用程序配置属性,该属性映射到多租户应用程序的租户允许列表。

您可以做的是在您的应用程序中构建此功能 - auth / JWT令牌包含tenantID(tid)作为声明。 您只能为应用允许列表中的已知租户授予访问权限。

如果这是您希望能够通过应用程序配置页面配置的功能(如在azure管理门户中),请告诉我们? 在这里理解你的场景也很棒。

希望这可以帮助,

虽然此功能目前在Azure AD中不可用,但如果在混合中添加Auth0,则可以实现此方案。 Auth0支持多租户Azure AD应用程序作为应用程序的连接 ,并使用规则引擎可以编写规则以限制基于Azure AD租户对特定应用程序的访问。

下面是一个示例,说明如何在Azure AD中用户身份验证之后和用户可以访问您的应用程序之前,在Auth0身份验证管道中运行此规则:

function (user, context, callback) {
     if(context.clientName !== 'NameOfTheAppWithWhiteList'){

      var whitelist = [ 'tenantId1', 'tenantId2' ]; //authorized Azure AD tenants.
      var userHasAccess = whitelist.some(
        function (tenantId) {
          return tenantId === user.tenantid;
        });

      if (!userHasAccess) {
        return callback(new UnauthorizedError('Access denied.'));
      }
    }

    callback(null, user, context);
}

免责声明 :我为Auth0工作。

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM