← FAQ
FAQ

CLI van de profielserver

FAQ › Profielserver › CLI · English

Wat is het?

De profielserver is één programma, euzos-profielserver (crate euzos-profileserver, bron server/profile/src/main.rs). Hetzelfde programma draait de server (start) én beheert hem vanaf de opdrachtregel: accounts, beheerders, telefoons, pc-sessies, de kluis, meldingen, de appcatalogus, downloadsleutels en -tokens, offline-beleid, organisaties, werkplekservers en geregistreerde pc's. Elke opdracht werkt rechtstreeks op de SQLite-database die in het configuratiebestand staat; de server zelf hoeft daarvoor niet te stoppen.

Het programma houdt zijn Nederlandse naam euzos-profielserver (het pad op de VPS en de systemd-unit gebruiken die). De opdrachten en vlaggen zijn Engels; de oude Nederlandse opdrachtnamen en vlaggen werken nog één release als verborgen aliassen.

Daarnaast is er een tweede, veel kleiner programma voor de downloadserver, euzos-download (server/download), met drie eigen opdrachten (zie hieronder).

Hoe doe ik…?

…een CLI-opdracht op de server uitvoeren?

euzos-profielserver [--config <bestand>] <opdracht> [argumenten]

Het configuratiebestand komt uit --config <bestand>, anders uit de omgevingsvariabele EUZOS_PROFILE_CONFIG (de oude naam EUZOS_PROFIEL_CONFIG wordt nog gelezen). Op de VPS start de systemd-unit de server als /opt/euzos-profiel/huidig/euzos-profielserver --config /etc/euzos-profiel/profiel.conf start; CLI-opdrachten voer je op dezelfde manier uit, als de dienstgebruiker (sudo -u euzos-profiel …), zodat ze dezelfde database en sleutels gebruiken (docs/PROFILESERVER-SETUP.md). --help of -h (of geen opdracht) toont de gebruikstekst.

…een account aanmaken?

user-create <email> [--first-name V] [--last-name A] [--city W] [--display-name "Naam"] [--language nl|en] [--password-stdin]. Je wordt twee keer om het wachtwoord gevraagd (of één regel op stdin met --password-stdin); minstens 10 tekens. Het account krijgt de twee profielen Werk of school en Privé, status niet_geverifieerd, en een mail met link en code (24 uur geldig). Inloggen kan pas als het adres bevestigd is. In noodgevallen (geen mail) bevestigt user-verify <email> met de hand; dat komt in het beheerlog.

