首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >ASP.NET:权限/认证体系结构

ASP.NET:权限/认证体系结构
EN

Stack Overflow用户
提问于 2008-12-19 08:17:01
回答 5查看 7K关注 0票数 8

我正在研究如何在我的ASP.NET应用程序中构建一个具有以下要求的ASP.NET。

  • 用户只有一个角色(即管理、SalesManager、销售、.)
  • 角色具有一组权限来访问现有对象的子集。也就是说。Sales拥有对对象类型“产品”的CREAD、读、写权限,但不删除“
  • 不知何故,我希望权限处于具有继承的层次结构中,这样我就不需要指定所有可用的对象。
  • 系统必须能够快速回答“用户X有权限做Y到对象Z”的问题
  • 所有数据库托管(MSSQL),在C#/ASP.NET中实现

我想得到关于这些要求的反馈吗?有什么想法吗?如何使用ASP.NET框架(尽可能多地)实现这一点?(不过,我也很想知道,在没有会员资格的情况下,如何做到这一点)

EN

回答 5

Stack Overflow用户

回答已采纳

发布于 2008-12-19 22:00:01

我认为您需要在业务对象或控制器中实现一组权限查询方法。示例: CanRead()、CanEdit()、CanDelete()

当页面呈现时,它需要查询业务对象并确定用户授权的功能,并根据这些信息启用或禁用功能。业务对象反过来可以使用角色或其他数据库查询来确定活动用户的权限。

我想不出一种以声明方式集中定义这些权限的方法。它们需要分配到这些职能的执行中。但是,如果需要改进设计,则可以使用依赖项注入将授权器插入到业务对象中,从而使实现保持独立。

在的书中有一些使用这个模型的代码。新版本还没有在谷歌上发布。

票数 6
EN

Stack Overflow用户

发布于 2009-06-16 13:13:19

我认为最好的实现之一是文档化的这里,它可以满足您的需求。唯一的问题是,这个钩子连接到NHibernate中,但是您可以使用它作为模板来创建自己的权限实现,并且只需链接到您自己的事件模型,而不是NHibernates拦截器。

我正致力于这样一个系统自己,并将博客,一旦我对它感到满意。

票数 2
EN

Stack Overflow用户

发布于 2008-12-19 08:19:42

自ASP.NET 2.0以来提供的成员资格API应该非常适合您的需求。我担心它不直接支持的唯一东西是分层角色。但是,您可以通过另一个手动编写的层次角色表轻松地使用基于正常角色的安全性来实现所需的功能。

票数 1
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/380336

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档