Welche Rollen und Berechtigungen gibt es?
Kurzantwort
Abschnitt betitelt „Kurzantwort“Jeder Benutzer trägt eine von vier Grundrollen (Betrachter, Techniker, Manager oder Administrator), die ein festes Bündel an Berechtigungen mitbringt. Die tatsächlichen Rechte eines Benutzers sind die Vereinigung aus den Rechten seiner Grundrolle und allen ihm zugewiesenen eigenen Rollen. Ein Super-Admin besitzt implizit alle Rechte.
Voraussetzungen
Abschnitt betitelt „Voraussetzungen“Die Rollenverwaltung ist in allen Tarifen enthalten.
Die vier Grundrollen
Abschnitt betitelt „Die vier Grundrollen“Notory kennt vier aufeinander aufbauende Grundrollen. Jede höhere Rolle enthält die Rechte der darunterliegenden:
| Berechtigung (Bereich) | Betrachter | Techniker | Manager | Administrator |
|---|---|---|---|---|
| Lesen: Assets, Netzwerk, Software, Zertifikate, Compliance, Discovery, Wartung, Betrieb, Provisioning, Berichte | ✓ | ✓ | ✓ | ✓ |
| Technik schreiben: Assets/Netzwerk/Wartung bearbeiten, Discovery starten | ✗ | ✓ | ✓ | ✓ |
| Fach schreiben: Software/Zertifikate/Compliance/Betrieb/Provisioning bearbeiten, Assets löschen | ✗ | ✗ | ✓ | ✓ |
| Administration: Admin-Bereich, Benutzer verwalten, Rollen verwalten, Instanz-Einstellungen, API-Tokens verwalten, Protokoll lesen | ✗ | ✗ | ✗ | ✓ |
| Mandanten verwalten (anlegen/löschen) | nur Super-Admin |
Die zugehörigen internen Berechtigungscodes (so heißen sie auch im Rollen-Editor)
lauten u. a.: assets.read, assets.write, assets.delete, network.read/write,
software.read/write, certificates.read/write, compliance.read/write,
discovery.read, discovery.run, maintenance.read/write, operations.read/write,
provisioning.read/write, reports.read sowie die Admin-Rechte access_admin,
users.manage, roles.manage, tenants.manage, instance.manage, apitokens.manage
und audit.read.
admin-benutzer-06 Rollen-Tab der Verwaltung mit Grundrollen und der Berechtigungsübersicht Rollen zuweisen
Abschnitt betitelt „Rollen zuweisen“-
Benutzer öffnen. Verwaltung → Benutzerverwaltung → Benutzer anklicken. Die Grundrolle änderst du direkt im Feld Rolle.
-
Eigene Rollen zuweisen. Über „Rollen zuweisen” wählst du zusätzlich eine oder mehrere eigene Rollen aus, die dem Benutzer weitere Berechtigungen geben. Diese addieren sich zur Grundrolle. Sie nehmen nie etwas weg.
Den Berechtigungskatalog (alle vergebbaren Codes) liefert:
curl -H "Authorization: Bearer inv_dein_token" \ https://demo.notory.io/api/v1/roles/permissionsVorhandene Rollen (globale + die deines Mandanten) listest du mit GET /api/v1/roles. Die
einem Benutzer zugewiesenen eigenen Rollen setzt du komplett neu:
curl -X PUT https://demo.notory.io/api/v1/roles/assignments/018f9b2c-6a41-7e02-9d3b-2c1a4f7e0055 \ -H "Authorization: Bearer inv_dein_token" \ -H "Content-Type: application/json" \ -d '{ "role_ids": ["018f9b40-1c2d-7a11-8e3f-9b0a1c2d3e4f"] }'Die Grundrolle (role) änderst du über den Benutzer-Endpunkt
(PUT /api/v1/users/{id} mit {"role": "manager"}).
Mögliche Fehler: 403 (kein Administrator, oder eine Rolle eines fremden
Mandanten sollte zugewiesen werden), 404 (unbekannte Rollen-ID).
Was passiert dabei?
Abschnitt betitelt „Was passiert dabei?“- Effektive Rechte = Grundrolle ∪ eigene Rollen. Notory bildet bei jeder Prüfung die Vereinigung aus den Standardrechten der Grundrolle und den Berechtigungen aller zugewiesenen eigenen Rollen. Rechte lassen sich so hinzufügen, aber über eine eigene Rolle nicht wegnehmen. Dafür wählst du eine niedrigere Grundrolle.
- Super-Admin sticht alles. Ein Super-Admin besitzt implizit jede Berechtigung und umgeht die Rollenprüfung vollständig (er sieht auch mandantenübergreifend alle Daten).
- Zugang zum Admin-Bereich. Der Admin-Bereich erscheint nur für Benutzer mit dem Recht
access_admin. Das bringt die Grundrolle Administrator mit, oder du vergibst es gezielt über eine eigene Rolle. - Global vs. mandantengebunden. Rollen sind entweder global (für alle Mandanten, nur vom Super-Admin verwaltbar) oder an deinen Mandanten gebunden. Eine Rolle aus einem fremden Mandanten lässt sich nie zuweisen.
- Systemrollen sind geschützt. Eingebaute Rollen (
is_system) können bearbeitet, aber nicht gelöscht werden.