Versionen im Vergleich

Schlüssel

  • Diese Zeile wurde hinzugefügt.
  • Diese Zeile wurde entfernt.
  • Formatierung wurde geändert.

Inhalt
maxLevel2

Definition

Menüaufruf: (Konfiguration) - (Datenquellen) - (Datensatzfreigabe)

Die Datensatzfreigabe ist ein generisches Konzept für beliebige Berechtigungseinschränkungen auf Objektebene (Datensatzebene). Hierfür gibt es den Datenquellentyp Datensatzfreigabe (Record grant) im Konfigurationsmenü unter Datenquellen -> Datensatzfreigabe. Eine hier angelegte Datenquelle wird einem Businessobjekt zugewiesen, und erhält als einzigen Parameter $username übergeben. Die einzige zwingende Spalte (Rückgabewert) ist INTID. Zusammengefasst: Rein geht der Username --> Datensatzfreigabe verarbeitet gemäss Datenquelle --> Liste der sichtbaren Datensätze kommt raus.


Beispiel 1

Mithilfe dieses Konzeptes können praktisch alle Anforderungen an hierarchische oder mehrdimensionale Berechtigungen implementiert werden. Die Datenquellen lassen sich schachteln, nicht jede muss einem Businessobjekt zugewiesen sein.

Berechtigung datensatzfreigabe 1.gif


Beispiel 2

Zusätzlich gibt es zwei optionale Spalten (Rückgabewert) CANWRITE und CANDELETE. Liefern diese „true“ oder "false" bzw. 1 oder 0 zurück, validiert der Server zusätzlich, ob ein Benutzer auch schreibend und löschen auf das jeweilige Objekt (den jeweiligen Datensatz) zugreifen kann (Default ist „true“!).

ab Nuclos 4.8:
Zusätzliche optionale Spalte CANSTATECHANGE. Liefert diese Spalte einen anderen Wert als CANWRITE, so ist es z.B. möglich einen Statuswechsel zuzulassen, obwohl CANWRITE "false" sagt, bzw. umgekehrt. Allerdings müssen die generellen Rechte für einen Statuswechsel immer vorhanden sein! (Default ist automatisch der Wert aus CANWRITE).

Berechtigung datensatzfreigabe 2.gifImage Removed



Beispiel: Eine Mappingtabelle wurde eingeführt, um die Benutzerrechte bestimmten Standorten zuzuteilen.


Die Datensatzfreigabe wurde dann entsprechend erweitert:


Alle anderen bisherigen Berechtigungsverfahren existieren weiterhin und werden (höherrangig) verarbeitet.

Hinweis

Achtung: Die Datensatzfreigaben müssen unter "Administration > Benutzergruppe" all jenen Benutzergruppen zugeordnet werden, für die diese Einschränkungen greifen sollen.


Hinweis

Achtung: in Postgres muss die intid-Spalte klein geschrieben sein !




Berechtigung datensatzfreigabe 3.gif