Benutzer und Gruppen
Diese Funktion des Asset Managers ist nur verfügbar, wenn der angemeldete Benutzer die Rolle Administrator besitzt.
Der Asset Manager verfügt über ein Berechtigungssystem, das den Zugriff auf Funktionen der Applikation selbst auf die Daten steuert. Dazu werden Benutzer und Gruppen benötigt, die innerhalb der eigenen Datenbank des Asset Managers gepflegt werden.
Benutzerkonten werden verwendet, um Personen zu berechtigen, mit dem Asset Manager arbeiten zu können (Authentifizierung). Gruppen werden verwendet, um den Mitgliedern Rechte einzuräumen oder zu verweigern (Autorisierung). Diese Rechte beziehen sich entweder auf den Funktionsumfang der Applikation oder auf die Arbeit mit Daten.
Regeln des Berechtigungsmodells
- Es existieren zwei Standardgruppen, die nicht gelöscht, aber umbenannt werden können:
- Asset Manager Users, ID: {00000000-0000-0000-0000-000000000000}
- Asset Manager Administrators, ID: {ffffffff-ffff-ffff-ffff-ffffffffffff}
- Die Mitgliedschaft in der Gruppe Asset Manager Users ist Grundvoraussetzung dafür, um sich überhaupt am Asset Manager anmelden zu können. Das gilt auch für Mitglieder der Gruppe Asset Manager Administrators. Mitglieder der Gruppe Asset Manager Users haben standardmäßig Vollzugriff auf alle Objekte im Navigationsbaum, bis ihnen ein anderes Recht zugewiesen wurde. Sie besitzen keine Berechtigungen im Backstage-Menü für:
- Benutzer und Gruppen
- Konstanten
- Übersetzungen
- Mitglieder der Gruppe Asset Manager Administrators haben Vollzugriff in allen Bereichen, eine Abfrage von weiteren Berechtigungen findet nicht statt.
- Solange keine Einträge in der Tabelle __user existieren, oder es keine Mitglieder der Gruppe Asset Manager Administrators gibt, sind alle Anwender Administratoren (Umgehung des Henne-Ei-Problems).
- Wird ein Benutzer neu angelegt, wird dieser automatisch zur Gruppe Asset Manager Users hinzugefügt, damit sichergestellt ist, dass er sich anmelden kann.
- Berechtigungen werden beim Start der Applikation ausgelesen und gelten bis zum Neustart des Asset Managers.
- Berechtigungen werden auf Gruppenebene vergeben und beziehen sich ausschließlich auf die Nutzung von Daten. Mögliche Berechtigungen sind:
- Read-only (0): Daten können gelesen werden.
- Create/Update (1): Daten können gelesen, angelegt oder aktualisiert werden.
- Full Control/Delete (2, Standardwert): Daten können gelesen, angelegt, aktualisiert oder gelöscht werden.
- Access denied (256) : Ein Objekt ist nicht sichtbar (inkl. aller "Kind-Objekte"). Access denied ist das stärkste Recht, das alle anderen Rechte überschreibt.
- Read-only (0): Daten können gelesen werden.
- Berechtigungen innerhalb des Navigationsbaums werden nicht vererbt, Ausnahme: Access denied.
- Bei mehreren Gruppenmitgliedschaften mit unterschiedlichen Berechtigungen gewinnt das Recht mit dem höchsten Wert.
- Benutzer werden immer im Format Domain\User oder Computer\User angelegt.
Das nachfolgende Video zeigt, wie ...
- Benutzer angelegt, bearbeitet und gelöscht werden.
- Gruppen angelegt, bearbeitet und gelöscht werden.
- Gruppenmitgliedschaften bearbeitet werden.
Active Directory Integration
Bei der Verwendung dieser Form der Integration wird vorausgesetzt, dass sich alle beteilgten Komponenten (Asset Manager Server und alle Asset Manager Clients) innerhalb einer Microsoft Windows Domäne mit Active Directory befinden.
Im Gegensatz zu obiger Beschreibung können zur Authentifizierung von Benutzern auch zwei lokale Gruppen auf dem Asset Manager Server herangezogen werden. Diese Gruppen werden dazu verwendet um zu erkennen, ob der anfragende Benutzer zur Gruppe der Asset Manager Users oder Asset Manager Admins gehört. Hierbei gelten folgende Regeln:
- Ist der Benutzer Mitglied in der lokalen Gruppe der Asset Manager Admins, ist er Asset Manager Administrator.
- Ist der Benutzer Mitglied in der lokalen Gruppe der Asset Manager Users, ist er Asset Manager User.
- Ist der Benutzer Mitglied in beiden Gruppen, ist er Asset Manager Administrator.
- Ist der Benutzer Mitglied in keiner der beiden Gruppen, wird der Zugriff verweigert.
Zur Aktivierung der AD-Integration muss folgender Abschnitt der Konfigurationsdatei appsettings.json angepasst werden:
[...]
{
"ActiveDirectoryGroupSecurity": {
"Enabled": true,
"LocalAdminGroup": "Asset Manager Admins",
"LocalUserGroup": "Asset Manager Users",
"MaintenanceCronString": "0 0 * * *"
}
[...]
- Enabled: aktiviert die AD-Integration
- LocalAdminGroup: Name der lokalen Admin-Gruppe auf dem Server
- LocalUserGroup: Name der lokalen Benutzergruppe auf dem Server
- MaintenanceCronString: Ein Cron-String, der angiebt, in welchem Intervall die internen Asset Manager Benutzer mit den Gruppenmitgliedschaften der lokalen Gruppen synchronisiert werden sollen. Hierbei wird sichergestellt, dass es nur interne Asset Manager Benutzer gibt, die auch im Active Directory existieren. Außerdem werden anhand der Gruppenmitgliedschaften auch die internen Gruppen der Asset Manager Users und Asset Manager Admins aktualisiert.
Mit der Aktivierung der AD-Integration ändert sich auch intern das Verhalten des Asset Managers. Können ohne die Integration die internen Benutzer und Gruppen des Asset Managers innerhalb der Applikation verwaltet werden, werden mit der Integration die Mitgliedschaften der Benutzer zur Laufzeit auomatisch angepasset. Das hat zur Folge, dass sich auch der Funktionsumfang des Benutzer- und Gruppenmanagements wie folgt ändert:
- Benutzer können weder hinzugefügt, bearbeitet oder gelöscht werden, da dies automatisch über die Gruppenmitgliedschaften der lokalen Gruppen erfolgt.
- Die Mitgliedschaften zu den Gruppen von Asset Manager Users oder Asset Manager Admins kann nicht verändert werden, da dies automatisch über die Gruppenmitgliedschaften der lokalen Gruppen erfolgt.
Darüber hinaus können weiterhin interne Asset Managergruppen und deren Mitgliedschaften gepflegt werden.