c# - 我如何进行基于角色的授权
问题描述
我正在问一个关于这个的新问题,因为我的问题已经结束。我是这个网站的新成员,所以我不知道如何提出好问题。
我正在做我的项目。我想为这个项目使用基于角色的授权,但我没有。我应该做什么,我应该研究什么?
例如程序有一个输入界面,我会从那里检查这些信息是否正确,然后这个用户将拥有管理员、编辑器等,例如管理员可以使用程序中的任何内容但编辑器不能使用某些功能比如删除或更新,所以我希望他们根据他们的角色授权做一些事情。
解决方案
首先,您必须为您的扩展角色管理(如项目)创建额外的表,并在操作上下文中与用户建立关系,这可能是您的控制器的操作。
一种方法是为角色创建自己的表。在这种情况下,您将只使用 Asp 网络会员用户,但这完全取决于您的要求。
其次,您必须在 MVC 中处理它,在我看来,最好的方法是通过您自己的自定义 Authorization 属性来实现它,并使用您的自定义授权属性而不是 [Authorization] 属性来装饰控制器的操作。
它非常简单。
[CustomAuthorize]
//[Authorize]
public ActionResult GetProjectTasks(string projectname)
{
}
推荐阅读
- google-api - 无需设置结算帐户的 Google Maps Api
- java - 错误服务 Rest Spring Boot:java.util.NoSuchElementException:不存在值
- javascript - 为什么 React Router 会导致 Web 应用程序崩溃?
- r - 在具有不同数据框的ggplot中显示多个图例
- docker - 服务器不在 Docker 之外监听
- istio - 如何在 istio 中指定外部 zipkin 收集器?
- c# - 夹紧刚体2D控制器
- logging - Ansible Tower - 作业的标准输出
- delphi - 如何使用 OpenTools API 检索环境变量的值?
- sql-server - 即使 SQL Server 没有为它们返回任何结果,如何在结果中保留所有输入的原始数据?