Prüfe auf Berechtigung (Formulardesigner)
Die Verhaltensweise Prüfe auf Berechtigung (Formulardesigner) prüft im Kontext eines Formulars die Berechtigungen der Rolle der Session gegen eine Positivliste im Parameter Berechtigungen.
Unabhängig vom Ergebnis der Prüfung werden ggf. anliegende Eingangsdaten ($input) des Verhaltens an die Aktionen weitergeben:
Die Aktionen bei "wahr" werden ausgeführt, sofern die in der aktuellen Sitzung verwendete Rolle über mindestens eine der zeilenweise aufgelisteten Berechtigungen verfügt.
Die Aktionen bei "falsch" werden ausgeführt, sofern keine der aufgelisteten Berechtigungen für die in der aktuellen Sitzung verwendeten Rolle zugewiesen ist.
►WICHTIG◄ Die Prüfung bezieht sich ausschließlich auf den per Rolle definierten allgemeinen Status bzgl. einer Berechtigung. Der Einfluss von Firmenfreigaben in Verbindung mit Besitz und Beteiligung an einem konkreten Objekt spiegelt sich daher nicht im Prüfergebnis. Erlaubt die Rolle der Session etwa das Löschen von Sendungen, dann fällt das Prüfergebnis bzgl. "Löschen" (delete) auch dann positiv aus, wenn in der Erfassungsmaske eine Sendung ausgewählt ist, die mangels Firmenfreigabe bzw. Beteiligung ausgehend von der Firma der Session zwar gelesen, aber nicht gelöscht werden darf.
Parametrierung der Berechtigungen:
Der Parameter ist als mehrzeiliges, skalierbares Textfeld ausgeführt, in dem jede Zeile einen relativen oder absoluten Berechtigungspfad in der internen Schreibweise des Systems repräsentieren muss.
Absolute Pfade definieren eine lückenlose Kette von Knoten der Berechtigungshierarchie, die ab der Wurzel (also mit eine Schrägstrich "/") beginnt.
Relative Pfade können nur im Kontext einer Erfassungsmaske verwendet werden. Sie verwenden den Berechtigungsknoten für den jeweiligen Entitätstyp als Einstiegspunkt für einen ein- oder mehrstufigen Pfad.
Pfade beider Typen können nicht nur mit dem Namen einer individuellen Berechtigung enden, sondern mit dem Namen eines Berechtigungsknotens, dem weitere Elemente direkt oder indirekt untergeordnet sind. In diesem Fall erkennt die Prüfung jede der untergeordneten Berechtigungen als "Treffer" an, so dass die Aktionen bei "wahr" ausgeführt werden, wenn die Rolle über eine Beliebige Berechtigung unterhalb des Knotens verfügt.
Grundsätzlich kann der Parameter Berechtigungen als Text direkt editiert werden. Allerdings empfiehlt sich die Verwendung des über den Button Auswählen verfügbaren Auswahldialogs, um sicherzustellen, dass nur gültige Pfade im Text erscheinen.
|
Der Auswahldialog visualisiert die Berechtigungshierarchie analog zur Erfassungsmaske für Rollen als Baumstruktur ab, in der beliebige Knoten oder Berechtigungen aus- und abgewählt sein können. Die Handhabung der Auswahlfunktionen u. a. in Kombination mit der Suchfunktion funktioniert wie dort beschrieben.
Beispiel: Die Auswahl im Beispiel links ergibt ausgehend von einem anfangs leeren Feld für Berechtigungen per Übernehmen folgendes Ergebnis:
Ergänzt man diese Liste um eine weitere Zeile mit dem Eintrag "/document/print" (für "Dokument/Drucken") besteht eine Rolle die Prüfung, sofern sie eine Berechtigung für ein beliebiges der zahlreichen Ausgabeformate im Knoten "Drucken" (für Dokumente) umfasst, obwohl der Knoten "Drucken" im Baum beim nächsten Klick auf Auswählen trotzdem leer dargestellt wird. |
|
Die Prüfung im Beispiel links gibt im Parameter Berechtigungen zwei Berechtigungsknoten in relativen Pfaden an. Mit dieser Konfiguration könnte das Verhalten im Kontext von Erfassungsmasken für unterschiedliche Geschäftsobjekttypen eingesetzt werden, um den Zugriff der Rolle der Session auf Einträge für Arbeitsstatus und Trackingstatus für den jeweiligen Geschäftsobjekttyp pauschal zu prüfen. Der per Klick auf Auswählen angezeigte Auswahldialog würde für diese Konfiguration allerdings keine Auswahl anzeigen. |