相关疑难解决方法(0)

将ASP.NET MVC5身份验证添加到现有项目

我在网上看到过很多类似的页面,但大多数都使用新项目而不是现有项目,或者没有必要的功能.所以,我有一个现有的MVC 5项目,并希望将ASP.NET MVC5 Identity与登录,电子邮件确认和密码重置功能集成.

除此之外,我还需要在数据库上创建所有必要的表,即用户,角色,组等(我在我的项目中使用EF Code First).是否有符合这些需求的文章或样本?任何建议将不胜感激.提前致谢...

asp.net authentication asp.net-mvc owin asp.net-identity

151
推荐指数
2
解决办法
11万
查看次数

基于用户权限的自定义身份验证和授权

目前我正在开发一个带有MS Sql server数据库的ASP.Net MVC 5应用程序.我需要实现基于ASP.Net identity 2.0的身份验证和授权.我刚刚介绍了Identity的基本概念,并尝试在我的应用程序中实现相同的功能.由于数据库已经定义,我需要稍微自定义Identity.当我查看数据库时,表格与我通常在样本身份项目中发现的有点不同.

在此输入图像描述

从图像中可以看到,有一个名为user group的表,并根据模块定义了一组权限.默认情况下,用户可以访问相同的权限.如果要更改任何权限,可以通过在"用户权限"表中设置权限来覆盖它.

所以我的第一个问题是ASP.具有自定义授权和授权的网络身份是实现这样的场景的正确方法吗?

从视角来看,我必须根据用户/用户组权限生成菜单,并且还要根据它们启用/禁用按钮.我能够根据数据库值生成菜单.但我需要授权每个客户端请求,因此我认为AuthorizeAttribute是最佳选择.请指教?任何好的设计模式或帖子都很受欢迎.

c# authentication asp.net-mvc asp.net-identity

12
推荐指数
1
解决办法
5573
查看次数

ASP.NET MVC App中条件编辑操作的基于声明的授权设计

使用基于声明的模型设计 ASP.Net MVC 应用程序授权。假设我们有一个名为 - Product 的对象。通常,有 4 种不同的操作 - 创建、编辑、删除和查看。授权是使用 ClaimsAuthorize 属性完成的。

[Authorize]
public class ProductController : Controller
{

     [ClaimsAuthorize("Product", "VIEW")]
     public List<Product> GetProducts()
     {
         // ....
     }

     [ClaimsAuthorize("Product", "CREATE")]
     public Product CreateNewProduct(Product product)
     {
         //....
     }
}
Run Code Online (Sandbox Code Playgroud)

但就我而言,我必须支持不同类型的 EDIT 权限:

  1. 如果同一用户最初创建了产品,则某些用户可以编辑产品

  2. 如果产品属于特定类别并且用户也有权访问同一类别,则某些用户可以编辑该产品

  3. 部分用户可以编辑所有产品(这是正常的产品编辑操作)

您如何优雅地授权所有这些编辑操作(最好是如上所示的属性驱动),同时我希望将授权代码与正常的 MVC 控制器代码和业务逻辑分开。

[以上代码示例在语法上不正确,我只是为了解释这个问题而编写的] 让我知道您的想法。

asp.net-mvc claims-based-identity

6
推荐指数
1
解决办法
5444
查看次数