Invitér en editor

2. Invitér en editor (eller co-owner)

Inviter-flowet er hjertet af Tenant Owner-rollen. Her er hvordan du tilføjer en ny bruger til din tenant — uanset om de allerede er i jeres Microsoft-tenant eller skal inviteres som ekstern B2B-gæst.

To scenarier

Scenarie A: Personen er allerede i jeres AAD

Fx en kollega der bruger samme jobmail. Du behøver kun at tildele dem en rolle — ingen invitation nødvendig. De kan logge ind på TesseraCMS med deres eksisterende konto.

Scenarie B: Personen er ekstern

Fx en freelancer med Gmail-konto eller en konsulent fra en anden organisation. Du sender en B2B-invitation via Microsoft Graph. De får en mail, accepterer, og bliver guest-user i jeres AAD med rollen du valgte.

Begge scenarier starter på samme måde — TesseraCMS finder selv ud af hvilket der er relevant.

Step-by-step

  1. Gå til /{tenant}/admin/users på din tenant — fx /palle_jacobsen/admin/users

  2. Klik i Søg AAD-brugere-feltet og skriv mindst 2 tegn af navnet eller email-adressen

  3. Efter ~300ms debounce sender TesseraCMS et search-call til Microsoft Graph

  4. To mulige resultater:

    Match fundet → en eller flere brugere vises i dropdown'en. Klik den rigtige.

    • Du ser et bekræftelses-panel: navn, email, object-id, evt. Guest-badge
    • Vælg rolle (Editor eller Owner)
    • Klik Tilføj medlem
    • Done — brugeren har nu adgang

    Ingen match → besked vises: "Ingen match i directory"

    • Hvis dit input ligner en email (navn@domain.dk), vises også en "Send invitation til {email}"-knap
    • Klik den — B2B-invite-flowet starter (fortsættes nedenfor)

B2B-invitation step-by-step

Når du klikker "Send invitation til {email}":

  1. Et invite-form vises:
    • Display name (defaulter til lokal-delen af email, fx nis.simon.jacobsen → "nis.simon.jacobsen")
    • Rolle (Editor eller Owner)
    • Custom message (valgfri) — tekst der vises i invite-mailen
  2. Tilpas display name og rolle
  3. Skriv evt. en custom-besked ("Hej, du er inviteret som editor på vores Palle Jacobsen-site. Bare klik link'et for at acceptere.")
  4. Klik Send invitation

Bag scenen sker dette:

  • Microsoft Graph kalder POST /invitations med email + display name + redirect-URL + custom-besked
  • Microsoft opretter en B2B guest-user i jeres AAD-tenant
  • Microsoft sender en invite-mail fra invites@microsoft.com
  • TesseraCMS skriver en TenantRoles-row med den nye object-id og den valgte rolle
  • Audit-log entry skrives

Brugeren skal stadig acceptere invitationen før de kan logge ind. Indtil de gør det, eksisterer rollen i TenantRoles men kan ikke autenticeres.

Hvad brugeren ser

Invite-mailen kommer fra invites@microsoft.com med subject typisk "You're invited to access TesseraCMS".

  1. Brugeren klikker Get Started eller Accept invitation
  2. Microsoft-acceptflow vises — brugeren accepterer permissions
  3. Hvis det er deres første B2B-invitation til jeres tenant, bliver de bedt om at oprette MFA
  4. Når accept er færdig, redirectes de til den URL du angav (typisk /{tenant}/admin)
  5. Når de lander, er de logget ind med rollen du valgte

Næste gang de skal ind, går de direkte til admin-URL'en og logger ind normalt.

Custom-message — best practices

Den custom-message du skriver vises i mailen som en personalisering. Skriv noget der hjælper modtageren med at forstå:

  • Hvorfor de modtager mailen — fx "Du er blevet inviteret som editor til at hjælpe med at oprette indhold på vores nye website"
  • Hvad de skal gøre næste — fx "Klik knappen for at acceptere — du behøver kun gøre det én gang"
  • Hvem de kan kontakte — fx "Hvis du har spørgsmål, skriv til mig på nis@example.dk"

Undgå generiske beskeder som "Welcome to our platform" — folk er skeptiske over for invite-mails de ikke forventer.

Troubleshooting

Brugeren modtog ikke invitationen

  • Tjek spam-mappen først — Microsoft invite-mails havner ofte i spam, især på Gmail
  • Verificer email-adressen — typos er almindelige; tjek staveform med modtageren
  • Mail-domænet kan blokere Microsoft-mails — sjældent, men nogle stramt-konfigurerede mail-servere afviser @microsoft.com-mails. Kontakt modtagerens IT for at whitelist'e
  • Resend — gå tilbage til /admin/users, find brugeren i medlems-tabellen, klik Fjern, og kør invite-flowet igen

"Already exists"-fejl

Hvis du forsøger at sende invitation til en email der allerede er guest-user, returnerer Graph en fejl. Løsning:

  • Tjek om brugeren allerede findes — søg på email i /admin/users
  • Hvis ja, tildel bare rollen i stedet
  • Hvis nej, bruger Graph muligvis et cached state — vent 5-10 min og prøv igen

Brugeren accepterer men kan ikke logge ind

Mest sandsynlige årsag: B2B-token-propagation tager nogle minutter første gang. Bed dem vente 5-10 min og prøve igen.

Hvis problemet vedvarer, tjek /admin/users for at se om TenantRoles-rowen findes. Hvis ikke, kør invite-flowet igen (rollen kan have fejlet at blive skrevet).

Rolle-valg: Editor vs Owner

  • Editor — sikker default for de fleste. Daglig content-arbejde. Kan ikke fjerne brugere eller ændre site-konfig
  • Owner — kun til andre der skal kunne styre brugere. Det inkluderer dig selv hvis du planlægger ferie og vil have en backup-owner

Anbefaling

  • Mindst 2 owners pr. tenant. Hvis du er den eneste owner og dit lock dig ude (mistede MFA, glemte password), er der ingen der kan hjælpe uden Platform Admin-eskalering
  • Promote til Owner kun når nødvendigt — du kan altid skifte fra Editor til Owner senere uden at slette + invitere igen