fIn SOG ERP (VACOS) werden unterschiedlichste Funktionen über Rechte abgesichert, die bestimmten Benutzern zugeordnet werden können.
Die Rechtezuordnung findet dabei über Gruppen statt. Sie ist frei konfigurierbar, und somit stark installationsabhängig.
Um die Rechtestruktur zu erklären, folgt nun eine Beschreibung der Auswertung eines Rechts gegenüber einem gegebenen Sachbearbeiter.
Von SOG ERP (VACOS) werden "benannte Funktionen" festgelegt. Diese sind in der Quelle fest programmiert. Im ActiveSkin-Bereich können Funktionen auch selbst vereinbart werden.
Beispiel: "export" => Recht zur Übergabe von Daten aus AcitveSkin an Excel.
Sachbearbeitern kann über eine "Sonderrechtszuweisung" der Zugriff auf eine einzelne Funktion erlaubt oder verweigert werden.
Jeder Funktion wird genau eine der möglichen Rechtegruppen 00-99 zugewiesen.
Mit anderen Worten: In einer Rechtegruppe können unterschiedliche "benannte Funktionen" zu einer Gruppe zusammengefasst werden.
Für eine einzelnen Sachbearbeiter kann festgelegt werden, auf welche der möglichen Rechtegruppen 00-99 er Zugriff hat. Wird eine solche Sachbearbeiterbezogene Rechtegruppenzuordnung durchgeführt, entfällt die Auswertung der nachfolgend beschriebenen Sachbearbeitergruppenzuordnung.
Jeder Sachbearbeiter kann genau einer "Sachbearbeitergruppe" angehören (z. B. user, admin oder system)
Für "Sachbearbeitergruppen" können Sonderrechte auf einzelne "benannte Rechte" festgelegt werden. (Positiv oder Negativ!)
Für Sachbearbeitergruppen wird festgelegt, auf welche der möglichen Rechtegruppen 00-99 Zugriffsrechte bestehen.
Einzelne Funktionen können mit einer zur Laufzeit durchgeführten Passcodeabfrage versehen werden, die aktiv wird, wenn das entsprechende Recht nicht erteilt wurde.
Grundsätzlich ist die Möglichkeit ein Recht mit einem Passcode zu versehen im p003 - Sachbearbeiter- und Rechteverwaltung (sachv) an jedem Recht aktivierbar.
So kann eine Person welche den Passcode kennt, eine Freigabe im Arbeitsumfeld eines anderen Sachbearbeiters erteilen.
Allerdings kann die Aktivierung einer Passcodeabfrage dazu führen, dass der Passcode mehrfach eingegeben werden muss, wenn die Rechteprüfung im Prozess mehrfach erfolgt.
Es muss daher ggf. eine Optimierung der Abfragen durch die Entwicklung erfolgen.
Mit dem Funktionsnamen wird in der Tabelle "f045" Satzart "0" eine Rechtegruppe (0-99) bestimmt.
Über diese Rechtegruppe werden also unterschiedliche Funktionen zu einer Gruppe zusammengefasst.
Ist der Funktionsname nicht in der "f045" Satzart "0" erwähnt, so ist der Zugriff auf die Funktion gestattet.
Nun wird geprüft, ob für den Sachbearbeiter ein "Sonderrechte"-Datensatz für das zu ermittelnde Recht existiert. Über diesen "Sonderrechte"-Datensatz können die Zugriffsrechte eines einzelnen Sachbearbeiters auf einzelne Funktionen festgelegt werden. "f045" Satzart "4" "obj"="Sachbearbeiter" obj2="Funktionsname". Ist das Datenfeld "nummer" = "1" ist das Recht gewährt, bei "0" ist es nicht gewährt.
Existiert ein "Sonderrechte"-Datensatz für den Sachbearbeiter zu der Funktion, so legt dieser den Zugriff auf das Recht fest. Die Auswertung endet damit.
Nun wird ermittelt, ob es einen Funktionsgruppen-Datensatz für den Sachbearbeiter gibt. "f045" Satzart "3" obj="sachbearbeiter" legt in dem Datenfeld "daten" für 100 Funktionsgruppen fest, ob der Zugriff auf die Rechtegruppe gestattet ist, oder nicht. Existiert ein solcher Datensatz endet die Auswertung hier.
Nun wird die Zuordnung des Sachbearbeiters zu Sachbearbeitergruppen ausgewertet. Dazu wird aus der "f045" Satzart "5" obj="Sachbearbeiter" das Datenfeld "daten" ausgewertet. Dies legt die Sachbearbeitergruppe des Sachbearbeiters fest.
Nun wird erneut geprüft, ob es für die Sachbearbeitergruppe einen "Sonderrechte"-Datensatz für das zu ermittelnde Recht gibt. "f045" Satzart "4" "obj"="Sachbearbeitergruppe" "obj2"="Funktionsname". Ist das Datenfeld "nummer" = "1" ist das Recht gewährt, bei "0" ist es nicht gewährt.
Existiert ein "Sonderrechte"-Datensatz für die Sachbearbeitergruppe zu der Funktion, so legt dieser den Zugriff auf das Recht fest. Die Auswertung endet damit.
Als letztes wird nun der Funktionsgruppen-Datensatz für die Sachbearbeitergruppe gelesen. "f045" Satzart "3" obj="sachbearbeitergruppe" legt in dem Datenfeld "daten" für 100 Funktionsgruppen fest, ob der Zugriff auf die Rechtegruppe gestattet ist, oder nicht.
Existiert kein Funktionsgruppen-Datensatz zur Sachbearbeitergruppe wird ein Fehler gemeldet.
Neue Rechte werden über die SOG-Entwicklung eingeführt. Dazu wird über einen Datenbank-Update ein Datensatz in der Tabelle f045 erzeugt. Die Erstzuordnung des Rechtes zu einer Gruppe erfolgt nach folgendem Gruppen-Schema:
Gruppe 0: Alle Benutzer.
Gruppe 97: Niemand. Funktion ist gesperrt.
Gruppe 98: Administratoren vor Ort.
Gruppe 99: Nur "sogadm" vor Ort.
Projektindividuelle Absicherung von Menüpunkten über Rechte
Über die Konfigurationsdatei RechteZuordnung.csv kann eine individuelle Absicherung von Menüpunkten über Rechte erfolgen. Die Konfigurationsdatei wird wie üblich über die Variable "FRMCFGPATH" gesucht.
Sie besteht aus einzelnen Zeilen in denen durch Semikolon getrennt der Name des Menüpunkte (c084) und das zu prüfende Rechte eingetragen sind.
Beispiel:
ProjEssenAbrechnung;p654
ProjEssenBestell;p650