← FAQ
FAQ

Organisaties, Entra en werkplekregistratie

FAQ › Profielserver › Organisaties · English

Wat is het?

Een organisatie op de profielserver bundelt alles wat bij een bedrijf hoort:

  • haar Microsoft Entra-tenant-id en haar toegestane e-maildomeinen, zodat medewerkers op een EUZOS-pc kunnen inloggen met hun Microsoft-werkaccount (er wordt just-in-time een EUZOS-account voor ze gemaakt);
  • haar beheerders (org-admin), die de werkplekservers van het bedrijf vanaf een EUZOS-pc met Server Admin mogen beheren;
  • haar geregistreerde EUZOS-pc's (apparaatsleutels, pc-register);
  • haar werkplekservers (EUZOS Server met het pakket Werkplekbeheer), geregistreerd vanuit het serverinstallatieprogramma of met de CLI;
  • optioneel haar eigen beleid voor offline inloggen (offline-policy @domein …).

Organisaties worden beheerd met de CLI (in de code heeft de beheerpagina geen pagina voor organisaties).

Hoe doe ik…?

Hoe richt ik een organisatie in voor inloggen met Microsoft?

euzos-profielserver org-create "Bedrijf BV"
euzos-profielserver org-tenant "Bedrijf BV" <tenant-id (GUID)>
euzos-profielserver org-domain "Bedrijf BV" bedrijf.example
euzos-profielserver orgs

Een tenant en een domein horen elk bij hoogstens één organisatie. De server heeft ook entra_client_id nodig (de client-id van de EUZOS-app in Entra); zonder geeft /api/pc/entra 404. De beheerder van de klant geeft één keer beheerderstoestemming voor de app.

Wat gebeurt er als een medewerker voor het eerst met Microsoft inlogt?

De server controleert het ID-token (RS256 met de sleutels van Microsoft, iss, aud = entra_client_id, tid/oid, tijden, eenmalig gebruik). De tid moet bij een organisatie horen en het adres (preferred_username, anders email) moet een van haar domeinen hebben. Dan wordt (tid, oid) gekoppeld aan een bestaand account met dat adres, of er wordt een nieuw account gemaakt: actief, alleen een zakelijk profiel, zonder wachtwoord. Gasten met een ander domein komen er niet in.

Hoe werkt offboarding?

Bij de statusvraag van een pc die met Microsoft is ingelogd, ververst de server op de achtergrond het Microsoft-refreshtoken van de gebruiker uit de kluis, hoogstens één keer per entra_check_s (standaard 900 s) per account:

Microsoft zegtEUZOS doet
account uitgeschakeld of verwijderd (AADSTS50057, AADSTS50034)account geblokkeerd (by_entra): pc's afgemeld, telefoons ingetrokken, kluis leeg
andere invalid_grant (sessies ingetrokken, wachtwoord gereset, toestemming ingetrokken)alle pc's van het account afgemeld, refreshtoken verwijderd; het account blijft
interaction_required / nieuwe MFAniets
account weer ingeschakeldde volgende geslaagde Microsoft-login maakt een door Entra geblokkeerd account weer actief

Een medewerker die in Entra opnieuw is aangemaakt (nieuwe oid, hetzelfde adres), wordt geweigerd (reden=account); wis eerst het oude EUZOS-account (user-delete).

Hoe maak ik iemand beheerder van een organisatie?

org-admin <org> <email> (weghalen met --off). Een beheerder van een organisatie mag de werkplekservers van die organisatie beheren; een serverbeheerder (rol beheerder, zie Beheerpagina) die van elke organisatie.

Hoe registreer ik een EUZOS-pc zodat hij Server Admin mag draaien?

Op de pc: pckey create, daarna toont pckey de publieke sleutel en de vingerafdruk. Op de profielserver: pc-register '<naam>' <sleutel> <org> (vergelijk de getoonde vingerafdruk); tonen met pcs, intrekken met pc-revoke <sleutel>.

Hoe registreer ik een werkplekserver?

Normaal doet het serverinstallatieprogramma van EUZOS Server dat: de beheerder logt in bij de stap Account van het installatieprogramma, en dat stuurt POST /api/workplace/v1/register?token=<pc-token> met de publieke sleutel en de naam van de server. Alleen een beheerder (beheerder van de organisatie, of serverbeheerder die de organisatie noemt) mag dit. Met de hand op de VPS: workplace-register <naam> <sleutel> [--network <ip>[,<ip>]], daarna workplace-org <id> <organisatie>.

