Skip to main content

Rollenfilter & Feldbedingungen (ab & inkl. Squeeze 2.5)

Rollenfilter und Feldbedingungen werden genutzt um das Anzeigen, Validieren, Zurückstellen und Löschen von Dokumenten in Squeeze zu berechtigen.

Rollenfilter

Rollenfilter (im Folgenden kurz "Filter") gehören zum Autorisierungskonzept von SQUEEZE und unterstützen bei feldbasierter Autorisierung von Dokumenten. Mittels dieser Filter ist es möglich für unterschiedliche Benutzergruppen unterschiedliche Dokumente (auch innerhalb einer Dokumentenklasse) zu berechtigen.


Konfiguration

Jeder Rolle können beliebig viele Filter hinzugefügt werden.

Ein Filter steht im Bezug zu einer Dokumentenklasse und berechtigt den Zugriff (lesend & schreibend) auf alle Dokumente dieser Klasse.

Auswertung

Rollenfilter werden mit einem logischen Oder ausgewertet. D. h., wenn einer Rolle mehrere Filter zu der selben Dokumentenklasse zugeordnet sind, dann genügt bereits eine positive Auswertung eines Filters (und seiner Feldbedingungen) aus, um Zugriff auf das Dokument zu erhalten.

Dieses Verhalten gilt auch dann, wenn ein Benutzer Mitglied mehrerer Rollen mit wiederum diversen Filtern ist.

Zusammengefasst: Ein Benutzer erhält Zugriff auf ein Dokument, sobald mindestens eine seiner Rollen über einen Rollenfilter den Zugriff gewährt.

Feldbedingungen

Soll nur auf eine Teilmenge der Dokumente einer Dokumentenklasse berechtigt werden, können Rollenfilter um Feldbedingungen ergänzt werden. Diese erlauben die Filterung von Dokumenten auf Basis ihrer Feldwerte.

Aktuell (Squeeze 2.0 - 2.4) können nicht alle konfigurierbaren Filter korrekt ausgewertet werden. Die Konfiguration solcher Filter ist zwar möglich, sollte aber vermieden werden.

Beispiel: Die Filterung auf ein Textfeld mit einem "Größer als" Komparator (bspw. "Lieferantenname größer als 20") würde zu einem Suchfehler führen.

Wir arbeiten kontinuierlich an Verbesserungen an diesem System. Weiteres finden Sie unter der Überschrift "Besonderheiten".

SQUEEZE 1 unterstützt mehr Komparatoren als SQUEEZE 2. Sollten Sie einen Komparator nutzen, der nicht mehr unterstützt wird, kontaktieren Sie bitte den Support, wenn Sie migrieren möchten.

Konfiguration

An einem Filter können beliebig viele Feldbedingungen definiert werden. Eine Bedingung ist zusammengesetzt aus:

  • Dem Feld dessen Inhalt geprüft werden soll
  • Dem Komparator, der zur Prüfung genutzt wird
  • Dem Vergleichswert (kann von einigen Komparatoren ignoriert werden)

Besonderheiten

Das hier sind bekannte Sonderheiten bei der Konfiguration der Feldbedingungen. Diese werden laufend dokumentiert:

Betragsfelder
  • Betragsfelder mit den folgenden Kombinationen aus Tausendertrennzeichen und Dezimaltrenner konfiguriert werden:
    • 2187,50
    • 2187.50
    • 2.187,50
    • 2,187.50

Auswertung

Feldbedingungen werden anders als Rollenfilter mit einem logischen Und verknüpft ausgewertet.

Es müssen also alle Bedingungen erfüllt sein, damit ein Rollenfilter den Zugriff auf ein Dokument gewährt.

Zusammenspiel mehrerer Rollenfilter

Wenn für einen Benutzer mehrere Rollenfilter (mit wiederum diversen Feldbedingungen) ausgewertet werden, dann gilt weiterhin, dass nur einer der Rollenfilter positiv ausgewertet werden muss.

Ein Beispiel:

  • Eine Rolle hat zwei Filter. Der erste Filter hat keine Feldbedingungen. Der zweite Filter hat eine Feldbedingung.
  • Bei der Auswertung dürfen Nutzer alle Dokumente der Dokumentenklasse sehen.

Zusammenspiel mit vererbten Rollen

