public TokenDecoder(IJWTSettings jwtSettings) { this.jwtSettings = jwtSettings; this.validationParameters = new TokenValidationParameters { ValidateIssuerSigningKey = true, IssuerSigningKey = jwtSettings.GetSecurityKey(), ValidateIssuer = false, ValidateAudience = false }; }
public async Task <IAuthenticationData> ValidateTokenAsync(string providerToken) { var httpClient = new HttpClient(); var requestUri = new Uri(string.Format(GoogleApiTokenInfoUrl, providerToken)); try { var response = await httpClient.GetStringAsync(requestUri); var googleApiTokenInfo = JsonConvert.DeserializeObject <GoogleApiTokenInfo>(response); return(new BasicAuthenticationData(settings.GetSecurityKey(), googleApiTokenInfo.email, true, "admin")); } catch (Exception ex) { return(null); } }