【问题标题】:MVC 4 intranet application authorization mechanismMVC 4 内网应用授权机制
【发布时间】:2013-11-29 07:37:12
【问题描述】:

我正在使用 MVC4 编写一个内部网应用程序并设计为 SPA 应用程序。
应用程序假设没有 SSO,用户将存储在 SQL DB 中。
我对外部帐户的开放授权不感兴趣。 (如 SPA 模板中所示)。
用户将拥有一些自定义字段(手机、电子邮件等)
大多数操作仅限于某些角色。
我正在寻找实现它的最内置机制。
我想使用 AutorizeFilter 并尽可能避免任何自定义实现。
提到一些操作是应用程序中 REST Services 中的 WebAPI。
我没有找到一个好的“端到端”文章来演示如何实现和管理用户和角色。
是否有带有登录视图、模型等的模板,是否有用于管理用户和角色的支持 UI?
我正在使用 MVC 4,EF 6.0.1 amd 可以使用最先进的组件。 (没有限制遗产:-))
任何潜在客户将不胜感激。
提前致谢! 亚龙。

【问题讨论】:

  • 默认的 MVC4 Internet 应用程序项目带有 AccountController 和随附的模型,但没有用于管理这些的 UI。是这个意思吗?
  • 互联网模板包含在我的情况下不太相关的开放式身份验证和授权解决方案。

标签: c# asp.net-mvc asp.net-mvc-4 asp.net-web-api authorization


【解决方案1】:

在最近的一个类似项目(MVC4、Intranet、EF CF)中,我在用户层次结构上有一个 STI,并且鉴别器字段(实际上是实体的“类型”)用于管理权限。我制作了 3-4 个简单的过滤器(如“AdminFilter”、“ManagerFilter”)并使用这些过滤器授权操作。真的很快。

我正在寻找实现它的最内置机制。

我一直在寻找类似的东西,但没有找到。好吧,也许我并没有那么寻找它。

【讨论】:

  • 我知道这是一个选项,但我更愿意付出额外的努力来选择“现成的”解决方案。
【解决方案2】:

我希望它会对某人有所帮助...
起初我读过这篇很棒的文章:
http://blog.longle.net/2012/09/25/seeding-users-and-roles-with-mvc4-simplemembershipprovider-simpleroleprovider-ef5-codefirst-and-custom-user-properties
我使用了简单的成员资格和角色,然后将角色名称用作实体中的键,该实体使用额外信息扩展了角色。
我没有使用授权过滤器并创建了实现“基于功能的授权”的自定义过滤器。
主要思想是授权机制是一组特征。
功能是一些角色可以执行而其他角色不能执行的活动。
这是一个更好的架构,更易于管理和扩展。

【讨论】:

    猜你喜欢
    • 2013-07-05
    • 1970-01-01
    • 2013-01-31
    • 1970-01-01
    • 1970-01-01
    • 2012-10-04
    • 2023-04-05
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多