From 79736197cdf66e5dcb5d9fdd574ea51014da7712 Mon Sep 17 00:00:00 2001 From: Bethuel Date: Mon, 29 May 2023 17:01:04 +0300 Subject: [PATCH] Read config from generic configs (#909) --- management/server/idp/idp.go | 48 ++++++++++++++---------------------- 1 file changed, 19 insertions(+), 29 deletions(-) diff --git a/management/server/idp/idp.go b/management/server/idp/idp.go index 03f4cb5cc..95c579b94 100644 --- a/management/server/idp/idp.go +++ b/management/server/idp/idp.go @@ -33,15 +33,13 @@ type ExtraConfig map[string]string // Config an idp configuration struct to be loaded from management server's config file type Config struct { - ManagerType string - ClientConfig *ClientConfig - ExtraConfig ExtraConfig - Auth0ClientCredentials Auth0ClientConfig - AzureClientCredentials AzureClientConfig - KeycloakClientCredentials KeycloakClientConfig - ZitadelClientCredentials ZitadelClientConfig - AuthentikClientCredentials AuthentikClientConfig - OktaClientCredentials OktaClientConfig + ManagerType string + ClientConfig *ClientConfig + ExtraConfig ExtraConfig + Auth0ClientCredentials Auth0ClientConfig + AzureClientCredentials AzureClientConfig + KeycloakClientCredentials KeycloakClientConfig + ZitadelClientCredentials ZitadelClientConfig } // ManagerCredentials interface that authenticates using the credential of each type of idp @@ -143,30 +141,22 @@ func NewManager(config Config, appMetrics telemetry.AppMetrics) (Manager, error) return NewZitadelManager(zitadelClientConfig, appMetrics) case "authentik": - authentikConfig := config.AuthentikClientCredentials - if config.ClientConfig != nil { - authentikConfig = AuthentikClientConfig{ - Issuer: config.ClientConfig.Issuer, - ClientID: config.ClientConfig.ClientID, - TokenEndpoint: config.ClientConfig.TokenEndpoint, - GrantType: config.ClientConfig.GrantType, - Username: config.ExtraConfig["Username"], - Password: config.ExtraConfig["Password"], - } + authentikConfig := AuthentikClientConfig{ + Issuer: config.ClientConfig.Issuer, + ClientID: config.ClientConfig.ClientID, + TokenEndpoint: config.ClientConfig.TokenEndpoint, + GrantType: config.ClientConfig.GrantType, + Username: config.ExtraConfig["Username"], + Password: config.ExtraConfig["Password"], } - return NewAuthentikManager(authentikConfig, appMetrics) case "okta": - oktaClientConfig := config.OktaClientCredentials - if config.ClientConfig != nil { - oktaClientConfig = OktaClientConfig{ - Issuer: config.ClientConfig.Issuer, - TokenEndpoint: config.ClientConfig.TokenEndpoint, - GrantType: config.ClientConfig.GrantType, - APIToken: config.ExtraConfig["APIToken"], - } + oktaClientConfig := OktaClientConfig{ + Issuer: config.ClientConfig.Issuer, + TokenEndpoint: config.ClientConfig.TokenEndpoint, + GrantType: config.ClientConfig.GrantType, + APIToken: config.ExtraConfig["APIToken"], } - return NewOktaManager(oktaClientConfig, appMetrics) default: