public async Task Init() { if (SecurityTokenValidator == null) { SecurityTokenValidator = new JwtSecurityTokenHandler(); } if (JsonWebKeyClient == null) { JsonWebKeyClient = new JsonWebKeyClient(appSettings); } var keys = await JsonWebKeyClient.GetAsync().ConfigureAwait(false); if (keys == null || keys.Count == 0) { Log.Warn($"Unable to load Json Web Kit Set from {appSettings.JwksUrl}"); } else { tokenValidationParameters.IssuerSigningKeys = keys; } tokenValidationParameters.ValidAudience = appSettings.ClientId; var realms = new string[2]; var realm = appSettings.AuthRealm; realms[0] = realm.EndsWith("/") ? realm.TrimEnd('/') : $"{realm}/"; realms[1] = realm; tokenValidationParameters.ValidIssuers = realms; }
public TokenConfigService(IEnvironmentWrapper env, IJsonWebKeyService jwkService, IJsonWebKeyClient jwkClient) { _env = env; _jwkService = jwkService; _jwkClient = jwkClient; }