2019-04-25 04:52:08 +07:00
|
|
|
package schema
|
|
|
|
|
|
|
|
// Configuration object extracted from YAML configuration file.
|
|
|
|
type Configuration struct {
|
2020-03-03 14:18:25 +07:00
|
|
|
Host string `mapstructure:"host"`
|
|
|
|
Port int `mapstructure:"port"`
|
|
|
|
TLSCert string `mapstructure:"tls_cert"`
|
|
|
|
TLSKey string `mapstructure:"tls_key"`
|
|
|
|
|
2020-01-22 03:56:44 +07:00
|
|
|
LogsLevel string `mapstructure:"logs_level"`
|
2019-12-07 23:40:42 +07:00
|
|
|
|
2020-01-22 03:56:44 +07:00
|
|
|
// This secret is used by the identity validation process to forge JWT tokens
|
|
|
|
// representing the permission to proceed with the operation.
|
|
|
|
JWTSecret string `mapstructure:"jwt_secret"`
|
|
|
|
DefaultRedirectionURL string `mapstructure:"default_redirection_url"`
|
2020-02-06 09:53:02 +07:00
|
|
|
GoogleAnalyticsTrackingID string `mapstructure:"google_analytics"`
|
2019-04-25 04:52:08 +07:00
|
|
|
|
2020-01-22 03:56:44 +07:00
|
|
|
AuthenticationBackend AuthenticationBackendConfiguration `mapstructure:"authentication_backend"`
|
|
|
|
Session SessionConfiguration `mapstructure:"session"`
|
|
|
|
|
2020-02-05 04:18:02 +07:00
|
|
|
TOTP *TOTPConfiguration `mapstructure:"totp"`
|
|
|
|
DuoAPI *DuoAPIConfiguration `mapstructure:"duo_api"`
|
|
|
|
AccessControl AccessControlConfiguration `mapstructure:"access_control"`
|
|
|
|
Regulation *RegulationConfiguration `mapstructure:"regulation"`
|
2020-02-06 09:53:02 +07:00
|
|
|
Storage StorageConfiguration `mapstructure:"storage"`
|
2020-02-05 04:18:02 +07:00
|
|
|
Notifier *NotifierConfiguration `mapstructure:"notifier"`
|
2019-04-25 04:52:08 +07:00
|
|
|
}
|