MSP · CROSS-TENANT

20+ klanten beheren in één tab

MSP Cockpit met urgency-sortering, white-label branding per klant, pre-issued EATs voor off-hours coverage, multi-party signing voor irreversible acties, RBAC-impersonatie voor support.

Volledige docs
01

Maandagochtend cross-tenant triage

20 cliënten, allemaal denken ze dat ze top-priority zijn. Je hebt een objectief getal nodig om de eerste 3 te kiezen.

  1. Login als MSP-admin → sidebar 'MSP cockpit'
  2. Tenants gesorteerd op urgency descending
  3. Klik hoogste tenant → opent in tenant context
  4. Filter urgency > 50 voor je ochtendwerk

Filter urgency > 50 = 2-5 tenants typisch. Top 3 = je ochtendwerk. Rest kan deze week, niet vandaag.

Hetzelfde via API (text) — voor automatisering
urgency = (open_critical × 10)
        + (open_high     × 3)
        + (sla_breach_minutes / 60)
        + (kev_open_cves)
        + (trust_score_delta_24h × -2)   -- a drop is urgent
        + (overdue_eats × 5)

/msp/cockpit sorts every tenant in your portfolio
by this composite. Filter urgency > 50 → typically
2-5 tenants. Top 3 = your morning's work.
02

Maandelijkse handover-PDF naar de cliënt

Cliënt vraagt 'wat heeft je team voor mij gedaan deze maand'. Je wil dit niet manueel samenstellen.

  1. Cockpit → switch tenant → sidebar Audit Packs
  2. Klik maand → 'Download for handover' → filter @yourMSP.com
  3. PDF + .sig ondertekend uit de hub
  4. Email cliënt — die verifieert offline met CLI

Trust Score-evolutie, kernel-updates uitgevoerd, CVEs gefixt, alerts afgehandeld, sessies geopend — alles per actor gelinkt.

Hetzelfde via API (bash) — voor automatisering
# Filter the monthly pack to your team's actions
curl 'https://app.monsys.ai/api/v1/audit-packs/<id>/download?format=pdf&actor_filter=@yourMSP.com' \
  -H "Authorization: Bearer $TOKEN" -o handover-acme-2026-04.pdf

# Client verifies independently — no trust required
./monsys-verify-eat-linux-x64 verify-pack \
  --pack handover-acme-2026-04.pdf \
  --sig  handover-acme-2026-04.sig \
  --pubkey  https://transparency.monsys.ai/pubkeys/hub.pub
03

Pre-issued EATs voor off-hours emergency

Cliënt heeft 2:00 incident. Je on-call moet hub-auth + TOTP + EAT issuen vóór actie. Dat is 5 extra minuten wanneer secondes tellen.

  1. Sidebar → Playbooks → kies 'Isolate network'
  2. 'Pre-issue voor agent' → kies host + valid window
  3. Conditie (heartbeat lost / critical alert) + TOTP
  4. Agent ontvangt EAT via WS, activeert zelf op conditie

Conditie-trigger zit in agent log + transparency_log entry met 'pre_issued_eat_consumed' event-type voor traceability.

Hetzelfde via API (bash) — voor automatisering
curl -X POST https://app.monsys.ai/api/v1/agents/<id>/pre-issued-eats \
  -H "Authorization: Bearer $TOKEN" \
  -H "X-TOTP-Code: 123456" \
  -d '{
    "playbook_id":   "<isolate-network-playbook>",
    "valid_from":    "2026-05-19T18:00:00Z",
    "valid_until":   "2026-05-20T08:00:00Z",
    "conditions": {
      "heartbeat_lost_minutes": 5,
      "or_severity_critical":   true
    },
    "reason": "After-hours coverage for ACME"
  }'
04

Multi-party signing voor irreversible acties

DB restore op productie. Eén TOTP is onvoldoende — je wil aantonen dat twee engineers het hebben goedgekeurd (SOC2 separation of duties).

  1. Sidebar → Emergency → 'Nieuwe Level-3 EAT'
  2. Vul action + reden + required_approvers=2
  3. Andere admins krijgen push op mobile PWA
  4. Bij N approvals (elk eigen TOTP) → EAT fires

Quorum-evidence in audit_log + Audit Pack PDF — strong SOC2 evidence voor separation-of-duties controls.

Hetzelfde via API (bash) — voor automatisering
curl -X POST https://app.monsys.ai/api/v1/emergency/quorum \
  -H "Authorization: Bearer $TOKEN" \
  -H "X-TOTP-Code: 123456" \
  -d '{
    "agent_id": "<id>",
    "actions": [{ "kind": "run_playbook", "id": "db-restore" }],
    "reason": "Restore 2026-04-15 snapshot per TKT-9001",
    "required_approvers": 2
  }'

# Other admins receive ntfy push → approve in mobile PWA
# with their OWN TOTP. Split-control: no engineer can approve twice.
05

RBAC-impersonatie voor cross-tenant support

Je MSP-engineer moet een actie doen in ACME's context. Re-login per tenant = friction; één super-admin-account = audit-onveilig.

  1. Tenant switcher top-right → kies 'ACME' + 'Impersonate'
  2. Vul reden + 60min duration + TOTP
  3. Werk in ACME context — alle acties krijgen dubbele actor
  4. Cliënt ziet 'impersonation_started' in eigen Audit Pack

Cliënt ziet impersonation_started in eigen Audit Pack — geen surprise audit trails. Vroeg eindigen via /impersonate/end.

Hetzelfde via API (bash) — voor automatisering
curl -X POST https://app.monsys.ai/api/v1/auth/impersonate \
  -H "Authorization: Bearer $MSP_ADMIN_TOKEN" \
  -H "X-TOTP-Code: 123456" \
  -d '{
    "tenant_id": "<acme_uuid>",
    "duration_minutes": 60,
    "reason": "Investigating alert #847 on web-03"
  }'

# Auto-expire 60min. Client sees impersonation_started
# event in their own audit pack — no surprises.

Andere rollen

Lees de uitgebreide praktijk-docs