32 IHttpClientFactory httpClientFactory,
33 ILoggerFactory loggerFactory,
34 IOptionsSnapshot<SecurityConfiguration> securityConfigurationOptions)
36 ArgumentNullException.ThrowIfNull(loggerFactory);
37 ArgumentNullException.ThrowIfNull(securityConfigurationOptions);
39 var securityConfiguration = securityConfigurationOptions.Value;
41 var validatorsBuilder =
new List<IOAuthValidator>();
44 if (securityConfiguration.OAuth ==
null)
47 if (securityConfiguration.OAuth.TryGetValue(
OAuthProvider.GitHub, out var gitHubConfig))
48 validatorsBuilder.Add(
54 if (securityConfiguration.OAuth.TryGetValue(
OAuthProvider.Discord, out var discordConfig))
55 validatorsBuilder.Add(
61#pragma warning disable CS0618
62 if (securityConfiguration.OAuth.TryGetValue(
OAuthProvider.Keycloak, out var keyCloakConfig))
63#pragma warning restore CS0618
64 validatorsBuilder.Add(
70 if (securityConfiguration.OAuth.TryGetValue(
OAuthProvider.InvisionCommunity, out var invisionConfig))
71 validatorsBuilder.Add(