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 and user display names between Authentik and Outline.
- Group Synchronization: Automatically updates user group memberships in Outline to match the groups assigned in Authentik.
- Name Synchronization: Keeps user display names in Outline in sync with their names 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.