Hoe trek ik een werkplekserver in of beperk ik waar pc's hem zien?

workplace-revoke <id>. workplace-network <id> <ip>[,<ip>]|auto bepaalt voor welke (publieke) netwerken de catalogus de werkplekserver noemt (auto: het publieke adres van zijn laatste aanmelding).

Details

Tabellen (schema 13, 15, 16; Engelse namen sinds schema 18): organizations, org_domains, entra_links (tenant, oid → account, by_entra), org_admins, pc_keys (apparaatsleutel, naam, organisatie, ingetrokken), workplaces (id, naam, sleutel, netwerken, lan, tls, publiek adres, laatste aanmelding, intrekking, organisatie, installed_by, installed, external). Vóór schema 18 heetten ze organisaties, org_domeinen, entra_koppelingen, org_beheerders, pc_sleutels, werkplekken.

Aanmelden van een werkplekserver: de werkplekserver haalt een uitdaging op (POST /api/workplace/v1/challenge, 60 s, eenmalig), ondertekent het document EUZOS-werkplek-aanmelden-v1 met zijn Ed25519-sleutel en krijgt een werkplektoken eze_… (1 uur, alleen als SHA-256 in het geheugen), de servertijd en de regel met de downloadsleutel. Hij meldt zich elke 30 minuten opnieuw aan. De server bewaart zijn LAN-adres, TLS-pin, publieke IP en de tijd; zo kan de appcatalogus pc's op hetzelfde netwerk naar hem verwijzen (zie Apps en downloads).

