234 lines
9.7 KiB
YAML
234 lines
9.7 KiB
YAML
###############################################################
|
|
# Authelia configuration #
|
|
###############################################################
|
|
server:
|
|
address: 'tcp://:9091'
|
|
|
|
log:
|
|
level: info
|
|
|
|
# This secret can also be set using the env variables AUTHELIA_JWT_SECRET_FILE
|
|
# I used this site to generate the secret: https://www.grc.com/passwords.htm
|
|
#jwt_secret: SECRET_GOES_HERE # use docker secret file instead AUTHELIA_JWT_SECRET_FILE
|
|
|
|
# https://docs.authelia.com/configuration/miscellaneous.html#default-redirection-url
|
|
default_redirection_url: https://authelia.milvert.com
|
|
|
|
webauthn: #FIDO2 Authentication
|
|
disable: false
|
|
display_name: Authelia
|
|
attestation_conveyance_preference: direct
|
|
user_verification: required
|
|
timeout: 60s
|
|
|
|
totp:
|
|
issuer: authelia.com
|
|
period: 30
|
|
skew: 1
|
|
|
|
# Enable the following for Duo Push Notification support
|
|
# https://www.authelia.com/docs/features/2fa/push-notifications.html
|
|
#duo_api:
|
|
# hostname: api-123456789.example.com
|
|
# integration_key: ABCDEF
|
|
# # This secret can also be set using the env variables AUTHELIA_DUO_API_SECRET_KEY_FILE
|
|
# secret_key: # use docker secret file instead AUTHELIA_DUO_API_SECRET_KEY_FILE
|
|
|
|
authentication_backend:
|
|
file:
|
|
path: /config/users_database.yml
|
|
# customize passwords based on https://docs.authelia.com/configuration/authentication/file.html
|
|
password:
|
|
algorithm: argon2id
|
|
iterations: 1
|
|
salt_length: 16
|
|
parallelism: 8
|
|
memory: 1024 # blocks this much of the RAM. Tune this.
|
|
|
|
# https://docs.authelia.com/configuration/access-control.html
|
|
access_control:
|
|
default_policy: deny
|
|
rules:
|
|
# Rules applied to everyone
|
|
- domain: authelia.milvert.com
|
|
policy: bypass
|
|
# - domain: radarr.example.com
|
|
# policy: bypass
|
|
# subject: "group:admins"
|
|
# resources:
|
|
# - "^/api/.*$"
|
|
# - domain: "*.example.com"
|
|
# policy: one_factor
|
|
- domain: "*.milvert.com"
|
|
policy: two_factor
|
|
- domain: "milvert.com"
|
|
policy: two_factor
|
|
- domain:
|
|
- 'uptime.example.com'
|
|
subject: 'oauth2:client:uptime-kuma'
|
|
policy: 'one_factor'
|
|
|
|
session:
|
|
name: authelia_session
|
|
# This secret can also be set using the env variables AUTHELIA_SESSION_SECRET_FILE
|
|
# Used a different secret, but the same site as jwt_secret above.
|
|
# secret: SECRET_GOES_HERE # use docker secret file instead AUTHELIA_SESSION_SECRET_FILE
|
|
expiration: 3600 # 1 hour
|
|
inactivity: 1800 # 30 min
|
|
domain: milvert.com # Should match whatever your root protected domain is
|
|
|
|
# Optional. Can improve performance on a busy system. If not enabled, session info is stored in memory.
|
|
# redis:
|
|
# host: redis
|
|
# port: 6379
|
|
# This secret can also be set using the env variables AUTHELIA_SESSION_REDIS_PASSWORD_FILE
|
|
# password: authelia
|
|
|
|
regulation:
|
|
max_retries: 3
|
|
find_time: 120
|
|
ban_time: 300
|
|
|
|
storage:
|
|
|
|
# For local storage, uncomment lines below and comment out mysql. https://docs.authelia.com/configuration/storage/sqlite.html
|
|
#local:
|
|
#path: /config/db.sqlite3
|
|
postgres:
|
|
# MySQL allows running multiple authelia instances. Create database and enter details below.
|
|
address: 'tcp://postgres:5432'
|
|
#host: postgres
|
|
#port: 5432
|
|
database: 'authelia'
|
|
username: 'authelia'
|
|
# Password can also be set using a secret: https://docs.authelia.com/configuration/secrets.html
|
|
# password: use docker secret file instead AUTHELIA_STORAGE_MYSQL_PASSWORD_FILE
|
|
|
|
notifier:
|
|
disable_startup_check: false
|
|
#smtp:
|
|
#username: SMTP_USERNAME
|
|
# This secret can also be set using the env variables AUTHELIA_NOTIFIER_SMTP_PASSWORD_FILE
|
|
# password: # use docker secret file instead AUTHELIA_NOTIFIER_SMTP_PASSWORD_FILE
|
|
#host: SMTP_HOST
|
|
#port: 587 #465
|
|
#sender: SENDER_EMAIL
|
|
# For testing purpose, notifications can be sent in a file. Be sure map the volume in docker-compose.
|
|
filesystem:
|
|
filename: /tmp/authelia/notification.txt
|
|
|
|
|
|
identity_providers:
|
|
oidc:
|
|
hmac_secret: 'akVs2Tr510MpfECDciJhpSI6SiHKhdiGefG2wMzPSuUhRlWNB0VNwDTxsFNZrRrw'
|
|
jwks:
|
|
- key_id: 'milvert_authelia_oidc_key'
|
|
algorithm: 'RS256'
|
|
use: 'sig'
|
|
key: |
|
|
-----BEGIN RSA PRIVATE KEY-----
|
|
MIIJKQIBAAKCAgEA1Yxr3WL300u245uZrBOgZtX63IwtFT9NDighnIz/PcFiYbUw
|
|
lsrXi5HBJXuIEbxJDcdSdvPhusx08wizPuEnTLVphOgwQ8Xhab3qKLfmwW8yHGsX
|
|
9+osJNhAzmXJXAMbjgz2Rqd7tuOT2PkyYF707FQBRlYNhcMfi06WVhlo4WFPab95
|
|
seKmj3bSIHlmbPnrL9GqOhAtV018COCbMXM2pu6yQOTkdSltZyg5L1+QkSf2MAUN
|
|
VjjTzWbjI8en9vQfZZjA1h7O0bpR/WOmPv9S+SdmnHE9FewOXux3aljC0qrTHeAh
|
|
GIjq+8fzREN0Xvvqox5ZWwBKmPax4ed448Vm/8U3rZQ02Ftpr97w2inL/MT0UTmS
|
|
wKudIlzmkuejqy0jiZ/aAX6JpE5OLsm1zhJSLJFx/vNxByh1kd2EFon22bUa5ZLF
|
|
buVU1WMkhr1Nc8vTCgnr0Y3XKbB1koGJFwK6lg9L0Tstrt+SY34K2iRtFce/Lt2k
|
|
KFkO+hfx3J8hRg2DcazR9bZTsjsK+OHw9sNaFMrkAf4Rd8Z27yRtSRdZXefgz88G
|
|
1xjqgdZmjupKgRPJzCro4hbvmH6x1L8Q3ZzR5fstP8rui8m9UIsSCwLdzGlc7x7L
|
|
toQckn+EFlZ0kLl1e3nlMDUpOaezx7TXt1OxlJtiX7MmGfhUcY+8k3+JS+0CAwEA
|
|
AQKCAgALpHU5A61JOsaE0DXnmMZU9PORVJ8cmm/kBrIWa+V6g3GOrCczAWoQ9OhX
|
|
181KUj6VXrmTPKag3Ya+vUmwcuwGlZlkIpiHCWHJtw3uHGCbSSmtPPV4ka7Ib3XR
|
|
CuGYf57f9rryjS0EgpHL8YIamPK3c7kCEaz5DvNIUAeIOChsqTaAKG1FEntMNQkt
|
|
thCsfk+hMsgaFEm0icfqX/x2DLb9EORs/02pSZHqXtoHSCmEkG4ungflHIIHn8Vg
|
|
bQEuSI7xpgtVYSabbpILw4QLyTXH2asRemb/K/h4mmHETYSJocCSz2ZehRBym6sa
|
|
nKbaitd2/y+V84Udo8186HbBzEBaNekr8IVDfY1NDi99ZgSUJBS0jDCUb84A6Ucf
|
|
CRDZofvjNKV90x7wlZPz5T8N+lpDSH+ThwU0T1k8aydRA6DL/otFNfOS6vaqBdg3
|
|
Gvpd7SQUT88u1l7rVZwsJ+uGBq9Sx+ScCnjl04jc62hDUy51hR+mOfrWNCJGqfJ9
|
|
YJlaH2bZJuzKAyXAEYjJJuYfYPpTDVZ2glzSM72ytmPZseB6KwDJ8gZFtbdHUi0V
|
|
eol49mOCKwBsaLjUh7rqix2WkO6yjcch17HrvpBEUZw+B0FIOPUdC2iH26lpOk0e
|
|
QiuAPXZXcch00ta9UMBUfr8O8LVznm6L751UdaYnpNbw+2VHrQKCAQEA9soiuZYt
|
|
jJmteohGKe2YOCOfzxirE2XqW8g5RWtWb84pEt+oZLEzrKFL4fvKYCEumfnLIrTe
|
|
E6XrwVNbmRLxhRzPJi2ZgAqImy138BqeY9ygorUDKJP343JMBOKQvxCXF/ZvYYqn
|
|
AXN6xt+1X2nlgBxWUJr7oqp2DJ/X7rBH2xRB8UITPInZCv9gxgRTWe5j8GToZJ2b
|
|
S8VxgETl2IyBRE9H6knRZibD8uZKksLCPFIQdf/dkneiPTVW/PhvLzbASY3jOLJT
|
|
O62xTkeykGEsdgAVYtBYuBrP86ujHHaqO1nGVMAYXVINNukrqXuF3n8XXCCmgFue
|
|
Ibdus2UDct/7qwKCAQEA3YSyEVg8aSiF+cGqv1CpJFzdM169zDNxFooD7b7oj/FX
|
|
oMZMKQ1EGcqWJ8ivseM1OYoc2FlVZF+bem1VNEDcswTEuqI7YnRJcua5vbBMBQP+
|
|
FO0a8rbI3poctY/1hPt/oZ0twX7mBMLzljJ4kQLaC4LLQDlhhP4SriqWoXx6BfFV
|
|
AZEbcNlzyOHGIUdA9ahyVB5isYC3ru6lZltAg+2+zHucLvNZ0H/jVAgjH8qOxoZh
|
|
m6XILdQVdFMhZqmdLWPfFgZGqL/zc3qHrIWWvunawcIEnUZvVkTnCTSfIFvfsErJ
|
|
jlT7hVUxNLQqed/DIsX9bz/Vj0Uj/7IOCcwBFiv+xwKCAQEAgUo4kv3IcyZ3qgAG
|
|
siSVYKPZL0f/KDR2aQsmZeXr7LsW7ZpawBXNupzuAkBFL8NyhJxG/bG/vo9oSWoA
|
|
TNuNyGzlYVz2VAwwsQtLEHEBldOaHGO0eee7MF9K0CxaJJ7uaVFj3Lgk8i+rnNDK
|
|
VmhGIa220pe/SOMA4XBEUfnsSyv7uAcjyM129boA2vydJjosBV74GO4w06tm4Qo3
|
|
WBGUD1Nxm558o4WflntriiOaWrurgAZB8F/YkTSGlBUbOqL2bhJ1fdh+nn9KqnYJ
|
|
aHZgMpmsmo4ITLtPQpsi4uCQInPP4cqZeRppbeEOTMY3xe7TMCKy2AAnggZ1amp7
|
|
Og157QKCAQBvfoyJwlmVrDnSvbGNXbHkhYEoi/UHxJSU/Z6AmWhAmv66A1TuDKlM
|
|
OfVdzNrxtCRj86oVEtGyFZUSB9ms1UDAMhQ6w9ET+ufFF3BBk2yP0bSfH8BCjdGI
|
|
iRUOJYk0B8nztEMFczOfDejAnmKkykSpKonWp4r3/1Gzq+fpG9fnCdL5WOnw4OIw
|
|
J8MrmMuPWdtBj5GpOdo6CA/j9uYAATfZgBXaY82+7b+j2fyj0bYPIjAawVSCDI9H
|
|
31eebpyX7f6o/TuvT/3fD7seEJcRPG9IurjL2FnNmByZO40kIlnyR5IvO4LlVz3P
|
|
Ayel9AQpinHG/uAknm5CEoKSV8XsPPSdAoIBAQDweDT7RGHYHQp0INcQ3JxjrfN3
|
|
PcaeVths+7KA+pAq+id1grv48Yg+bo/vfoA25SSV6UrtWBW8JUUtFcRIH+UFnQ7c
|
|
rZkmI/l6lzdyJ3akzIJRAKvo7JGmT4NqTCjmug0Oo6feTjwuBisGRA7UFB/7gjJa
|
|
v9IhIt51N7Dl+SHK+drYGoErbzurxCOmuE0+GCnZ2qvdafVbk6zh4U2pZ2feOfqu
|
|
mPM3FMJdnSrXYtVWAY7hfSIsF/Ndh+kdkQi/s6TsZHqZ3PLTKWUk5ETwFpTqEXaM
|
|
DsGaWut89Ik9YrcAQVKXez5jVJRsYXeMCznEXed6fLssXgmJT2OlrEgSQhEj
|
|
-----END RSA PRIVATE KEY-----
|
|
enable_client_debug_messages: true
|
|
minimum_parameter_entropy: 8
|
|
enforce_pkce: 'public_clients_only'
|
|
enable_pkce_plain_challenge: false
|
|
enable_jwt_access_token_stateless_introspection: false
|
|
discovery_signed_response_alg: 'none'
|
|
discovery_signed_response_key_id: ''
|
|
require_pushed_authorization_requests: false
|
|
authorization_policies:
|
|
policy_name:
|
|
default_policy: 'one_factor'
|
|
rules:
|
|
- policy: 'deny'
|
|
subject: 'group:services'
|
|
lifespans:
|
|
access_token: '1h'
|
|
authorize_code: '1m'
|
|
id_token: '1h'
|
|
refresh_token: '90m'
|
|
cors:
|
|
endpoints:
|
|
- 'authorization'
|
|
- 'token'
|
|
- 'revocation'
|
|
- 'introspection'
|
|
allowed_origins:
|
|
- 'https://authelia.milvert.com'
|
|
allowed_origins_from_client_redirect_uris: false
|
|
clients:
|
|
- client_id: 'aN0VgMKamGZvleUplkT3W7kvXJmvsWmy4C9Obd6u5XGqL7A9B7CP2xxdSIv4ljIA'
|
|
client_name: 'Grafana'
|
|
client_secret: '$pbkdf2-sha512$310000$X53J.7eRdnYPuVSG6Uc0vw$y/PP9Wt5sHUrovp5hnXcJe6gias2t9h.PYj6iP0cMS1F2pDd98tzamSuoaU2b89vGONWdX0MaLKVs.6MFzCLEg'
|
|
public: false
|
|
authorization_policy: 'one_factor'
|
|
redirect_uris:
|
|
- 'https://data.milvert.com/login/generic_oauth'
|
|
scopes:
|
|
- 'openid'
|
|
- 'profile'
|
|
- 'groups'
|
|
- 'email'
|
|
userinfo_signed_response_alg: 'none'
|
|
- client_id: 'MlMNM1K1vGR3wHBPNsZZ7J66u1cGkMGlzBoZoYJwuc80quRsjrlV9jEZlMLTTGmT'
|
|
client_name: 'Gitea'
|
|
client_secret: '$pbkdf2-sha512$310000$E2hUgSHeRFIhAr5bQsDAFg$1qPDiXvtmvwVhwWb./gie6F2CCI80oQQkXln.xd.q.HNVI00kn1D5esj0faJrJhHgNjV0udqrBD5SdIVD8vXow'
|
|
public: false
|
|
authorization_policy: 'one_factor'
|
|
redirect_uris:
|
|
- 'https://gitea.milvert.com/user/oauth2/Authelia/callback'
|
|
scopes:
|
|
- 'openid'
|
|
- 'email'
|
|
- 'profile'
|
|
userinfo_signed_response_alg: 'none'
|