public bool CheckLogin(Users u) { Users a = UserDao.Find(u.UserName); try { return(a.Password == u.Password ? true : false); } catch { return(false); } }
public object Post( [FromBody] User usuario, [FromServices] UsersDAO usersDAO, [FromServices] SigningConfigurations signingConfigurations, [FromServices] TokenConfigurations tokenConfigurations) { bool credenciaisValidas = false; if (usuario != null && !String.IsNullOrWhiteSpace(usuario.UserID)) { var usuarioBase = usersDAO.Find(usuario.UserID); credenciaisValidas = (usuarioBase != null && usuario.UserID == usuarioBase.UserID && usuario.AccessKey == usuarioBase.AccessKey); } if (credenciaisValidas) { ClaimsIdentity identity = new ClaimsIdentity( new GenericIdentity(usuario.UserID, "Login"), new[] { new Claim(JwtRegisteredClaimNames.Jti, Guid.NewGuid().ToString("N")), new Claim(JwtRegisteredClaimNames.UniqueName, usuario.UserID) } ); DateTime dataCriacao = DateTime.Now; DateTime dataExpiracao = dataCriacao + TimeSpan.FromSeconds(tokenConfigurations.Seconds); var handler = new JwtSecurityTokenHandler(); var securityToken = handler.CreateToken(new SecurityTokenDescriptor { Issuer = tokenConfigurations.Issuer, Audience = tokenConfigurations.Audience, SigningCredentials = signingConfigurations.SigningCredentials, Subject = identity, NotBefore = dataCriacao, Expires = dataExpiracao }); var token = handler.WriteToken(securityToken); return(new { authenticated = true, created = dataCriacao.ToString("yyyy-MM-dd HH:mm:ss"), expiration = dataExpiracao.ToString("yyyy-MM-dd HH:mm:ss"), accessToken = token, message = "OK" }); } else { return(new { authenticated = false, message = "Falha ao autenticar" }); } }
public object Post( [FromBody] AccessCredentials credenciais, [FromServices] UsersDAO usersDAO, [FromServices] SigningConfigurations signingConfigurations, [FromServices] TokenConfigurations tokenConfigurations, [FromServices] IDistributedCache cache) { bool credenciaisValidas = false; if (credenciais != null && !String.IsNullOrWhiteSpace(credenciais.UserID)) { if (credenciais.GrantType == "password") { var usuarioBase = usersDAO.Find(credenciais.UserID); credenciaisValidas = (usuarioBase != null && credenciais.UserID == usuarioBase.UserID && credenciais.AccessKey == usuarioBase.AccessKey); } else if (credenciais.GrantType == "refresh_token") { if (!String.IsNullOrWhiteSpace(credenciais.RefreshToken)) { RefreshTokenData refreshTokenBase = null; string strTokenArmazenado = cache.GetString(credenciais.RefreshToken); if (!String.IsNullOrWhiteSpace(strTokenArmazenado)) { refreshTokenBase = JsonConvert .DeserializeObject <RefreshTokenData>(strTokenArmazenado); } credenciaisValidas = (refreshTokenBase != null && credenciais.UserID == refreshTokenBase.UserID && credenciais.RefreshToken == refreshTokenBase.RefreshToken); // Elimina o token de refresh já que um novo será gerado if (credenciaisValidas) { cache.Remove(credenciais.RefreshToken); } } } } if (credenciaisValidas) { return(GenerateToken( credenciais.UserID, signingConfigurations, tokenConfigurations, cache)); } else { return(new { authenticated = false, message = "Falha ao autenticar" }); } }
public object Post( [FromBody] AccessCredentials credenciais, [FromServices] UsersDAO usersDAO, [FromServices] SigningConfigurations signingConfigurations, [FromServices] TokenConfigurations tokenConfigurations) { bool credenciaisValidas = false; if (credenciais != null && !String.IsNullOrWhiteSpace(credenciais.UserID)) { if (credenciais.GrantType == "password") { var usuarioBase = usersDAO.Find(credenciais.UserID); credenciaisValidas = (usuarioBase != null && credenciais.UserID == usuarioBase.UserID && credenciais.AccessKey == usuarioBase.AccessKey); } else if (credenciais.GrantType == "refresh_token") { if (!String.IsNullOrWhiteSpace(credenciais.RefreshToken)) { var usuarioBase = usersDAO.FindByToken(credenciais.RefreshToken); credenciaisValidas = (usuarioBase != null && credenciais.UserID == usuarioBase.UserID && credenciais.RefreshToken == usuarioBase.RefreshToken); } } } if (credenciaisValidas) { return(GenerateToken( credenciais.UserID, signingConfigurations, tokenConfigurations, usersDAO.Find(credenciais.UserID).Roles, usersDAO)); } else { return(new { authenticated = false, message = "Falha ao autenticar" }); } }
public AcademicoMembership_Users GetUser(string username, string password) { try { return(DAO.Find(u => u.Password == password && u.Username == username).First()); } catch { return(null); } }
public string Teste([FromServices] UsersDAO usersDAO) { var usuarioBase = usersDAO.Find("1"); return("Ola"); }