asp.net-web-api - 具有通配符名称的基于 asp.net 角色的授权

标签 asp.net-web-api authorization azure-active-directory claims-based-identity asp.net-authorization

我正在尝试在 .net 核心 web api 中实现基于角色的授权。我没有固定的角色名称。我必须仅使用通用前缀进行验证。例如,在 JWT 声明中,角色将如下所示。

"roles": [
    "Approver@UK",
    "Approver@US",
    "Approver@DE",
......
  ]

如果用户在声明中有批准者前缀,我会允许他们访问 API。 我不想将“批准者”添加为单独的角色,我不能将所有角色都放在属性中。我正在尝试以下语法,但没有成功。

 [Authorize(Roles = "Approver@*")]

我如何通过前缀或类似条件而不是完整的角色名称来验证角色。

最佳答案

关于asp.net-web-api - 具有通配符名称的基于 asp.net 角色的授权,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/54809517/

相关文章:

c# - ASP.Net Web API 模型构造函数绑定(bind) - 调用了错误的构造函数

c# - 授权具有多个角色的属性

azure - 无法使用 "az"向 Azure AD 中的应用程序授予权限;得到 403

c# - REST API 放大数据

c# - 当返回类型不是 ActionResult 时如何返回 BadRequest?

asp.net-web-api - Web API 2 - CORS 不适用于内容类型应用程序/json

node.js - 使用 Node.js 上传到谷歌云存储

c# - 如果角色名称包含空格,则无法使 AuthorizeAttribute 工作

azure - 需要在 Azure 上执行哪些操作才能允许我们的 ASP.NET Core 6.0 MVC 根据 Azure AD 对用户进行身份验证

angular - 已发送静默登录请求,但没有用户登录并收到错误代码 AADSTS50058