…een account blokkeren, deblokkeren of verwijderen?

  • user-block <email>: niet meer inloggen; meldt alle pc's af en trekt alle telefoons in.
  • user-unblock <email>: status weer actief; telefoons moeten opnieuw gekoppeld worden.
  • user-delete <email> [--yes <email>]: AVG-verwijdering van alles (pc's, telefoons, kluis inclusief opslagsleutel, meldingen, profielen, instellingen, verificaties, mailtellers). Je moet het adres nog eens typen, of het komt uit --yes. Het beheerlog houdt alleen een hash van het adres.

…een wachtwoord opnieuw instellen?

password <email> [--password-stdin] [--revoke-devices]: een nieuw wachtwoord; alle pc's worden afgemeld, en met --revoke-devices worden ook alle telefoons ingetrokken.

…iemand beheerder van de beheerpagina maken?

admin-create <email> (het account moet actief zijn). De beheerder logt dan in op https://<beheerdomein>/beheer met e-mailadres en wachtwoord en bevestigt in de EUZOS-app op een gekoppelde telefoon. admin-delete <email> haalt de rol weg, admins toont de beheerders en hoeveel telefoons ze gekoppeld hebben. Zie Beheerpagina.

…beperken welke beheeropdrachten een gebruiker op een pc mag uitvoeren?

admin-policy <email> [<beleid> | geen | --delete]. Het beleid is een met komma's gescheiden deel van console,sshd,log,profiel, of geen. Het komt ondertekend in het profiel van die gebruiker (regel beheer=). Zonder beleidsargument toont de opdracht het huidige beleid; --delete haalt het weg (de pc volgt dan zijn build: een testbuild staat alles toe, productie niets). Wijzigen meldt de pc's van het account af.

…een app (Chromium) in de catalogus zetten?

app-set <naam> --version <n> --size <bytes> --sha256 <hex> --url <https://…/NAAM.APP> [--url <spiegel>]… [--package <https://…>]…. De versie komt uit de .sig, grootte en SHA-256 uit het pakket (tools/chromium/install.sh --create toont ze). --url is de ondertekende beschrijving (met de .sig ernaast), --package het pakket zelf (zonder: naast de beschrijving); de eerste URL wordt eerst geprobeerd, de rest zijn spiegels. apps toont de catalogus, app-delete <naam> haalt een app weg. Zie Apps en downloads.

…downloadtokens instellen?

Eén keer per omgeving: download-key-create maakt de downloadsleutel in het bestand uit download_key_file (rechten 0600; weigert te overschrijven) en toont de regel voor de sleutellijst van de downloadserver. download-key toont de sleutel-id (kid) en die regel opnieuw. download-token <app> <versie> maakt een token (2 uur geldig) voor beheerwerk en tests; dat komt in het beheerlog.

…het beleid voor offline inloggen instellen?

offline-policy toont de regels; offline-policy <*|@domein> <0..30> zet het aantal dagen voor deze hele omgeving (*) of één organisatie (@domein); 0 betekent niet toegestaan; zonder regel is de standaard 14 dagen. offline-policy-delete <*|@domein> haalt een regel weg, offline-revoke <email> trekt elk offline-kluisje van een account in, offline-tokens toont de geldige. Zie Pc-login en docs/OFFLINE-LOGIN.md.

…een organisatie instellen voor inloggen met Microsoft (Entra)?

org-create <naam>, dan org-tenant <naam> <tenant-id> (de GUID uit Entra, Overzicht) en org-domain <naam> <domein> voor elk toegestaan e-maildomein. orgs toont ze. Zie Organisaties en docs/WORK-LOGIN.md.

…een werkplekserver of een EUZOS-pc registreren voor Server Admin?

  • Werkplekserver: normaal registreert het serverinstallatieprogramma hem zelf (POST /api/workplace/v1/register). Met de hand: workplace-register <naam> <sleutel> [--network <ip>[,<ip>]] met de sleutel van 64 hex die workplace op de werkplekserver toont.
  • Pc: pc-register <naam> <sleutel> <org> met de apparaatsleutel uit pckey op de pc.
  • Beheerrechten: org-admin <org> <email> [--off].

Vergelijk de vingerafdruk die de opdracht toont met die op de server/pc.

Details

  • Alles wordt gelogd. Opdrachten die iets veranderen, schrijven een regel in het beheerlog (admin-log toont het). De actieteksten in dat log zijn opgeslagen gegevens en blijven Nederlands (gebruiker-maak, beheer …, app-zet, werkplek-registreer, …).
  • Accounts zijn e-mailadressen. Elk <email> wordt genormaliseerd; de gebruikersnaam is altijd het adres.
  • Mailgrenzen. Verificatiemails: 1 per minuut en 5 per dag per adres.
  • Wachtwoorden worden zonder echo gelezen (twee keer gevraagd) of van stdin; 10 tot 200 tekens.
  • Oude namen. Oude Nederlandse opdrachten (gebruiker-maak, kluis, werkplekken, …) en vlaggen (--voornaam, --ja, --wis, --uit, …) worden omgezet naar de Engelse voordat de opdracht draait (tabellen LEGACY_COMMANDS en LEGACY_FLAGS in main.rs, plus kleine tabellen in org.rs, offline.rs, workplace.rs, workplace_admin.rs).
  • Waarden blijven Nederlands. Sommige argumenten zijn draadwaarden en typ je zo: het beleidswoord geen, de delen console,sshd,log,profiel, de statusnamen (actief, niet_geverifieerd, geblokkeerd), de omgevingsnamen (lokaal, sandbox, productie).

Over namen. Configuratiesleutels krijgen Engelse namen; de Nederlandse worden nog geaccepteerd (zie de configuratietabel hieronder). Deze pagina toont de namen die de code nu gebruikt.

Naslag

Opdrachten van euzos-profielserver

Algemene optie: --config <bestand> (of EUZOS_PROFILE_CONFIG).

Server

OpdrachtArgumentenWat het doetUitvoerOude naam
start—Start de HTTP(S)-server (tokio, hoogstens 64 blokkerende threads). Lokaal kan hij zelf TLS doen (tls_chain/tls_key); in sandbox/productie luistert hij op localhost achter Caddy.Startregel op stderr: omgeving, adres, domein, sleutel-id, aantal gebruikers, hoe mail verstuurd wordt (nooit geheimen).—
key—Opent de server (maakt de ondertekensleutel bij het eerste gebruik).Omgeving, domein, sleutel-id, en de regels voor \EOS\FW\PROFIEL.TXT op een EUZOS-pc, nog in de oude Nederlandse vorm (server=, omgeving=, sleutel= publieke sleutel); de pc leest die net zo goed als de Engelse PROFILE.TXT-sleutels (environment=, key=).sleutel

Accounts

OpdrachtArgumentenWat het doetUitvoerOude naam
user-create<email> [--first-name V] [--last-name A] [--city W] [--display-name "Naam"] [--language nl|en] [--password-stdin]Maakt een account met de profielen Werk of school en Privé, status niet_geverifieerd, verstuurt link + code. Weergavenaam: voornaam + achternaam, anders --display-name, anders het deel van het adres vóór de @.Bevestiging; of de mail verstuurd is.gebruiker-maak
user-email<huidig adres of oude naam> <nieuw adres>Vraagt een nieuw adres aan (moet per mail bevestigd worden). Voor een actief of geblokkeerd account blijft het oude adres tot dan geldig; een onbevestigd account wordt meteen hernoemd.Wat er gebeurde.gebruiker-email
user-verify<email>Noodgeval: bevestigt een onbevestigd account, of voert een openstaande adreswijziging uit, zonder mail. Gelogd.Bevestiging.gebruiker-verifieer
user-block<email>Blokkeert het account; meldt alle pc's af, trekt alle telefoons in.Aantallen pc's/telefoons.gebruiker-blokkeer
user-unblock<email>Weer actief (alleen als geblokkeerd).Bevestiging.gebruiker-deblokkeer
user-delete<email> [--yes <email>]AVG-verwijdering van het hele account (gdpr::user_delete). Vraagt het adres opnieuw, tenzij --yes overeenkomt.Aantallen per soort gegevens; de adreshash die in het beheerlog komt.gebruiker-wis
password<email> [--password-stdin] [--revoke-devices]Nieuw wachtwoord; meldt alle pc's af; trekt eventueel alle telefoons in.Aantallen.wachtwoord
users—Alle accounts.Kolommen: e-mailadres, status, profielen, apparaten; openstaand nieuw adres.gebruikers

Beheerders en beheerbeleid

OpdrachtArgumentenWat het doetUitvoerOude naam
admin-policy<email> [<beleid> | geen | --delete]Toont/zet/verwijdert het ondertekende beleid voor beheeropdrachten (console,sshd,log,profiel,ports,device of een deel, of geen; device: de achtergrond van het inlogscherm). Zetten meldt de pc's van het account af.Huidig of nieuw beleid.beheer
admin-log—Toont het beheerlog.datum wie actie per regel.beheerlog
admin-create<email>Geeft een actief account de beheerdersrol (beheerder) voor de beheerpagina.Bevestiging, aantal gekoppelde telefoons, inloghint.beheerder-maak
admin-delete<email>Haalt de beheerdersrol weg (open sessies stoppen bij de volgende klik).Bevestiging.beheerder-wis
admins—Accounts met de beheerdersrol.Adres, status, gekoppelde telefoons.beheerders

Telefoons en pc-sessies

OpdrachtArgumentenWat het doetUitvoerOude naam
devices[<email>]Gekoppelde telefoons (alle, of van één account).Apparaat-id, gebruiker, platform, naam, laatst gebruikt, status (active / revoked <datum>).apparaten
device-revoke<apparaat-id>Trekt een telefoon in; de pc's die ermee inlogden, worden afgemeld.Bevestiging of fout.apparaat-intrek
pc-sessions—Ingelogde pc's.ref, profiel, pc-IP, apparaat (of password / web page), sinds, verloopt.pc-sessies

Meldingen en kluis (AVG)

OpdrachtArgumentenWat het doetUitvoerOude naam
reports—Hoe vol de meldingendatabase is (DriverEnricher, BrowserFeedback).Pad, MB in gebruik van de grens, apparaten, browsermeldingen (met schermafbeelding). Of "meldingen staan uit".meldingen
reports-delete<email>Verwijdert alle meldingen van een account.Aantallen.meldingen-wis
vault<email>Wat er in de kluis van het account zit (nooit de inhoud), de bureaubladachtergronden (id en grootte, nooit de afbeelding) en het kluislog (90 dagen; desktop-background met stored, fetched, deleted).profiel, soort, sleutel, gewijzigd; daarna het log.kluis
vault-delete<email>Verwijdert de hele kluis van het account, inclusief de opslagsleutel (de versleutelde profielmappen worden onleesbaar), en de bureaubladachtergronden (verzegeld met die sleutel).Aantal verwijderde geheimen.kluis-wis

Appcatalogus en downloadtokens

OpdrachtArgumentenWat het doetUitvoerOude naam
apps—De appcatalogus (wat GET /api/apps teruggeeft).Per app: versie, grootte, SHA-256, datum, URL's van de beschrijving, URL's van het pakket.—
app-set<naam> --version <n> --size <bytes> --sha256 <hex> --url <https://…/NAAM.APP> [--url <spiegel>]… [--package <https://…>]…Zet een app erin of vervangt hem (apps::App::check: hoogstens 4 URL's per soort, de beschrijving moet eindigen op /<NAAM>.APP). Waarschuwt als de versie omlaag gaat (pc's weigeren een lagere versie).De catalogusregels van de app.app-zet
app-delete<naam>Haalt een app weg; pc's melden dan "niet beschikbaar".Bevestiging.app-wis
download-key-create—Maakt de downloadsleutel (Ed25519) in download_key_file, rechten 0600, weigert als hij al bestaat.Omgeving, kid, de regel voor het sleutelbestand van de downloadserver.downloadsleutel-maak
download-key—Leest de downloadsleutel.Omgeving, kid, sleutelregel.downloadsleutel
download-token<app> <versie>Een downloadtoken (2 uur) voor beheerwerk en tests, account "beheer"; gelogd met zijn jti.Het token op stdout; jti en verloopmoment op stderr.downloadtoken

Offline inloggen

OpdrachtArgumentenWat het doetUitvoerOude naam
offline-policy[<*|@domein> <0..30>]Zonder argumenten: toont de standaard (14 dagen) en de regels. Met: zet de dagen voor * (deze omgeving) of @domein (een organisatie); 0 = niet toegestaan.De regels / de nieuwe regel.offline-beleid
offline-policy-delete<*|@domein>Verwijdert een regel.Bevestiging.offline-beleid-wis
offline-revoke<email>Trekt alle offline-kluisjes van het account in (de pc wist zijn kluisje en meldt af als hij weer verbinding heeft).Aantal ingetrokken.offline-intrek
offline-tokens—Geldige offline-kluisjes.account, ref, profiel, sinds, verloopt.—

Organisaties (org.rs)

OpdrachtArgumentenWat het doetUitvoerOude naam
org-create<naam>Maakt een organisatie (inloggen met het Microsoft-werkaccount).Hint om org-tenant en org-domain te doen.org-maak
org-tenant<naam> <tenant-id> | --deleteZet (of verwijdert) de Entra-tenant-id (een GUID). Zonder tenant kan inloggen met Microsoft niet.De tenant.—
org-domain<naam> <domein> [--delete]Voegt een toegestaan e-maildomein toe (of haalt het weg).De domeinlijst.org-domein (vlag --wis)
orgs—Alle organisaties.naam, tenant, domeinen, aantal accounts.—
org-admin<org> <email> [--off]Maakt een account beheerder van een organisatie (werkplekken, Server Admin), of met --off niet meer.Bevestiging.org-beheerder (vlag --uit)

Werkplekservers en geregistreerde pc's (workplace.rs, workplace_admin.rs)

OpdrachtArgumentenWat het doetUitvoerOude naam
workplace-register<naam> <sleutel> [--network <ip>[,<ip>]]Registreert een werkplekserver met zijn publieke sleutel (64 hex, getoond door workplace op de server). Naam 1–64 tekens. Zonder --network gebruikt de catalogus het publieke adres van het aanmelden.Id en vingerafdruk; de netwerkinstelling.werkplek-registreer (vlag --netwerk)
workplaces—De werkplekservers.id, naam, toestand (active, not active, never signed in, REVOKED), geïnstalleerd door, extern adres, lan, publiek, netwerk.werkplekken
workplace-revoke<id>Trekt een werkplekserver in: geen aanmelden, geen downloadtokens, niet in de catalogus.Bevestiging.werkplek-intrek
workplace-network<id> <ip>[,<ip>]|autoVoor welke netwerken (hoogstens 16) de catalogus deze werkplekserver aan pc's noemt; auto = het publieke adres van zijn aanmelding.Bevestiging.werkplek-netwerk
workplace-org<id> <organisatie>|geenZet de organisatie van een werkplekserver (nodig voor Server Admin).Bevestiging.werkplek-org
pc-register<naam> <sleutel> <org>Registreert de apparaatsleutel van een EUZOS-pc (64 hex, uit pckey op de pc) bij een organisatie.Vingerafdruk om te vergelijken.pc-registreer
pcs—Geregistreerde pc's.sleutel, naam, organisatie, REVOKED.—
pc-revoke<sleutel>Trekt een pc-sleutel in: geen beheerbewijzen meer voor die pc.Bevestiging.pc-intrek

Oude vlaggen (verborgen)

OudNieuw
--voornaam--first-name
--achternaam--last-name
--woonplaats--city
--weergavenaam--display-name
--taal--language
--wachtwoord-stdin--password-stdin
--ja--yes
--trek-apparaten-in--revoke-devices
--wis--delete
--versie--version
--grootte--size
--pakket--package
--netwerk--network
--uit--off

Configuratiebestand (profiel.conf)

Regels sleutel = waarde, # begint commentaar (config::read_lines). Relatieve paden zijn relatief aan het configuratiebestand. Elke sleutel kan ook als omgevingsvariabele EUZOS_PROFILE_<SLEUTEL> (hoofdletters), die wint van het bestand; het oude voorvoegsel EUZOS_PROFIEL_ (met de Engelse of de Nederlandse sleutel) wordt nog gelezen. Een geheim zelf (SMTP-wachtwoord, beheertoken, kluissleutel, Graph-geheim) wordt in het bestand geweigerd: het moet in een eigen bestand staan, genoemd door de *_file-sleutel. Voorbeelden: server/profile/deploy/lokaal.conf, sandbox.conf, productie.conf. Waarden staan hier nooit.

SleutelOude (Nederlandse) sleutelBetekenisStandaard
environmentomgevinglokaal, sandbox of productie (verplicht).—
addressadresWaar de server luistert (ip:poort); in sandbox/productie alleen localhost (Caddy ervoor).— (verplicht)
domaindomeinPublieke host[:poort] zoals in de QR-code, de handtekening en de app.— (verplicht)
database—De SQLite-database.— (verplicht)
keysleutelHet bestand met de Ed25519-ondertekensleutel (bij de eerste start gemaakt, 0600).— (verplicht)
tls_chaintls_ketenAlleen lokaal: bestanden van de certificaatketen (komma's).geen
tls_keytls_sleutelAlleen lokaal: het bestand met de privésleutel van TLS.geen
behind_proxyachter_proxyHet IP van de client uit X-Forwarded-For halen (alleen van localhost met het proxygeheim).ja, behalve lokaal
proxy_secret_fileproxy_geheim_bestandBestand met het geheim dat Caddy in X-Euzos-Proxy meestuurt. Verplicht achter Caddy.geen
admin_token_filebeheer_token_bestandBestand met de beheersleutel voor de agent-API's (DriverEnricher, BrowserFeedback). Zonder geven die API's 404.geen
vault_key_filekluis_sleutel_bestandBestand met de serversleutel van de kluis. Zonder geeft de kluis 404.geen
download_key_filedownload_sleutel_bestandHet bestand met de downloadsleutel. Zonder geeft /api/apps/token 404.geen
download_basedownload_basisBasis-URL van de pakketserver (https://<host>/); URL's daaronder hebben een downloadtoken nodig.geen
reportsmeldingenMeldingen van DriverEnricher/BrowserFeedback bewaren.ja in lokaal/sandbox, nee in productie
reports_databasemeldingen_databasePad van de meldingendatabase.meldingen.db naast de database
reports_max_mbmeldingen_max_mbGrens van de meldingendatabase in MB.1024
web_fallbackweb_terugvalDe webpagina met wachtwoord als terugval zonder de app.ja
allow_v1sta_v1_toePolls zonder pc-geheim (oud 8.5-formaat); alleen lokaal.ja lokaal, anders nee
registration_openregistratie_openGebruikers mogen zichzelf registreren (app, pc, webpagina).nee
pc_passwordpc_wachtwoordOp de pc inloggen met e-mail en wachtwoord (POST /api/pc/login).ja
admin_pagebeheerpaginaDe beheerpagina /beheer.ja, behalve productie
admin_domainbeheer_domeinHet eigen domein van de beheerpagina (bv. <internal-host>); moet anders zijn dan domain.geen
qr_durationqr_duurSeconden dat een QR-inlogsessie die geen telefoon ophaalde, geldig blijft.30
confirm_durationbevestig_duurSeconden dat een opgehaalde sessie op goedkeuring wacht.120
token_durationtoken_duurSeconden dat een pc-token (en het ondertekende profiel) geldig is.43200 (12 u)
app_durationapp_duurSeconden dat een app-aanmelding met wachtwoord (eza_) geldig is.900
web_durationweb_duurSeconden dat een aanmelding op de webpagina geldig is.3600
apple_app_id—iOS universal links (TEAMID.eu.euzos.app).geen
android_packageandroid_pakketAndroid app links: pakketnaam.geen
android_fingerprintsandroid_vingerafdrukkenAndroid app links: vingerafdrukken van het ondertekencertificaat (komma's).geen
mail—graph, smtp of map (map). Verplicht in sandbox/productie.map lokaal
mail_dirmail_mapMap voor mail = map.mail
smtp_host—SMTP-host.—
smtp_portsmtp_poort587 (STARTTLS) of 465 (TLS).587
smtp_usersmtp_gebruikerSMTP-gebruiker.—
smtp_password_filesmtp_wachtwoord_bestandBestand met het SMTP-wachtwoord.—
graph_tenant—Mail via Microsoft Graph: tenant-GUID.—
graph_client_id—Graph-appregistratie (productie moet een eigen gebruiken, nooit die van de sandbox).—
graph_secret_filegraph_geheim_bestandBestand met het Graph-clientgeheim, of…—
graph_certificate_filegraph_certificaat_bestand…certificaatbestand, samen met…—
graph_key_filegraph_sleutel_bestand…het bijbehorende sleutelbestand.—
senderafzenderAfzender van de mails.EUZOS <no-reply@euzos.eu>
reply_toantwoordadresAntwoordadres.geen
entra_client_id—Client-id (GUID) van de EUZOS-Entra-app; zonder geeft /api/pc/entra 404.geen
entra_check_sentra_controle_sHoe vaak (s) een Entra-account opnieuw bij Microsoft gecontroleerd wordt (minimaal 60).900

Waarden yes/no accepteren ook ja/nee, true/false, 1/0. Config::check weigert gevaarlijke combinaties: buiten lokaal moet de server op localhost luisteren, mag hij geen TLS zelf doen, geen v1-polls toestaan, en heeft hij achter Caddy proxy_secret_file nodig; productie mag de Graph-appregistratie van de sandbox niet gebruiken.

Omgevingsvariabelen

VariabeleBetekenis
EUZOS_PROFILE_CONFIG (oud EUZOS_PROFIEL_CONFIG)Pad van het configuratiebestand als --config ontbreekt.
EUZOS_PROFILE_<SLEUTEL> (oud EUZOS_PROFIEL_<SLEUTEL>, ook met de Nederlandse sleutel)Overschrijft één configuratiesleutel, bv. EUZOS_PROFILE_DATABASE.

De CLI van de downloadserver (euzos-download)

server/download/src/main.rs: de tokencontrole achter forward_auth van Caddy voor download.euzos.eu (zie API).

OpdrachtArgumentenWat het doetOude naam
start[--address 127.0.0.1:8091] [--keys <bestand>] [--blocklist <bestand>]Draait de controleserver op localhost. Standaard: sleutels /etc/euzos-download/sleutels.txt, zwarte lijst /etc/euzos-download/zwarte-lijst.txt; beide worden opnieuw gelezen als ze veranderen.vlaggen --adres, --sleutels, --zwarte-lijst
revoke<jti> [commentaar]Zet de jti van een token (32 hex in kleine letters, uit het log) op de zwarte lijst.intrek
keys—Toont de bekende sleutel-id's (kid).sleutels

Functies en modules

FunctieRol
main::runLeest --config, zet oude namen om (command, flag_name), laadt Config, verdeelt.
main::startDe server: euzos_profileserver::router op axum (lokaal TLS via rustls).
main::adminsadmin-create, admin-delete, admins.
config::Config::load, config::read_lines, config::english_keyConfiguratiebestand + omgeving, oude sleutels (LEGACY_KEYS).
gdpr::user_deleteuser-delete.
offline::clioffline-policy*, offline-revoke, offline-tokens.
org::cliorg-create, org-tenant, org-domain, orgs.
workplace::cliworkplace-register, workplaces, workplace-revoke, workplace-network.
workplace_admin::cliworkplace-org, pc-register, pcs, pc-revoke, org-admin.
download_token::Key::create / read / tokenDownloadsleutel en -tokens.
apps::App::check / linesEen catalogusregel controleren en tonen.

Het Python-prototype

tools/profileserver/profileserver.py is het eerdere prototype uit mijlpaal 8.5 ("for now on the Mac", alleen de standaardbibliotheek van Python), met de opdrachten start, user-create, password en users. Het is niet de productieserver. Het wordt alleen nog gestart door make profileserver PKI=/pad (lokaal HTTPS op poort 8444, mijlpaal 8.5; de Makefile noemt het ook voor het maken van een gebruiker); de echte server draait met make profileserver-rs.

Zie ook

  • API · Beheerpagina · Omgevingen en uitrol
  • docs/PROFILESERVER-SETUP.md
  • docs/PROFILE-PROTOCOL.md
  • docs/ENGLISH.md ("Profile server CLI", "Database, configuration, CLI")
  • docs/OFFLINE-LOGIN.md · docs/WORK-LOGIN.md · docs/WORKPLACE.md · docs/DOWNLOADSERVER.md