authgear.secrets.yaml
The secret configuration authgear.secrets.yaml
JSON Schema
{
"$defs": {
"AdminAPIAuthKey": {
"$ref": "#/$defs/JWS"
},
"AnalyticRedisCredentials": {
"additionalProperties": false,
"properties": {
"redis_url": {
"type": "string"
}
},
"required": [
"redis_url"
],
"type": "object"
},
"AuditDatabaseCredentials": {
"additionalProperties": false,
"properties": {
"database_schema": {
"type": "string"
},
"database_url": {
"type": "string"
}
},
"required": [
"database_url"
],
"type": "object"
},
"CSRFKeyMaterials": {
"$ref": "#/$defs/JWS"
},
"DatabaseCredentials": {
"additionalProperties": false,
"properties": {
"database_schema": {
"type": "string"
},
"database_url": {
"type": "string"
}
},
"required": [
"database_url"
],
"type": "object"
},
"ElasticsearchCredentials": {
"additionalProperties": false,
"properties": {
"elasticsearch_url": {
"type": "string"
}
},
"required": [
"elasticsearch_url"
],
"type": "object"
},
"ImagesKeyMaterials": {
"$ref": "#/$defs/JWS"
},
"JWK": {
"properties": {
"kid": {
"type": "string"
},
"kty": {
"type": "string"
}
},
"required": [
"kid",
"kty"
],
"type": "object"
},
"JWS": {
"additionalProperties": false,
"properties": {
"keys": {
"items": {
"$ref": "#/$defs/JWK"
},
"minItems": 1,
"type": "array"
}
},
"required": [
"keys"
],
"type": "object"
},
"NexmoCredentials": {
"additionalProperties": false,
"properties": {
"api_key": {
"type": "string"
},
"api_secret": {
"type": "string"
}
},
"required": [
"api_key",
"api_secret"
],
"type": "object"
},
"OAuthClientCredentials": {
"additionalProperties": false,
"properties": {
"items": {
"items": {
"additionalProperties": false,
"properties": {
"alias": {
"type": "string"
},
"client_secret": {
"type": "string"
}
},
"required": [
"alias",
"client_secret"
],
"type": "object"
},
"type": "array"
}
},
"required": [
"items"
],
"type": "object"
},
"OAuthKeyMaterials": {
"$ref": "#/$defs/JWS"
},
"RedisCredentials": {
"additionalProperties": false,
"properties": {
"redis_url": {
"type": "string"
}
},
"required": [
"redis_url"
],
"type": "object"
},
"SMTPMode": {
"enum": [
"normal",
"ssl"
],
"type": "string"
},
"SMTPServerCredentials": {
"additionalProperties": false,
"properties": {
"host": {
"type": "string"
},
"mode": {
"$ref": "#/$defs/SMTPMode"
},
"password": {
"type": "string"
},
"port": {
"maximum": 65535,
"minimum": 1,
"type": "integer"
},
"username": {
"type": "string"
}
},
"required": [
"host",
"port",
"username",
"password"
],
"type": "object"
},
"SecretConfig": {
"additionalProperties": false,
"properties": {
"secrets": {
"items": {
"$ref": "#/$defs/SecretItem"
},
"type": "array"
}
},
"required": [
"secrets"
],
"type": "object"
},
"SecretItem": {
"additionalProperties": false,
"allOf": [
{
"if": {
"properties": {
"key": {
"const": "admin-api.auth"
}
}
},
"then": {
"properties": {
"data": {
"$ref": "#/$defs/AdminAPIAuthKey"
}
}
}
},
{
"if": {
"properties": {
"key": {
"const": "analytic.redis"
}
}
},
"then": {
"properties": {
"data": {
"$ref": "#/$defs/AnalyticRedisCredentials"
}
}
}
},
{
"if": {
"properties": {
"key": {
"const": "audit.db"
}
}
},
"then": {
"properties": {
"data": {
"$ref": "#/$defs/AuditDatabaseCredentials"
}
}
}
},
{
"if": {
"properties": {
"key": {
"const": "csrf"
}
}
},
"then": {
"properties": {
"data": {
"$ref": "#/$defs/CSRFKeyMaterials"
}
}
}
},
{
"if": {
"properties": {
"key": {
"const": "db"
}
}
},
"then": {
"properties": {
"data": {
"$ref": "#/$defs/DatabaseCredentials"
}
}
}
},
{
"if": {
"properties": {
"key": {
"const": "elasticsearch"
}
}
},
"then": {
"properties": {
"data": {
"$ref": "#/$defs/ElasticsearchCredentials"
}
}
}
},
{
"if": {
"properties": {
"key": {
"const": "images"
}
}
},
"then": {
"properties": {
"data": {
"$ref": "#/$defs/ImagesKeyMaterials"
}
}
}
},
{
"if": {
"properties": {
"key": {
"const": "mail.smtp"
}
}
},
"then": {
"properties": {
"data": {
"$ref": "#/$defs/SMTPServerCredentials"
}
}
}
},
{
"if": {
"properties": {
"key": {
"const": "oauth"
}
}
},
"then": {
"properties": {
"data": {
"$ref": "#/$defs/OAuthKeyMaterials"
}
}
}
},
{
"if": {
"properties": {
"key": {
"const": "redis"
}
}
},
"then": {
"properties": {
"data": {
"$ref": "#/$defs/RedisCredentials"
}
}
}
},
{
"if": {
"properties": {
"key": {
"const": "sms.nexmo"
}
}
},
"then": {
"properties": {
"data": {
"$ref": "#/$defs/NexmoCredentials"
}
}
}
},
{
"if": {
"properties": {
"key": {
"const": "sms.twilio"
}
}
},
"then": {
"properties": {
"data": {
"$ref": "#/$defs/TwilioCredentials"
}
}
}
},
{
"if": {
"properties": {
"key": {
"const": "sso.oauth.client"
}
}
},
"then": {
"properties": {
"data": {
"$ref": "#/$defs/OAuthClientCredentials"
}
}
}
},
{
"if": {
"properties": {
"key": {
"const": "webhook"
}
}
},
"then": {
"properties": {
"data": {
"$ref": "#/$defs/WebhookKeyMaterials"
}
}
}
}
],
"properties": {
"data": {},
"key": {
"$ref": "#/$defs/SecretKey"
}
},
"required": [
"key",
"data"
],
"type": "object"
},
"SecretKey": {
"enum": [
"admin-api.auth",
"analytic.redis",
"audit.db",
"csrf",
"db",
"elasticsearch",
"images",
"mail.smtp",
"oauth",
"redis",
"sms.nexmo",
"sms.twilio",
"sso.oauth.client",
"webhook"
],
"type": "string"
},
"TwilioCredentials": {
"additionalProperties": false,
"properties": {
"account_sid": {
"type": "string"
},
"auth_token": {
"type": "string"
}
},
"required": [
"account_sid",
"auth_token"
],
"type": "object"
},
"WebhookKeyMaterials": {
"$ref": "#/$defs/JWS"
}
},
"$ref": "#/$defs/SecretConfig"
}Structure
admin-api.auth
db
audit.db
redis
analytic.redis
elasticsearch
sso.oauth.client
mail.smtp
sms.twilio
sms.nexmo
jwt
oidc
csrf
webhook
Last updated