Beheerbewijs voor Server Admin: als een beheerder Server Admin draait op een geregistreerde pc, vraagt de kernel POST /api/workplace/v1/admin-proof?token=<pc-token> (werkplek=, pcsleutel=). De server controleert: de pc is geregistreerd en niet ingetrokken; de gebruiker is serverbeheerder of beheerder van de organisatie; werkplek, pc en beheerder horen bij dezelfde organisatie. Hij antwoordt met een beheerbewijs, ondertekend met de ondertekensleutel van de omgeving (10 minuten), plus het LAN-adres en de TLS-pin van de werkplekserver. De werkplekserver controleert het bewijs zelf, en de opdracht met de pc-sleutel (TCP-poort 8446 aan de kant van de werkplek; zie de pagina's over EUZOS Server in deze FAQ).

Limieten bij registreren: 10 per minuut per netwerk, 10 per uur per account (workplace_registration::PER_NET, PER_ACCOUNT); het externe adres is hoogstens 253 tekens.

Naslag

CLI-opdrachten

OpdrachtArgumentenWat het doet
org-create<naam>een organisatie maken
org-tenant<naam> <tenant-id> | --deletede Entra-tenant-id zetten of weghalen
org-domain<naam> <domein> [--delete]een toegestaan domein toevoegen of weghalen
orgs—alle organisaties met tenant, domeinen en aantal accounts
org-admin<org> <email> [--off]beheerder van een organisatie maken (of niet meer)
pc-register<naam> <sleutel> <org>de apparaatsleutel van een EUZOS-pc registreren
pcs—geregistreerde pc's
pc-revoke<sleutel>een pc-sleutel intrekken
workplace-register<naam> <sleutel> [--network <ip>[,<ip>]]een werkplekserver registreren
workplaces—werkplekservers en hun toestand
workplace-revoke<id>een werkplekserver intrekken
workplace-network<id> <ip>[,<ip>]|autonetwerken waarvoor de catalogus hem noemt
workplace-org<id> <organisatie>|geenzijn organisatie
offline-policy@domein <0..30>dagen offline inloggen voor het domein van de organisatie

Oude namen: org-maak, org-domein, --wis, org-beheerder, --uit, pc-registreer, pc-intrek, werkplek-registreer, werkplekken, werkplek-intrek, werkplek-netwerk, werkplek-org, --netwerk.

Functies en modules

Functie / moduleRol
euzos_profileserver::org (cli, USAGE)organisaties, domeinen, Entra-koppelingen
euzos_profileserver::entra::loginPOST /api/pc/entra, controle van het ID-token, just-in-time accounts, offboarding-controle
euzos_profileserver::workplace (challenge, sign_in, download_token, cli)aanmelden van een werkplekserver en de bijbehorende CLI
euzos_profileserver::workplace_registration::registerregistreren vanuit het serverinstallatieprogramma
euzos_profileserver::workplace_admin (proof, list, may_server_admin, cli)beheerbewijzen, de lijst voor Server Admin, pc-sleutels, beheerders van organisaties
libs/workplace (euzos_workplace)gedeelde code met de werkplekserver (ondertekende documenten, admin::Proof, role::fingerprint)

Configuratiebestanden

Sleutel (serverconfiguratie)Betekenis
entra_client_idclient-id van de EUZOS-app in Entra (geen geheim); zonder staat inloggen met Microsoft uit
entra_check_s (oud entra_controle_s)interval van de offboarding-controle per account, standaard 900 s, minimaal 60

Op de pc: \EOS\FW\MSAPP.TXT (client-id en tenant common) zet de knop "Inloggen met Microsoft" aan; \EOS\FW\PCKEY.TXT bevat de seed van de apparaatsleutel van de pc (het installatieprogramma kopieert hem nooit).

API-eindpunten

MethodePadOud Nederlands padDoel
POST/api/pc/entra—inloggen met Microsoft (zie Pc-login)
POST/api/workplace/v1/challenge/api/werkplek/v1/uitdaginguitdaging voor een werkplekserver
POST/api/workplace/v1/sign-in/api/werkplek/v1/aanmeldenaanmelden van een werkplekserver
POST/api/workplace/v1/download-token?token=eze_…/api/werkplek/v1/downloadtokendownloadtoken voor de cache van de werkplek
POST/api/workplace/v1/admin-proof?token=<pc-token>/api/werkplek/v1/beheerbewijsbeheerbewijs voor Server Admin
GET/api/workplace/v1/admin-list?token=<pc-token>/api/werkplek/v1/beheerlijstwerkplekservers die deze gebruiker mag beheren
POST/api/workplace/v1/register?token=<pc-token>/api/werkplek/v1/registreereen werkplekserver registreren (installatieprogramma)

Protocolberichten en formaten

Registreren (regels in de inhoud):

sleutel=<64 hex>        publieke Ed25519-sleutel van de werkplekserver
naam=<naam>
organisatie=<id>        alleen nodig bij meer dan één organisatie
extern=<adres>          optioneel: publiek IP of DNS-naam (achter NAT)
→ ok / werkplek=<id> / organisatie=<id> / organisatie_naam=<naam>
→ 401 token | 403 geen_beheerder | 409 kies_organisatie (+ regels organisatie=<id>\t<naam>)
  | 409 al_geregistreerd | 400 ongeldig | 429 te_vaak

Aanmelddocument van de werkplek (Ed25519 met de werkplek-sleutel over EUZOS-werkplek-aanmelden-v1\0 en alles tot de \n vóór handtekening=):

EUZOS-werkplek-aanmelden-v1
omgeving=<omgeving>
server=<domein>
sleutel=<64 hex>
uitdaging=<32 hex>
tijd=<Unix-tijd>
lan=https://<lan-adres>:8445/
tls=<SHA-256 van de SPKI, 64 hex>
naam=<naam uit WORKPLC.TXT (name=, oud naam=)>
handtekening=<128 hex>
→ ok / werkplek=<16 hex> / token=eze_<64 hex> / verloopt= / servertijd= / downloadsleutel=<kid> <64 hex>

Beheerbewijs (ondertekend met de sleutel van de omgeving, domein EUZOS-werkplek-beheerbewijs-v1\0, 10 minuten): regels omgeving=, server=, werkplek=, organisatie=, pcsleutel=, account=, beheer=werkplek, uitgegeven=, geldig-tot=, sleutel-id=, handtekening=.

Beheerlijst: ok, daarna per werkplek werkplek=<id>\t<naam>\t<lan>\t<actief|niet actief>\t<geïnstalleerd door>\t<datum>\t<extern adres>.

Zie ook

  • docs/WORK-LOGIN.md
  • docs/WORKPLACE.md, "Phase E2" en "The protocol of the MVP"
  • docs/WORKPLACE-PROTOCOL.md
  • docs/OFFLINE-LOGIN.md
  • Pc-login · Apps en downloads · CLI · API