SV
Alle cases
2025, via partner Off‑centered

Veilige documentatie
voor externe partijen bij Eneve

Antora-documentatiesysteem met Microsoft-identity: single sign-on voor medewerkers, eenmalige codes via Entra External ID voor externe gebruikers, autorisatie via Graph API en SQL-gekoppelde groepen, en een eigen beheerportal.

De opdracht

Eneve wilde documentatie delen met externe partijen zonder dat die partijen accounts in de eigen tenant nodig hebben. De oplossing: een Antora-documentatiesysteem waarin medewerkers inloggen via single sign-on met Entra ID en externen met een eenmalige code via Entra External ID. Rechten worden per groep beheerd vanuit een eigen beheerportal. Ik heb de applicatie gebouwd, de CI/CD ingericht en de tenant-migratie uitgevoerd.

Graph APIAuthenticatie
OTPExterne Users
SQLGroepsbeheer
CI/CDDeployment

Hoe het werkt

Van inloggen tot beheer.

  1. 1
    Auth

    MS Graph API Authenticatie

    Medewerkers loggen in via single sign-on met Entra ID. Externe gebruikers authenticeren via Entra External ID met een eenmalige code (OTP).

  2. 2
    Autorisatie

    SQL-Gekoppelde Groepen

    Role-based access via Graph API groepen gekoppeld aan een SQL database. Gebruikers zien alleen content waar ze rechten voor hebben.

  3. 3
    Beheer

    Custom Admin Portal

    Eigen beheerportal voor gebruikers- en groepsbeheer. Geen Azure-portaal toegang nodig.

  4. 4
    Migratie

    Tenant Migratie

    Tenant migratie uitgevoerd om de applicatie naar de juiste omgeving te verplaatsen.

Resultaat

SSO intern, OTP extern

Medewerkers loggen in met single sign-on via Entra ID. Externe gebruikers krijgen een eenmalige code via Entra External ID, zonder account in de tenant.

Custom Admin Portal

Eigen beheerinterface voor gebruikers- en groepsbeheer zonder Azure-portaal.

SQL + Graph API

Groepen en rechten beheerd via SQL database, gesynchroniseerd met Graph API groepen.

Antora + AsciiDoc

Documentatie in AsciiDoc formaat, gebuild met Antora. Versiebeheer en cross-references.

Techniek

MS Graph APIEntra External IDOTP AuthSQLNode.jsAntoraAsciiDocAzure DevOpsPipelines

Een vergelijkbare opdracht?

In 30 minuten bespreken we je situatie en hoe ik dit zou aanpakken.