private IEnumerable <Claim> GetAccountClaims(LoginResultUser user) => new Claim[] { new Claim(JwtRegisteredClaimNames.Sub, user.UserId), new Claim(JwtRegisteredClaimNames.GivenName, user.FirstName), new Claim(JwtRegisteredClaimNames.FamilyName, user.LastName), new Claim(JwtRegisteredClaimNames.NameId, user.Email) };
private JwtSecurityToken GetJwtSecurityToken(LoginResultUser user) { IEnumerable <Claim> claims = GetAccountClaims(user); string websiteUri = $"https://{WebsiteHostName}/"; return(AppServiceLoginHandler .CreateToken(claims, TokenSigningKey, websiteUri, websiteUri, TimeSpan.FromDays(30))); }
private LoginResultUser AuthenticateCredentials(UserLoginModel credentials) { //validate user against db, or service here var user = new LoginResultUser { UserId = Guid.NewGuid().ToString(), Email = "*****@*****.**", FirstName = "Sandbox", LastName = "User" }; var success = (credentials.UserName == user.Email && credentials.Password == "pass"); //dummy validation return(success ? user : null); }