ansible-base/roles/authelia/cfg.schema.json

450 lines
8.3 KiB
JSON
Raw Normal View History

2025-10-07 15:58:18 +02:00
{
"nullable": false,
"type": "object",
"properties": {
"listen_address": {
"nullable": false,
"type": "string",
"default": "0.0.0.0"
},
2025-10-09 01:24:55 +02:00
"domain": {
2025-10-07 15:58:18 +02:00
"nullable": false,
"type": "string"
},
2025-10-09 01:24:55 +02:00
"session_domain": {
2025-10-07 15:58:18 +02:00
"nullable": false,
2025-10-09 01:24:55 +02:00
"type": "string"
2025-10-07 15:58:18 +02:00
},
"redirect_url": {
"nullable": false,
2025-10-09 01:24:55 +02:00
"type": "string"
2025-10-07 15:58:18 +02:00
},
2025-10-09 01:24:55 +02:00
"jwt_secret": {
2025-10-07 15:58:18 +02:00
"nullable": false,
2025-10-09 01:24:55 +02:00
"type": "string"
2025-10-07 15:58:18 +02:00
},
"session_secret": {
"nullable": false,
"type": "string"
},
"storage_encryption_key": {
"nullable": false,
"type": "string"
},
2025-10-09 01:24:55 +02:00
"users_file_path": {
"nullable": false,
"type": "string",
"default": "/var/authelia/users.yml"
},
"log_file_path": {
"nullable": false,
"type": "string",
"default": "/var/authelia/log.jsonl"
},
2025-10-07 15:58:18 +02:00
"storage": {
"anyOf": [
{
"nullable": false,
"type": "object",
"properties": {
"kind": {
"nullable": false,
"type": "string",
2025-10-09 01:24:55 +02:00
"enum": ["sqlite"],
"default": "sqlite"
2025-10-07 15:58:18 +02:00
},
"data": {
"nullable": false,
"type": "object",
"properties": {
"path": {
"nullable": false,
"type": "string",
"default": "/var/authelia/state.db"
}
},
"additionalProperties": false,
"required": [
2025-10-09 01:24:55 +02:00
"path"
2025-10-07 15:58:18 +02:00
],
"default": {
}
}
},
"additionalProperties": false,
"required": [
2025-10-09 01:24:55 +02:00
"kind",
"data"
],
"default": {
}
2025-10-07 15:58:18 +02:00
},
{
"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": [
2025-10-09 01:24:55 +02:00
"host",
"port",
"username",
"password",
"schema"
],
"default": {
}
2025-10-07 15:58:18 +02:00
}
},
"additionalProperties": false,
"required": [
"kind",
"data"
2025-10-09 01:24:55 +02:00
],
"default": {
}
2025-10-07 15:58:18 +02:00
},
{
"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": [
2025-10-09 01:24:55 +02:00
"host",
"port",
"username",
"password",
"schema"
],
"default": {
}
2025-10-07 15:58:18 +02:00
}
},
"additionalProperties": false,
"required": [
"kind",
"data"
2025-10-09 01:24:55 +02:00
],
"default": {
}
2025-10-07 15:58:18 +02:00
}
]
},
"ntp_server": {
"nullable": false,
"type": "string",
2025-10-09 01:24:55 +02:00
"default": "time.cloudflare.com:123"
2025-10-07 15:58:18 +02:00
},
"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": [
2025-10-09 01:24:55 +02:00
"enabled",
"custom_url"
2025-10-07 15:58:18 +02:00
],
"default": {
}
},
"notification": {
"anyOf": [
{
"nullable": false,
"type": "object",
"properties": {
"kind": {
"nullable": false,
"type": "string",
2025-10-09 01:24:55 +02:00
"enum": ["file"],
"default": "file"
2025-10-07 15:58:18 +02:00
},
"data": {
"nullable": false,
"type": "object",
"properties": {
2025-10-09 01:24:55 +02:00
"path": {
"nullable": false,
"type": "string",
"default": "/var/authelia/notifications"
}
2025-10-07 15:58:18 +02:00
},
"additionalProperties": false,
"required": [
2025-10-09 01:24:55 +02:00
"path"
2025-10-07 15:58:18 +02:00
],
"default": {
}
}
},
"additionalProperties": false,
"required": [
2025-10-09 01:24:55 +02:00
"kind",
"data"
],
"default": {
}
2025-10-07 15:58:18 +02:00
},
{
"nullable": false,
"type": "object",
"properties": {
"kind": {
"nullable": false,
"type": "string",
2025-10-09 01:24:55 +02:00
"enum": ["smtp"],
"default": "smtp"
2025-10-07 15:58:18 +02:00
},
"data": {
"nullable": false,
"type": "object",
"properties": {
"host": {
"nullable": false,
2025-10-09 01:24:55 +02:00
"type": "string"
2025-10-07 15:58:18 +02:00
},
"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": [
2025-10-09 01:24:55 +02:00
"host",
"port",
"username",
"password",
"sender"
2025-10-07 15:58:18 +02:00
]
}
},
"additionalProperties": false,
"required": [
"kind",
"data"
2025-10-09 01:24:55 +02:00
],
"default": {
}
2025-10-07 15:58:18 +02:00
}
]
},
"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": [
2025-10-09 01:24:55 +02:00
"access_token",
2025-10-07 15:58:18 +02:00
"refresh_token"
]
},
"required": [
],
"default": {
2025-10-07 17:17:01 +02:00
"long": {
"access_token": "2d",
"refresh_token": "3d"
}
2025-10-07 15:58:18 +02:00
}
}
},
"additionalProperties": false,
"required": [
],
"default": {
}
},
"cors_endpoints": {
"nullable": true,
"type": "array",
"items": {
"nullable": false,
"type": "string",
"enum": [
"authorization",
"pushed-authorization-request",
"token",
"revocation",
"introspection",
"userinfo"
]
},
2025-10-07 16:04:07 +02:00
"default": [
"authorization",
"token",
"revocation",
"introspection",
"userinfo"
]
2025-10-07 15:58:18 +02:00
}
},
"additionalProperties": false,
"required": [
2025-10-09 01:24:55 +02:00
"hmac_secret",
"lifespan",
"cors_endpoints"
],
"default": {
}
2025-10-07 15:58:18 +02:00
}
},
"additionalProperties": false,
"required": [
2025-10-09 01:24:55 +02:00
"listen_address",
"domain",
"session_domain",
"redirect_url",
2025-10-07 15:58:18 +02:00
"jwt_secret",
"session_secret",
"storage_encryption_key",
2025-10-09 01:24:55 +02:00
"users_file_path",
"log_file_path",
"storage",
"ntp_server",
"notification",
2025-10-07 15:58:18 +02:00
"oidc"
2025-10-09 01:24:55 +02:00
],
"default": {
}
2025-10-07 15:58:18 +02:00
}