public async Task <MessageModel <string> > GetJwtStr(string name, string pass) { string jwtStr = string.Empty; bool suc = false; //这里就是用户登陆以后,通过数据库去调取数据,分配权限的操作 var user = await _sysUserInfoServices.GetUserRoleNameStr(name, MD5Helper.MD5Encrypt32(pass)); if (user != null) { TokenModelJwt tokenModel = new TokenModelJwt { Uid = 1, Role = user }; jwtStr = JwtHelper.IssueJwt(tokenModel); suc = true; } else { jwtStr = "login fail!!!"; } return(new MessageModel <string>() { success = suc, msg = suc ? "获取成功" : "获取失败", response = jwtStr }); }
public async Task <object> GetJwtStr(string name, string pass) { string jwtStr = string.Empty; bool suc = false; //这里就是用户登陆以后,通过数据库去调取数据,分配权限的操作 //这里直接写死了 var user = await _sysUserInfoServices.GetUserRoleNameStr(name, pass); if (user != null) { TokenModelJwt tokenModel = new TokenModelJwt { Uid = 1, Role = user }; jwtStr = JwtHelper.IssueJwt(tokenModel); suc = true; } else { jwtStr = "login fail!!!"; } return(Ok(new { success = suc, token = jwtStr })); }
public async Task <IActionResult> GetJwtStr(string name, string pass) { //这里就是用户登陆以后,通过数据库去调取数据,分配权限的操作 var user = await _sysUserInfoServices.GetUserRoleNameStr(name, MD5Helper.MD5Encrypt32(pass)); if (user != null) { TokenModelJwt tokenModel = new TokenModelJwt { Uid = 1, Role = user }; return(Ok(JwtHelper.IssueJwt(tokenModel))); } return(BadRequest("login fail")); }
public async Task <object> GetJwtStr(string name, string pass) { string jwtStr = string.Empty; bool suc = false; var userRole = await _sysUserInfoServices.GetUserRoleNameStr(name, pass); if (userRole != null) { JwtTokenModel tokenModel = new JwtTokenModel { Uid = 1, Role = userRole }; jwtStr = JwtHelper.IssueJwt(tokenModel); suc = true; } else { jwtStr = "login fail"; } return(Ok(new { success = suc, token = jwtStr })); }
public async Task <object> GetJwtStr(string name, string pass) { string jwtStr = string.Empty; bool suc = false; // 获取用户的角色名,请暂时忽略其内部是如何获取的,可以直接用 var userRole="Admin"; 来代替更好理解。 var userRole = await _sysUserInfoServices.GetUserRoleNameStr(name, pass); //var userRole="Admin"; if (userRole != null) { // 将用户id和角色名,作为单独的自定义变量封装进 token 字符串中。 TokenModelJwt tokenModel = new TokenModelJwt { Uid = 1, Role = userRole }; jwtStr = JwtHelper.IssueJwt(tokenModel);//登录,获取到一定规则的 Token 令牌 suc = true; } else { jwtStr = "login fail!!!"; } return(Ok(new { success = suc, token = jwtStr })); }
public async Task <object> GetJwtToken3(string name = "", string pass = "") { string jwtStr = string.Empty; if (string.IsNullOrEmpty(name) || string.IsNullOrEmpty(pass)) { return(new JsonResult(new { Status = false, message = "用户名或密码不能为空" })); } pass = MD5Helper.MD5Encrypt32(pass); var user = await _sysUserInfoServices.Query(d => d.uLoginName == name && d.uLoginPWD == pass); if (user.Count > 0) { var userRoles = await _sysUserInfoServices.GetUserRoleNameStr(name, pass); //如果是基于用户的授权策略,这里要添加用户;如果是基于角色的授权策略,这里要添加角色 var claims = new List <Claim> { new Claim(ClaimTypes.Name, name), new Claim(JwtRegisteredClaimNames.Jti, user.FirstOrDefault().uID.ToString()), new Claim(ClaimTypes.Expiration, DateTime.Now.AddSeconds(_requirement.Expiration.TotalSeconds).ToString()) }; claims.AddRange(userRoles.Split(',').Select(s => new Claim(ClaimTypes.Role, s))); //用户标识 var identity = new ClaimsIdentity(JwtBearerDefaults.AuthenticationScheme); identity.AddClaims(claims); var token = JwtToken.BuildJwtToken(claims.ToArray(), _requirement); return(new JsonResult(token)); } else { return(new JsonResult(new { success = false, message = "认证失败" })); } }