This script builds upon the work of Frando for synchronizing groups from Keycloak to Outline, adapting it to work with Authentik as the identity provider. It sets up a webhook server using Deno to process users.signin
events from Outline, securely validate these requests via HMAC signatures, and automatically synchronize user group memberships between Authentik and Outline.
- Group Synchronization: Automatically updates user group memberships in Outline to match the groups assigned in Authentik.
- Dynamic Group Creation: Creates missing groups in Outline if they exist in Authentik but are not yet present in Outline.
- User Matching: Matches users between Authentik and Outline using their email addresses.
- Secure Webhooks: Uses HMAC signatures to verify the authenticity and integrity of webhook requests.