Authentik SSO Konfiguration
Für den produktiven Einsatz empfehlen wir die Integration eines OIDC (OpenID Connect) fähigen Identity Providers wie Authentik. Sn0x RMM unterstützt dies nativ.
Authentik Setup
- Application erstellen: Erstelle in Authentik eine neue "Application" (z.B. Name
Sn0x RMM, Slugsn0x-rmm). - Provider erstellen: Erstelle dazu passend einen "OAuth2/OpenID Provider".
- Client Type:
Confidential - Redirect URIs:
https://rmm.sn0x.de/auth/callback(Ersetze die Domain durch deine RMM Server Domain) - Scopes:
email,openid,profile
- Client Type:
Sn0x RMM Server Backend Konfiguration
Dem Backend-Server (rmm-server) müssen nun die folgenden Umgebungsvariablen (.env) übergeben werden, damit die OIDC-Flows korrekt abgewickelt werden.
env
# Die OIDC Parameter aus deinem Authentik Provider:
OIDC_CLIENT_ID="DjyoK0idk5MLaKg7E5QHj3pl7vrk8VVjLsq4MyBe"
OIDC_CLIENT_SECRET="9UvBPHJUvmf2DfhA5GvVgODz5Eys6cPncggcvt..."
# Die Issuer URL deines Providers (Wichtig: auf den abschließenden Slash achten!)
OIDC_ISSUER_URL="https://auth.sn0x.de/application/o/sn0x-rmm/"
# Die Callback-Route des Frontends:
OIDC_REDIRECT_URI="https://rmm.sn0x.de/auth/callback"Der Login Prozess
Wenn alles konfiguriert ist:
- Im Login-Screen taucht der Button "Authentik SSO" auf.
- Der User authentifiziert sich über deinen Authentik Server.
- Authentik leitet den User auf die konfigurierte
OIDC_REDIRECT_URIzurück. - Das Backend validiert das Login und führt ein Just-in-Time (JIT) Provisioning durch. Das bedeutet, falls der User noch keinen RMM-Account hat, wird dieser vollautomatisch (als Super Admin) in der Postgres Datenbank angelegt.
- Im Audit Log des RMMs erscheint dieses Ereignis als
auth.sso_login.