Zum Hauptinhalt springen

Permission Templates

Permission Templates

Permission Templates dienen dazu, wiederverwendbare Berechtigungsprofile in optiCLOUD zu definieren. Statt Rechte für jeden Benutzer einzeln zusammenzustellen, können vorbereitete Templates angelegt und bei Bedarf zugewiesen werden.

Das reduziert den Administrationsaufwand und sorgt für konsistente Rechtevergabe über mehrere Benutzer und Projekte hinweg.

Permission Templates in optiCLOUD

Einsatz und Verwaltung

In der Tabellenübersicht werden vorhandene Templates mit den wichtigsten Metadaten angezeigt, zum Beispiel:

  • Name
  • Sichtbarkeit oder Zugriffstyp
  • Erstellungszeitpunkt
  • Bearbeitungszeitpunkt
  • Beschreibung

Über die Aktionsleiste können neue Templates erstellt, bestehende importiert oder vorhandene Vorlagen exportiert werden.

Templates anwenden

Ein Template kann in der Benutzerrechteverwaltung einem Benutzer für ein bestimmtes Projekt zugewiesen werden. Dadurch erhält der Benutzer die im Template definierten Berechtigungen, ohne dass jede Einzelberechtigung manuell gesetzt werden muss.

Das ist besonders hilfreich für wiederkehrende Rollenbilder, etwa für reine Viewer, Service-Personal oder Administratoren mit klar definiertem Aufgabenumfang.

warnung

Wenn ein Template geändert wird, werden bereits zugewiesene Benutzerrechte nicht automatisch nachgezogen. Eine Änderung am Template aktualisiert also nicht rückwirkend alle Benutzer, denen dieses Template früher zugewiesen wurde.

Die geänderte Berechtigung muss nach einer Template-Anpassung gezielt erneut zugewiesen werden. Um Verwechslungen zu vermeiden, werden bestehende Benutzerrechte nach einer manuellen Abweichung oder nachträglichen Änderung als Custom behandelt.

Berechtigungsstruktur

Jede Berechtigung kann einzeln gesetzt werden, wobei zu beachten ist, dass es Abhängigkeiten zwischen einzelnen Berechtigungen gibt.

  • ALL: Alle aufgeführten Berechtigungen müssen vorhanden sein.
  • AT_LEAST_ONE: Mindestens eine der aufgeführten Berechtigungen muss vorhanden sein.

So kann z.B. ein Nutzer nicht die Berechtigung "View Telemetry" erhalten, wenn er nicht auch die Berechtigung "View Devices" erhält, das Telemetriedaten immer an ein Geräte gebunden und nur über dieses einsehbar sind.

Beispiel: DefaultViewer

Ein praktisches Beispiel für ein Template ist defaultviewer. Die Datei kann direkt in OptiCloud importiert werden und zeigt ein typisches lesendes Berechtigungsprofil.