Ist ein Nutzer Mitglied mehrerer Rollen (durch explizite Zuordnung oder Rollen-Vererbung), so werden Rollenfilter und Feldbedingungen aller Rollen bei der Auswertung berücksichtigt.
Typischerweise fällt dies auf, wenn ein Admin-Benutzer mit der root-Rolle alle Dokumente des Systems sehen soll, dies aber nicht tut. Das könnte daran liegen, dass der root-Rolle ein Rollenfilter ohne Feldbedingungen fehlt.

Beispiele

Konfiguration

Im Folgenden Beispiel ist zu sehen:

  • Für die Rolle "System Administration" wurde ein Rollenfilter für die Dokumentenklasse "Eingangsrechnung" konfiguriert (1)
  • An diesem Rollenfilter hängt eine Feldbedingung. Dokumente müssen im Feld "Barcode" exakt den Wert "123" enthalten, um Usern angezeigt werden zu dürfen. (2)

image-1669044388326.png

Berücksichtigung in der UI

Dieser Abschnitt stellt dar, in welchen Bereichen der Software, Rollenfilter und Feldbedingungen ausgewertet werden und in welchen nicht. Aus Performance-Gründen ist es nicht überall möglich diese Filter anzuwenden.

Rollenfilter und Feldbedingungen werden aus Performance-Gründen nicht überall in der UI ausgeführt.

Auf dem Dashboard

  1. Die angezeigte Dokumentensumme in auf den Validierungskacheln berücksichtigt die Rollenfilter nicht.
  2. Ebenso berücksichtigt die Warteschlange im oberen Bereich die Rollenfilter nicht.

image-1670233208785.png

Dokumentensuche

  • In der eigentlichen Dokumentensuche (hier ist die Trefferliste zu sehen), werden Rollenfilter berücksichtigt.
  • Zu erkennen ist das bspw. daran, dass in der Warteschlange 5 Dokumente in der Validierung gezeigt werden, entsprechend der Rollenfilter aber nur 1 Dokument dem Validierer angezeigt werden.

image-1670233303943.png

Validierung

  • Wenn ein Dokument direkt in der Validierung angezeigt werden soll, werden Rollenfilter berücksichtigt.

image-1670233401253.png

Administration

  • In der Administration werden Rollenfilter i. A. nicht angewandt, um gewährleisten zu können, dass Administratoren technische Probleme wie "liegengebliebene" Dokument sehen und lösen können.

image-1670233886771.png

FAQ

Es fehlen Dokumente im Validierungsschritt

Bei der Verwendung von Feldbedingungen kann es vorkommen, dass diese nicht korrekt konfiguriert wurden. Das äußert sich dann darin, dass scheinbar eine andere Anzahl an Dokumenten im Validierungsschritt dargestellt wird (Vergleiche Timeline (1) und Ergebnisse der Dokumentensuche (2)). Dieses Verhalten tritt auch bei Admins mit der Root-Rolle auf.

Das ist kein Softwarefehler, sondern Folge der Konfiguration. I. d. R. tritt das bei Projekten auf, wo viele Rollen mit eigenen Filtern eingesetzt werden.

 

image-1692014088720.png


Beispiel-Schaubild

Problem verifizieren: So ist zu testen, ob die Konfiguration der Rollenfilter das Problem für die scheinbar fehlenden Dokumente sind. Wie im vorherigen Text erklärt, erben die Rollen ihre Rollenfilter und deren Rollenfilter-Feldbedingungen von unten nach oben, gehen Sie wie folgt vor um den Fehler zu ermitteln:

  1. Prüfen Sie die Rolle die ihren Nutzer berechtigt und ermitteln Sie welche Rollen die Rolle bereits durch die Vererbung einschließt.
  2. Kontrollieren Sie nun jede Rolle und deren Rollenfilter achten Sie auf die Rollenfilter-Feldbedingungen.

Eine Rolle die Zugriff auf alle Dokumentenklassen-Dokumente haben soll muss einen Rollenfilter auf die bezogene Dokumentenklasse besitzen.

Ein Beispiel-Fehlerbild:

Ein Admin kann weniger Dokumente auffinden, als in der Verarbeitungskette (Punkt 1. Abbildung "Beispiel-Schaubild") angezeigt werden. Es gibt mehrere untergeordnete Rollen, die Rollenfilter-Feldbedingungen auf das Feld "Mandant", bspw. "Mandant = 1000", "Mandant = 2000" usw. haben.

  • Stellen Sie sicher, dass die Admin-Rolle einen Rollenfilter auf die komplette Dokumentenklasse besitzt. Der Rollenfilter darf keine Feldbedingungen besitzen die den Zugriff einschränken.