Vij*_*udi 3 .net azure azure-active-directory azure-ad-msal
我试图了解 Azure AD 中的角色和组、范围之间的区别。
我正在尝试在 Azure AD 中创建受保护的 Web API,如果我的理解有误,请纠正我。
组-->已创建Active Directory组,需要访问的用户将被添加到该组中,如果以下组规划不正确,请更正。
**Groups:**
API_Read_AppName --> Group1
API_ReadWrite_AppName --> Group 2
Run Code Online (Sandbox Code Playgroud)
我假设创建了这两个组,一个是读取的,另一个是读写的,然后将想要访问我受保护的 WebAPI 的用户添加到这些组中
角色--> 这是确定受保护 WebAPI 的访问级别的角色
**Roles:**
ReadEMCS
ReadWriteEMCS
Run Code Online (Sandbox Code Playgroud)
我将创建上述角色并将这些角色分配给上面创建的组:
Role --> Group
ReadEMCS --> API_Read_AppName
ReadWriteEMCS --> API_ReadWrite_AppName
Run Code Online (Sandbox Code Playgroud)
我对上述设置感到困惑,因为我的组已经具有读取组和读写组,并且用户将被添加到这些组中,并且根据组中将具有相应访问权限的用户,我的角色在我的情况下在做什么?我是否需要角色,因为在这种情况下,访问权限已由组维护。
我假设您正在谈论“角色”的应用程序角色。
应用程序角色和组声明具有相同的效果。在某种程度上,他们的角色是重复的。因此,您无需创建应用程序角色并将其分配给组。
通常如果用户组太多,超过两百个,那么组 id 不会直接包含在 jwt 令牌中,您可能需要使用 Microsoft Graph 来获取用户的组。这有点复杂,在这种情况下我们可以选择使用应用程序角色。
此外,如果您的企业应用程序启用了“需要用户分配”,那么我们可以选择一起使用应用程序角色。
简而言之,您可以灵活选择使用应用程序角色和组声明。您甚至可以将它们组合起来,例如验证组声明和应用程序角色。
- 当使用我们能够管理访问的组时,角色的用途是什么?
Roles 声明不是必需的。
- 我们需要角色和组来管理访问的用例有哪些?
这取决于你的需要。
- Azure AD 中的范围是什么以及它的用途是什么?
范围是特定于 Web API 的设置。它定义了客户端访问您的 Web API(服务端)所需的权限。你可以把它看成是最基本的权限。仅当首先满足此条件时,我们才会考虑验证组声明或应用程序角色。
| 归档时间: |
|
| 查看次数: |
2028 次 |
| 最近记录: |