/// <summary>Initializes a new instance of the <see cref="ServerConfigurationResource"/> class.</summary> /// <param name="logger">The injected logger.</param> /// <param name="httpClientService">The injected httpClientService.</param> /// <param name="keycloakConfiguration">The injected keycloak configuration.</param> public ServerConfigurationResource( ILogger <ServerConfigurationResource> logger, IHttpClientService httpClientService, IKeycloakConfiguration keycloakConfiguration) { this.logger = logger; this.httpClientService = httpClientService; this.keycloakConfiguration = keycloakConfiguration; }
/// <summary>Initializes a new instance of the <see cref="ProtectionResource"/> class.</summary> /// <param name="logger">The injected logger provider.</param> /// <param name="httpClientService">injected HTTP client service.</param> /// <param name="keycloakConfiguration">The keycloak configuration.</param> /// <param name="serverConfigurationDelegate">The injected server-side configuration settings.</param> public ProtectionResource( ILogger <ProtectionResource> logger, IKeycloakConfiguration keycloakConfiguration, IServerConfigurationResource serverConfigurationDelegate, IHttpClientService httpClientService) { this.logger = logger; this.keycloakConfiguration = keycloakConfiguration; this.serverConfigurationDelegate = serverConfigurationDelegate; this.httpClientService = httpClientService; }
/// <summary> /// Initializes a new instance of the <see cref="AuthorizationClient"/> class. /// </summary> /// <param name="logger">The injected logger provider.</param> /// <param name="httpClientService">injected HTTP client service.</param> /// <param name="keycloakConfiguration">Injected keycloak Configuration.</param> /// <param name="serverConfigurationResource">Injected server configuration resource.</param> /// <param name="authorizationResource">Injected authorization resource.</param> /// <param name="protectionResource">Injected protection resource.</param> public AuthorizationClient( ILogger <AuthorizationClient> logger, IHttpClientService httpClientService, IKeycloakConfiguration keycloakConfiguration, IServerConfigurationResource serverConfigurationResource, IAuthorizationResource authorizationResource, IProtectionResource protectionResource) { this.logger = logger; this.httpClientService = httpClientService !; this.keycloakConfiguration = keycloakConfiguration; // publicly exposed but injected resources. this.ServerConfiguration = serverConfigurationResource; this.Protection = protectionResource; this.Authorization = authorizationResource; }
/// <summary>Build up the keycloak server url from the template provided and using the configuration settings.</summary> /// <param name="configuration">The <see cref="IKeycloakConfiguration"/>.</param> /// <param name="template">The template of which '{realm-name}' will be substituted for the configured realm name.</param> /// <returns>A new Uri from the the given template url.</returns> public static Uri BuildUri(IKeycloakConfiguration configuration, string template) { string relativePath = template.Replace(RealmNameMatch, configuration.Realm, StringComparison.InvariantCulture); return(new Uri(configuration.AuthServerUrl !, relativePath)); }