Asp.net mvc GetRolesForUser角色Provider中的加密用户名
我用密钥和Iv加密和解密数据, 和加密用户名。为我网站上的每个用户注册创建密钥和iv 所以我需要指定密钥和iv来解密每个用户名 RoleProvider中的GetRolesForUser方法 只有一个参数用户名Asp.net mvc GetRolesForUser角色Provider中的加密用户名,asp.net-mvc,encryption,asp.net-mvc-5,membership-provider,roleprovider,Asp.net Mvc,Encryption,Asp.net Mvc 5,Membership Provider,Roleprovider,我用密钥和Iv加密和解密数据, 和加密用户名。为我网站上的每个用户注册创建密钥和iv 所以我需要指定密钥和iv来解密每个用户名 RoleProvider中的GetRolesForUser方法 只有一个参数用户名 public override string[] GetRolesForUser(string username) { var roles = (from u in db.Users join r in db.Rol
public override string[] GetRolesForUser(string username)
{
var roles = (from u in db.Users
join r in db.Roles on u.RoleId equals r.Id
where u.UserName == username
select r.RoleNameInSystem).ToArray();
return roles;
}
以上代码工作正常,但数据未加密时
但对于解密用户名,需要对每个用户进行密钥和Iv
我不知道解决方案我找到了解决方案,在控制器I访问密钥和Iv中,当用户登录我的站点时,我加密用户名并传递到FormsAuthentication.SetAuthCookie,此方法的任务是将用户名发送到RoleProvider类GetRolesForUser方法 需要注意的是:User.Identity.Name返回加密的用户名