{ "nullable": false, "type": "object", "properties": { "listen_address": { "nullable": false, "type": "string", "default": "0.0.0.0" }, "domain": { "nullable": false, "type": "string" }, "session_domain": { "nullable": false, "type": "string" }, "redirect_url": { "nullable": false, "type": "string" }, "jwt_secret": { "nullable": false, "type": "string" }, "session_secret": { "nullable": false, "type": "string" }, "storage_encryption_key": { "nullable": false, "type": "string" }, "users_file_path": { "nullable": false, "type": "string", "default": "/var/authelia/users.yml" }, "log_file_path": { "nullable": false, "type": "string", "default": "/var/authelia/log.jsonl" }, "storage": { "anyOf": [ { "nullable": false, "type": "object", "properties": { "kind": { "nullable": false, "type": "string", "enum": ["sqlite"], "default": "sqlite" }, "data": { "nullable": false, "type": "object", "properties": { "path": { "nullable": false, "type": "string", "default": "/var/authelia/state.db" } }, "additionalProperties": false, "required": [ "path" ], "default": { } } }, "additionalProperties": false, "required": [ "kind", "data" ], "default": { } }, { "nullable": false, "type": "object", "properties": { "kind": { "nullable": false, "type": "string", "enum": ["postgresql"] }, "data": { "nullable": false, "type": "object", "properties": { "host": { "nullable": false, "type": "string", "ddefault": "localhost" }, "port": { "nullable": false, "type": "integer", "default": 5432 }, "username": { "nullable": false, "type": "string", "default": "authelia_user" }, "password": { "nullable": false, "type": "string" }, "schema": { "nullable": false, "type": "string", "default": "authelia" } }, "additionalProperties": false, "required": [ "host", "port", "username", "password", "schema" ], "default": { } } }, "additionalProperties": false, "required": [ "kind", "data" ], "default": { } }, { "nullable": false, "type": "object", "properties": { "kind": { "nullable": false, "type": "string", "enum": ["mariadb"] }, "data": { "nullable": false, "type": "object", "properties": { "host": { "nullable": false, "type": "string", "ddefault": "localhost" }, "port": { "nullable": false, "type": "integer", "default": 3306 }, "username": { "nullable": false, "type": "string", "default": "authelia_user" }, "password": { "nullable": false, "type": "string" }, "schema": { "nullable": false, "type": "string", "default": "authelia" } }, "additionalProperties": false, "required": [ "host", "port", "username", "password", "schema" ], "default": { } } }, "additionalProperties": false, "required": [ "kind", "data" ], "default": { } } ] }, "ntp_server": { "nullable": false, "type": "string", "default": "time.cloudflare.com:123" }, "password_reset": { "nullable": false, "type": "object", "properties": { "enabled": { "nullable": false, "type": "boolean", "default": false }, "custom_url": { "nullable": true, "type": "string", "default": null } }, "additionalProperties": false, "required": [ "enabled", "custom_url" ], "default": { } }, "notification": { "anyOf": [ { "nullable": false, "type": "object", "properties": { "kind": { "nullable": false, "type": "string", "enum": ["file"], "default": "file" }, "data": { "nullable": false, "type": "object", "properties": { "path": { "nullable": false, "type": "string", "default": "/var/authelia/notifications" } }, "additionalProperties": false, "required": [ "path" ], "default": { } } }, "additionalProperties": false, "required": [ "kind", "data" ], "default": { } }, { "nullable": false, "type": "object", "properties": { "kind": { "nullable": false, "type": "string", "enum": ["smtp"], "default": "smtp" }, "data": { "nullable": false, "type": "object", "properties": { "host": { "nullable": false, "type": "string" }, "port": { "nullable": false, "type": "integer", "default": 465 }, "username": { "nullable": false, "type": "string", "default": "authelia" }, "password": { "nullable": false, "type": "string" }, "sender": { "nullable": false, "type": "string", "default": "authelia@example.org" } }, "additionalProperties": false, "required": [ "host", "port", "username", "password", "sender" ] } }, "additionalProperties": false, "required": [ "kind", "data" ], "default": { } } ] }, "oidc": { "nullable": false, "type": "object", "properties": { "hmac_secret": { "nullable": false, "type": "string" }, "lifespan": { "nullable": false, "type": "object", "properties": { "default": { "nullable": false, "type": "object", "properties": { "access_token": { "nullable": false, "type": "string", "default": "1h" }, "refresh_token": { "nullable": false, "type": "string", "default": "1m" } }, "additionalProperties": false, "required": [ ], "default": { } }, "custom": { "nullable": false, "type": "object", "properties": { }, "additionalProperties": { "nullable": false, "type": "object", "properties": { "access_token": { "nullable": false, "type": "string" }, "refresh_token": { "nullable": false, "type": "string" } }, "additionalProperties": false, "required": [ "access_token", "refresh_token" ] }, "required": [ ], "default": { "long": { "access_token": "2d", "refresh_token": "3d" } } } }, "additionalProperties": false, "required": [ ], "default": { } }, "cors_endpoints": { "nullable": true, "type": "array", "items": { "nullable": false, "type": "string", "enum": [ "authorization", "pushed-authorization-request", "token", "revocation", "introspection", "userinfo" ] }, "default": [ "authorization", "token", "revocation", "introspection", "userinfo" ] } }, "additionalProperties": false, "required": [ "hmac_secret", "lifespan", "cors_endpoints" ], "default": { } } }, "additionalProperties": false, "required": [ "listen_address", "domain", "session_domain", "redirect_url", "jwt_secret", "session_secret", "storage_encryption_key", "users_file_path", "log_file_path", "storage", "ntp_server", "notification", "oidc" ], "default": { } }