azure - 使用 Azure AD B2C 时如何控制/设置单个用户的权限
问题描述
我有 1 个使用另一个 WebApi 的 SPA 应用程序。(ASP.NET Core) 两者都在 Azure 中运行,我能够使用 OAuth 2.0 隐式流针对 Azure AD B2C 对用户进行身份验证
现在我问自己如何控制单个用户的权限。(删除、阅读等)我必须处理索赔吗?我是否必须利用服务器端的图形 API 来检查用户是否具有特定权限?我可以使用范围吗?我在哪里可以设置用户 <--> 范围关系?
我发现了几个关于 SO 的问题,但我不知道应该如何以正确的方式完成它?我目前的理解是,我向身份验证提供者询问某些范围,我将获得一个具有此范围的令牌,然后可以通过 API 进行检查。但是我如何管理哪些用户可以询问哪些范围?
我真的很难理解 OAuth2 和权限。希望有人可以在这里帮助我。
解决方案
不幸的是,对于某个特定用户,您无法为该用户分配权限/范围。
因为 Azure AD B2C 不支持应用程序角色。通常,Azure AD B2C 是供所有用户使用他们的帐户访问您的应用程序的。甚至 Azure AD B2C 也可以让你存储和管理用户,但它不能将不同的范围/权限分配给不同的用户。多个范围是授予资源的权限。多个授予的权限将用空格分隔。它不是用于用户访问分配。
如果这对您很重要,您可以在此 Uservoice Page中为这个想法投票。Azure 团队将对其进行审核。
希望这可以帮助!
推荐阅读
- string - Jenkinsfile 中变量的插值
- laravel - Laravel 5.6 异常传播
- c# - Azure 函数“无法加载文件或程序集”
- javascript - “离线”事件不会被触发
- python - picamera with python with opencv cv2.cvtColor error scn == 3 || scn == 4
- webpack - Webpack - 服务工作者
- c++ - C++ 解析器在没有额外行的情况下崩溃
- intellij-idea - IntelliJ 上的 Hybris 源代码
- javascript - 如何显示可在 1.html 页面上使用 JS、jquery 从 2.html 按钮单击事件(其中按钮在另一个 HTML 页面上可用)
- xml - 给定 XML 的 XSLT