使用 Azure AD B2C 时如何控制/设置单个用户的权限

VSD*_*kar 2 azure oauth-2.0 azure-active-directory azure-ad-b2c

我有 1 个 SPA 应用程序,它使用另一个 WebApi。(ASP.NET Core)两者都在 Azure 中运行,我能够使用 OAuth 2.0 隐式流程对 Azure AD B2C 进行用户身份验证

现在我问自己如何控制单个用户的权限。(删除、读取等)我必须处理索赔吗?我是否必须利用服务器端的图形 API 来检查用户是否具有特定权限?我可以使用范围吗?在哪里可以设置 User <--> Scope 关系?

我发现了几个关于 SO 的问题,但我不知道应该如何以正确的方式完成它?我目前的理解是,我向身份验证提供商询问某些范围,然后我将获得具有此范围的令牌,然后可以通过 API 进行检查。但是我如何管理哪些用户可以请求哪些范围呢?

我真的很难理解 OAuth2 和权限。希望有人能在这里帮助我。

Way*_*ang 5

不幸的是,对于一个特定用户,您无法向该用户分配权限/范围。

因为Azure AD B2C不支持应用程序角色。一般来说,Azure AD B2C 供所有用户使用其帐户访问您的应用程序。即使 Azure AD B2C 也可以让您存储和管理用户,但它无法为不同的用户分配不同的范围/权限。多个范围是授予资源的权限。多个授予的权限将以空格分隔。不用于用户访问分配。

如果这对您很重要,您可以在此用户之声页面中投票支持这个想法。Azure 团队将对其进行审核。

希望这可以帮助!