2

我正在尝试Azure Active Directory中针对我公司的多项功能。我们希望为我们的Web应用程序的用户提供单点登录和基于声明的身份验证和授权。某些客户拥有自己的Azure AD,而其他客户则可以通过我们拥有的Azure AD获得用户。我们希望允许来自其他获得批准的Azure租户的所有用户进行身份验证,但只有特定用户应该被授权,因为我们按每个应用程序向每位用户收取客户费用。希望我们的Azure AD组可以用于此目的。我成功地创建了一个测试应用程序,允许来自我的Azure AD和其他用户的用户登录到我们的应用程序。您是否可以将来自其他Azure AD的用户添加到您自己的Azure AD中的组?

我的问题是这样的:是否可以将用户从另一个Azure AD(我们不控制)添加到Azure AD中的组,以便我们可以使用用户的组成员资格来允许访问不同的应用程序我们建立?这是可能的还是我误解了一些基本的东西? :)我们应该放弃Azure AD组,并使用我们自己的sepperate数据库来存储可以在ASP安全管道期间从所有用户分配给用户的声明吗?

我测试的应用程序具有对其他Azure AD的读取权限以及对Azure AD的读取/写入权限。我无法通过Azure管理门户(“没有用户存在与您有权访问的目录中的此用户名”)的用户(来自另一个Azure AD)到我们的组,并且我迄今无法做到这一点与应用程序的图形API。将我在Azure AD中创建的用户添加到我们的组中可以正常工作。

回答

2

幸运的是,您将需要一个数据库来保持您的用户映射。

因为我们在这里,请考虑Stackoverflow - 您可以使用stackechange创建一个身份,但是您也可以使用您现有的来自google,yhaoo或facebook的身份。这意味着SO需要在某个数据库中记录您的身份,并在其旁边记录您允许和不允许执行的操作。

尽管在许多方面,你可以考虑WaaD只是作为一个数据库,并自动创建用户记录,但请记住,用户不会被认证到你的AD。您只需使用图API根据密钥进行查询,并且这可以在专用数据库上更高效地完成,或者可以说是Azure表存储。

鉴于您需要查询WaaD图API以获取组成员身份(不随初始索赔集提供),您可以查询表存储。

+0

感谢您的回答:)我怀疑这可能是这种情况。 Azure AD组功能看起来有点愚蠢,因为当你不能以多种方式使用它(当所有的帐户都是基于Azure AD的时候)。无论如何,创建一个新的数据库的时间:) –

1

针对您的特定情况的“没有用户存在与您有权访问的目录中的此用户名”,是,可以满足此要求,并且您可以添加一个Azure AD(abc.onmicrosoft.com)到另一个(def.onmicrosoft.com)。

必要条件: 1.您必须至少是全球管理员用户&联合管理员在Azure AD中必须从其他Azure AD添加用户。 2.您应该明确地添加到其他Azure AD中,您正在其当前Azure AD中注册的用户至少具有“用户”权限。

Boom!用户添加了“源自:另一个Azure AD”标签。

+0

你的意思是'abc.onmicrosoft.com'中的全局管理员必须作为'用户'权限在'def.onmicrosoft.com'中的用户添加?对于已在'def.onmicrosoft.com'中可用的所有其他用户:他们需要做些什么才能让他们访问'abc.onmicrosoft.com'中的api?他们是否必须逐一添加到“abc.onmicrosoft.com”的目录? –

+0

是的,您的第一个问题。 –

+0

而对于'def.onmicrosoft.com'中的其他用户,要在abc.onmicrosoft.com中引用它们,为了利用它们访问abc.onmicrosoft.com中的api,必须添加它们在'abc.onmicrosoft.com'中有一个全局管理员 –

0

您可以尝试B2B invitation from your Azure AD给不同域的成员。正如你所说的,你必须允许来自多个租户的人员创建一个组,并通过B2B邀请添加用户并将该组映射到您的应用。这非常方便,因为这样做可以一次性工作,而且易于维护。

+0

确实:)当我问这个问题时,B2B并不可用,但我们已经将我们的解决方案转换为使用它。 B2B允许我们将用户从任何租户(或社交帐户)添加到我们的组,并检查访问基于此 –

+0

谢谢..我对azure有点新... –

相关问题