Zum Hauptinhalt springen
Version: 2022.2.x

Benutzer- und Rollenverwaltung

In diesem Abschnitt werden die Methodiken beschrieben, wie ein Nutzer angelegt werden kann. Zudem wird hierbei auf die Nutzerrollen näher eingegangen.

Nutzer anlegen

Um einen Nutzer anzulegen müssen folgende Schritte vollzogen werden:

  1. Passwort generieren
  2. Nutzer in Datenbanktabelle DMC_USERS anlegen
  3. Nutzer in Datenbanktabelle DMC_ROLES_USERS Rollen zuweisen

1. Passwort generieren

Die Passwörter innerhalb der DMC werden nur gehasht abgelegt. Daher muss das gewünschte Passwort vor dem Anlegen des Nutzers gehasht werden. Hierfür muss ein autorisierter Nutzer folgenden API-Endpunkt aufrufen:

example-dmc-endpoint.de/api/auth/hash/hierpasswortangeben

2. Nutzer anlegen

Das tatsächliche Anlegen des Nutzers geschieht über die Datenbank, auf welcher die DMC-Metadaten liegen. Die Nutzer werden über die Tabelle DMC_USERS angelegt. Die Tabelle verfügt über die Felder user_id, user_name, password und is_locked. Beim Hinzufügen eines Datensatzes muss user_id nicht angegeben werden, da diese vom System hochgezählt wird. user_name bezeichnet den Namen des Nutzers, über welchen er sich beispielsweise einloggt oder über dem ihn Zugriffsberechtigungen gegeben werden können. Unter password muss das zuvor gehashte Passwort angegeben werden. Der Nutzer meldet sich jedoch mit dem ungehashten Passwort an. Um ein Nutzerkonto zu sperren, kann is_locked auf 'j' gesetzt werden. Andernfalls ist hier 'n' zu setzen.

3. Rollen zuweisen

Damit der angelegte Nutzer auch auf die DMC zugreifen kann, muss er einer Nutzergruppe zugeordnet werden. Dies kann über die Tabelle DMC_ROLES_USERS angelegt werden. Hierbei muss die ID des Nutzers aus DMC_USERS als user_id und die ID der Nutzergruppe aus DMC_ROLES als role_id als ein Datensatz angelegt werden. Darauf kann der Nutzer mit den Rechten der Gruppe auf die DMC zugreifen.

Rollen anlegen

Die Rollen der DMC werden über die Tabelle DMC_ROLES verwaltet. Um eine neue Nutzergruppe zuzuweisen, wird in dieser Tabelle ein Datensatz mit dem role_name angelegt. Die entsprechende role_id wird durch das System hochgezählt und angelegt.

Soll eine Rolle mit einer entsprechenden AD-Rolle verknüpft sein, muss diese in der Tabelle dmc_role_mapping entsprechend auf die DMC-interne Rolle über deren role_name zugeordnet werden.

Um Rollen und Nutzern Zugriffsrechte zu vergeben, wird die Rechtevergabe einer Tabelle genutzt.

Administratorrolle

Die Rolle des Administrators ist eine gesonderte innerhalb der DMC. Nur Nutzer dieser Gruppe können auf alle Inhalte sowie die Administratorenfunktionen zugreifen. Standardmäßig ist die Admin-Rolle als 'admin' benannt. Soll dieses Verhalten angepasst werden, so kann über die Umgebungsvariable dmc_damin_group ein neuer Name gesetzt werden.