JSON von defaultviewer.json anzeigen
{
"description": "Default Permissions for View/Download/Export",
"name": "DefaultViewer",
"visible": false,
"permissions": [
{
"pluginType": "UI_PAGES",
"operation": "DASHBOARDS_PAGE"
},
{
"pluginType": "UI_PAGES",
"operation": "DEVICES_PAGE"
},
{
"pluginType": "DATA_FILE",
"operation": "DOWNLOAD_CLIENT_DATA_FILE"
},
{
"pluginType": "OPTIMEAS_DEVICE",
"operation": "DOWNLOAD_DEVICE_FILE"
},
{
"pluginType": "OPTIMEAS_DEVICE",
"operation": "DOWNLOAD_LOG_FILE"
},
{
"pluginType": "DATA_FILE",
"operation": "DOWNLOAD_SERVER_DATA_FILE"
},
{
"pluginType": "DATA_FILE",
"operation": "DOWNLOAD_SHARED_DATA_FILE"
},
{
"pluginType": "DASHBOARD",
"operation": "EDIT_DASHBOARD_AGGREGATION_FUNCTION"
},
{
"pluginType": "DASHBOARD",
"operation": "EDIT_DASHBOARD_TIMEWINDOW"
},
{
"pluginType": "TELEMETRY",
"operation": "EXPORT_TELEMETRY"
},
{
"pluginType": "UI_PAGES",
"operation": "HOME_PAGE"
},
{
"pluginType": "UI_PAGES",
"operation": "NOTES_PAGE"
},
{
"pluginType": "OPTIMEAS_DEVICE",
"operation": "NOTIFICATION_DEVICE_MESSAGE_ERROR"
},
{
"pluginType": "DASHBOARD",
"operation": "OPEN_DASHBOARD"
},
{
"pluginType": "UI_PAGES",
"operation": "USERS_PAGE"
},
{
"pluginType": "ALARM",
"operation": "VIEW_ALARM"
},
{
"pluginType": "ALARM",
"operation": "VIEW_ALARM_DETAILS"
},
{
"pluginType": "OPTIMEAS_DEVICE",
"operation": "VIEW_APPLICATION_UPDATE_FILE"
},
{
"pluginType": "ATTRIBUTE",
"operation": "VIEW_CLIENT_ATTRIBUTE"
},
{
"pluginType": "DATA_FILE",
"operation": "VIEW_CLIENT_DATA_FILE"
},
{
"pluginType": "OPTIMEAS_DEVICE",
"operation": "VIEW_COMMAND_FROM_DEVICE"
},
{
"pluginType": "OPTIMEAS_DEVICE",
"operation": "VIEW_COMMAND_TO_DEVICE"
},
{
"pluginType": "DASHBOARD",
"operation": "VIEW_DASHBOARD"
},
{
"pluginType": "DEVICE",
"operation": "VIEW_DEVICE"
},
{
"pluginType": "OPTIMEAS_DEVICE",
"operation": "VIEW_DEVICE_FILE"
},
{
"pluginType": "OPTIMEAS_DEVICE",
"operation": "VIEW_DYNAMIC_CONFIG_UPDATE_FILE"
},
{
"pluginType": "EVENT",
"operation": "VIEW_EVENT"
},
{
"pluginType": "OPTIMEAS_DEVICE",
"operation": "VIEW_FIRMWARE_UPDATE_FILE"
},
{
"pluginType": "OPTIMEAS_DEVICE",
"operation": "VIEW_LOG_FILE"
},
{
"pluginType": "NOTE",
"operation": "VIEW_NOTES"
},
{
"pluginType": "NOTIFICATION",
"operation": "VIEW_NOTIFICATION"
},
{
"pluginType": "OPTIMEAS_DEVICE",
"operation": "VIEW_OPTIMEAS_DEVICE"
},
{
"pluginType": "ATTRIBUTE",
"operation": "VIEW_SERVER_ATTRIBUTE"
},
{
"pluginType": "DATA_FILE",
"operation": "VIEW_SERVER_DATA_FILE"
},
{
"pluginType": "ATTRIBUTE",
"operation": "VIEW_SHARED_ATTRIBUTE"
},
{
"pluginType": "DATA_FILE",
"operation": "VIEW_SHARED_DATA_FILE"
},
{
"pluginType": "OPTIMEAS_DEVICE",
"operation": "VIEW_STATIC_CONFIG_UPDATE_FILE"
},
{
"pluginType": "TELEMETRY",
"operation": "VIEW_TELEMETRY"
},
{
"pluginType": "USER_MANAGEMENT",
"operation": "VIEW_USER"
},
{
"pluginType": "WIDGETS_LIBRARY",
"operation": "VIEW_WIDGETS_BUNDLE"
},
{
"pluginType": "WIDGETS_LIBRARY",
"operation": "VIEW_WIDGET_TYPE"
}
]
}

Empfehlung für die Praxis

Templates sollten für klar abgegrenzte Rollen erstellt und eindeutig benannt werden. Gute Vorlagen orientieren sich an realen Aufgaben im Betrieb und nicht an technischen Einzelfällen.

Sobald sich eine Rolle ändert, sollte geprüft werden, ob ein bestehendes Template angepasst und anschließend erneut zugewiesen werden muss oder ob ein neues Template die sauberere Lösung ist.