Opsætningsguides

Opsæt Microsoft Entra ID

Trin-for-trin guide til at oprette en Azure app-registrering, konfigurere Entra-sikkerhedsgrupper og tilslutte Ressourcify til Microsoft SSO.

Opsæt Microsoft Entra ID

Denne guide fører dig fra en tom Azure-konfiguration til fuldt fungerende Microsoft SSO med rollebaseret adgang i Ressourcify. Guiden dækker alt — app-registrering, grupper, token-konfiguration og verificering.

Forudsætninger

Inden du går i gang, skal du have:

  • Azure-adgang — rollen Application Administrator, Cloud Application Administrator eller Global Administrator i Microsoft Entra ID
  • Ressourcify-adgangORG_ADMIN-rollen i Ressourcify (eller adgang til miljøvariabler på serveren)
  • Produktions-URL — det domæne Ressourcify kører på, f.eks. https://app.ressourcify.dk

Overblik

Ressourcify bruger groups-claim i Microsoft's JWT-token til at kortlægge Entra-sikkerhedsgrupper til roller. Der foretages ingen Graph API-kald ved login — alt sker via tokenet.

Bruger klikker "Log ind med Microsoft"
  └─▶ Microsoft Entra ID validerer brugeren
        └─▶ Token udstedes med groups-claim (gruppe-ID'er)
              └─▶ NextAuth modtager token
                    └─▶ Ressourcify mapper gruppe-ID'er til roller
                          └─▶ Bruger lander på dashboard med korrekt rolle

Opsætning

Opret app-registrering

  1. Gå til portal.azure.com og log ind
  2. Søg efter Microsoft Entra ID i den øverste søgelinje og vælg det
  3. Klik på App registrations i venstre navigation
  4. Klik + New registration
  5. Udfyld formularen:
    • Name: Ressourcify (eller dit foretrukne navn — vises for brugerne ved login)
    • Supported account types: Vælg Accounts in this organizational directory only
    • Redirect URI: Vælg type Web og indtast:
      https://[dit-domæne]/api/auth/callback/microsoft-entra-id
  6. Klik Register

Lokal udvikling? Tilføj http://localhost:3000/api/auth/callback/microsoft-entra-id som ekstra redirect URI. Det gøres under Authentication → Add URI efter registreringen er oprettet.

Notér Tenant ID og Client ID

Straks efter registreringen åbnes Overview-siden. Kopiér og gem:

FeltPlacering på Overview-siden
Application (client) IDVises direkte under appens navn
Directory (tenant) IDVises direkte under client ID

Forveksle ikke client ID med object ID — de vises begge på Overview-siden. Det er Application (client) ID du skal bruge.

Opret Client Secret

  1. Vælg Certificates & secrets i venstre navigation
  2. Klik + New client secret
  3. Udfyld:
    • Description: Ressourcify prod
    • Expires: Vælg 12 months (anbefalet)
  4. Klik Add
  5. Kopiér værdien i kolonnen Value umiddelbart

Kopiér Secret Value med det samme. Når du navigerer væk fra siden, skjules værdien permanent. Gem den i en password manager eller Azure Key Vault — hvis du mister den, skal du oprette en ny secret.

Der er to kolonner: Value og Secret ID. Det er Value du skal kopiere.

Konfigurér API-tilladelser

  1. Vælg API permissions i venstre navigation
  2. Bekræft at følgende tilladelser er til stede. Tilføj manglende via + Add a permission → Microsoft Graph → Delegated permissions:
PermissionTypeAdmin consent krævet
openidDelegatedNej
profileDelegatedNej
emailDelegatedNej
User.ReadDelegatedNej
  1. Bekræft at statuskolonnen viser grønt flueben (Granted for [organisation])

Du behøver ikke GroupMember.Read.All. Gruppemedlemskab leveres via groups-claim i tokenet — Ressourcify kalder ikke Graph API ved login.

Aktiver groups-claim i token

Dette trin er afgørende: uden groups-claim kan Ressourcify ikke se gruppemedlemskab og dermed ikke tildele roller.

  1. Vælg Token configuration i venstre navigation
  2. Klik + Add groups claim
  3. Vælg Security groups
  4. Sæt flueben ved:
    • ID token
    • Access token
  5. Klik Add

Over 150 Entra-grupper i organisationen? Azure inkluderer da ikke alle gruppe-ID'er direkte i tokenet. Kontakt support@ressourcify.dk hvis du oplever login-problemer med mange grupper.

Opret Entra-sikkerhedsgrupper

Ressourcify bruger op til fire sikkerhedsgrupper til adgangskontrol. Opret dem i Microsoft Entra ID.

For hver gruppe:

  1. Gå til Microsoft Entra ID → Groups → + New group
  2. Vælg Group type: Security, angiv navn, klik Create

Opret disse fire grupper:

Anbefalet gruppenavnFunktion i RessourcifyObligatorisk?
Ressourcify - UsersAdgangsport — kun medlemmer kan logge indAnbefalet stærkt
Ressourcify - Org AdminsTildeler rollen ORG_ADMINHvis du vil bruge Org Admin-rollen
Ressourcify - Dept AdminsTildeler rollen DEPT_ADMINHvis du vil bruge Dept Admin-rollen
Ressourcify - CoordinatorsTildeler rollen COORDINATORHvis du vil bruge Coordinator-rollen

Gruppenavnene er ikke teknisk bindende — du kan frit vælge dine egne. Det er Object ID'erne der konfigureres i Ressourcify.

Adgangsport-logik: Hvis du konfigurerer gruppe-ID'et for Ressourcify - Users, kan udelukkende medlemmer af den gruppe logge ind. Tilføj dig selv til gruppen inden du tester.

Tilføj brugere til grupper

For hver gruppe:

  1. Klik på gruppen i Groups-oversigten
  2. Vælg Members → + Add members
  3. Søg og tilføj de relevante brugere
BrugertypeGrupper de skal være i
Alle medarbejdere med adgangRessourcify - Users
OrganisationsadministratorerRessourcify - Users + Ressourcify - Org Admins
AfdelingsadministratorerRessourcify - Users + Ressourcify - Dept Admins
KoordinatorerRessourcify - Users + Ressourcify - Coordinators
Øvrige medarbejdere (RESOURCE)Ressourcify - Users

En bruger kan sagtens være i flere grupper og får rollerne fra alle. Alle der logger ind får desuden baseline-rollen RESOURCE automatisk.

Kopiér gruppe-ID'er

For hver af de fire grupper:

  1. Klik på gruppen i Groups-oversigten
  2. Gå til Overview
  3. Kopiér Object Id (UUID-format: xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx)

Hold de fire ID'er klar til næste trin.

Gem konfiguration i Ressourcify

  1. Log ind i Ressourcify med en ORG_ADMIN-bruger
  2. Gå til Indstillinger → Integrationer → Microsoft Entra ID
  3. Udfyld felterne:
Felt i RessourcifyTilsvarende Azure-værdi
Tenant IDDirectory (tenant) ID fra trin 2
Client IDApplication (client) ID fra trin 2
Client SecretSecret Value fra trin 3
Gruppe: Org AdminsObject ID for Ressourcify - Org Admins
Gruppe: Dept AdminsObject ID for Ressourcify - Dept Admins
Gruppe: CoordinatorsObject ID for Ressourcify - Coordinators
Gruppe: Users (adgangsport)Object ID for Ressourcify - Users
  1. Klik Gem

Test login

  1. Åbn en privat/inkognito-fane og gå til Ressourcify
  2. Du bør se knappen "Log ind med Microsoft"
  3. Log ind med en konto der er medlem af Ressourcify - Users
  4. Microsoft viser muligvis en samtykkedialog første gang — klik Acceptér
  5. Du bør lande på dashboardet

Verificér rollen:

  • Gå til Indstillinger → Min profil og bekræft at rollen er korrekt
  • Log ind med en ORG_ADMIN-konto og bekræft at administrationsfunktioner er tilgængelige

Roller opdateres kun ved login. Ændrer du gruppemedlemskab i Azure, skal brugeren logge ud og ind igen i Ressourcify.


Fejlfinding

SymptomSandsynlig årsagLøsning
Ingen "Log ind med Microsoft"-knapEntra-konfiguration ikke gemt eller aktivGå til Indstillinger → Integrationer → Microsoft Entra ID og verificér felterne
invalid_client ved loginForkert Client ID eller Secret ValueDobbelttjek du brugte Application (client) ID og Secret Value (ikke Secret ID)
AADSTS700016Ukendt app-registreringKopiér Directory (tenant) ID direkte fra Azure Overview
AADSTS50011Redirect URI matcher ikkeGå til Azure → Authentication og verificér URI svarer nøjagtigt til din app-adresse
Login lykkes men bruger afvisesBrugeren er ikke i Ressourcify - UsersTilføj brugeren til gruppen i Azure
Login virker men forkert rolleGroups-claim ikke aktiveret eller forkert gruppeVerificér Token configuration → groups claim er sat til Security groups
Roller opdateres ikkeRoller synkroniseres kun ved loginBed brugeren logge ud og ind igen
Client Secret udløbetSecret overskredet udløbsdatoenOpret ny secret i Azure, opdatér i Ressourcify-Indstillinger, genstart app'en

Næste skridt