gpt4 book ai didi

asp.net-mvc - ASP.NET MVC 5 Identity 2.0、Windows 身份验证、具有角色属性的用户模型

转载 作者:行者123 更新时间:2023-12-04 21:41:08 26 4
gpt4 key购买 nike

我正在尝试创建一个使用 Windows 身份验证但使用从用户模型中提取的角色的 MVC5 应用程序。

我已经搜索了很多示例,但我能找到的唯一示例是基于旧的 ASP.NET 标识框架。

有人愿意为我指出正确的方向吗?!

谢谢!

最佳答案

所以我想出了一种方法来解决这个问题。我创建了一个自定义授权属性,用于检查角色的用户模型。

using System.Linq;
using System.Web;
using System.Web.Mvc;
using App.Models;
using System.Security.Claims;

namespace App.Extensions.Attributes
{
public class AuthorizeUser : AuthorizeAttribute
{
Context context = new Context();

protected override bool AuthorizeCore(HttpContextBase httpContext)
{

if (httpContext == null)
return false;

string login = ClaimsPrincipal.Current.Claims.ElementAt(1).Value.Split('@')[0];
string[] roles = base.Roles.Split(',');
User user = context.Users.FirstOrDefault(u => u.Login == login);

if (user == null)
return false;
else if (base.Roles == "")
return true;
else
return roles.Contains(user.Role.ToString());
}
}
}

想法?

关于asp.net-mvc - ASP.NET MVC 5 Identity 2.0、Windows 身份验证、具有角色属性的用户模型,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/26004026/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com