58 lines
1.3 KiB
Go
58 lines
1.3 KiB
Go
package conf
|
|
|
|
import "sync"
|
|
|
|
type Config struct {
|
|
SourceMode string
|
|
AdminRole string
|
|
PublicKeyPath string
|
|
PrivateKeyPath string
|
|
|
|
LDAPEndpoints string
|
|
LDAPBindDN string
|
|
LDAPBindPW string
|
|
LDAPBaseDN string
|
|
LDAPUserBaseDN string
|
|
LDAPRoleBaseDN string
|
|
|
|
ClientSecret string
|
|
OAuth2ClientSecretName string
|
|
OAuth2ClientSecretNamespace string
|
|
|
|
Auth string
|
|
AuthConnectPublicHost string
|
|
AuthConnectorHost string
|
|
AuthConnectorPort int
|
|
AuthConnectorAdminPort string
|
|
|
|
PermissionConnectorWriteHost string
|
|
PermissionConnectorReadHost string
|
|
PermissionConnectorPort string
|
|
PermissionConnectorAdminPort string
|
|
|
|
AdminOrigin string
|
|
Origin string
|
|
|
|
// OAuth2ClientID is the client_id registered in Hydra, used to initiate the authorization flow.
|
|
OAuth2ClientID string
|
|
// OAuth2AdminClientID is the client_id for the admin frontend.
|
|
OAuth2AdminClientID string
|
|
|
|
// OAuthRedirectURI is the registered OAuth2 redirect_uri (frontend login/callback URL).
|
|
// Hydra redirects here with login_challenge (login phase) or authorization code (callback phase).
|
|
OAuthRedirectURI string
|
|
OAdminAuthRedirectURI string
|
|
|
|
Local bool
|
|
}
|
|
|
|
var instance *Config
|
|
var once sync.Once
|
|
|
|
func GetConfig() *Config {
|
|
once.Do(func() {
|
|
instance = &Config{}
|
|
})
|
|
return instance
|
|
}
|