authelia/internal/configuration/schema/storage.go

34 lines
1.1 KiB
Go
Raw Normal View History

package schema
// LocalStorageConfiguration represents the configuration when using local storage.
type LocalStorageConfiguration struct {
Path string `koanf:"path"`
}
// SQLStorageConfiguration represents the configuration of the SQL database.
type SQLStorageConfiguration struct {
Host string `koanf:"host"`
Port int `koanf:"port"`
Database string `koanf:"database"`
Username string `koanf:"username"`
Password string `koanf:"password"`
}
// MySQLStorageConfiguration represents the configuration of a MySQL database.
2019-11-17 02:50:58 +07:00
type MySQLStorageConfiguration struct {
SQLStorageConfiguration `koanf:",squash"`
2019-11-17 02:50:58 +07:00
}
// PostgreSQLStorageConfiguration represents the configuration of a Postgres database.
2019-11-17 02:50:58 +07:00
type PostgreSQLStorageConfiguration struct {
SQLStorageConfiguration `koanf:",squash"`
SSLMode string `koanf:"sslmode"`
2019-11-17 02:50:58 +07:00
}
// StorageConfiguration represents the configuration of the storage backend.
type StorageConfiguration struct {
Local *LocalStorageConfiguration `koanf:"local"`
MySQL *MySQLStorageConfiguration `koanf:"mysql"`
PostgreSQL *PostgreSQLStorageConfiguration `koanf:"postgres"`
}