Rechteverwaltung
Die Rechteverwaltung der Metadaten-Elemente orientiert sich an die Rechteverwaltung der Sage 100, da die Behandlung der Rechte identisch ist. Genauer gesagt unterscheidet die Sage 100 nicht die Rechteverwaltung der Metadaten-Elemente und die Rechteverwaltung der Applikation. Daher müssen auch die Rechte der Metadaten-Elemente in die Tabellen der Mandanten-Datenbank eingetragen werden. Dies geschieht, wie alle Datenbankänderungen, via Updateskript. Für die Standard-Elemente (also Metadaten-Elemente von Sage) werden die Berechtigungen für die Neuanlage einer Datenbank noch zusätzlich in die Template-Datenbank der Sage 100 eingetragen.
Für die Rechteverwaltung der Sage 100 müssen die Prüfungen der Rechte in den UI-Elementen implementiert werden. Als Permissionname wird dafür in der Regel der Formularname verwendet. Da man den Permissionnamen aber auch an die Prüfung übergeben muss, könnte hier auch jeder andere Text (String) verwendet werden. Bei den Metadaten-Elementen ist das Verfahren allerdings anders. Der Permissionname ist abhängig vom Kontext und wird vom Client gebildet und an die Rechteverwaltung der Sage 100 übergeben. Damit ist der Permissionname nicht frei vergebbar. Die Bildung des Namens wird am Ende dieser Seite erklärt. Diese Erklärung dient nur dem Verständnis. Die Permissionnamen muss man nicht selber bestimmen, sondern sie werden im AppDesigner erstellt, der den korrekten Kontext kennt. Dabei wird eine Textdatei erzeugt, die gleichzeitig als Updateskript-Datei verwendet werden könnte.
Die Handhabung von Updateskripten wird hier nicht behandelt. Das Vorgehen ein Updateskript in das bestehende Updateverfahren von Sage zu integrieren, ist im Entwicklerhandbuch des Developer Programms beschrieben.
Für folgende Metadaten-Elemente müssen Berechtigungen erzeugt werden:
- Datenquelle
- Datensatz
- Datenstruktur eines Daten-Edit-Elementes
- Listen-Element
- Diagramm-Element
- Baum-Element
- Master-Detail-Element
- Daten-Edit-Element
- Berichte
- Regiezentrum
Dazu kann ein einzelnes Element oder eine Gruppe selektiert werden. Im Kontextmenü oder im Menüband wählt man dann die Option "Berechtigungen erzeugen".
Da die Rechteverwaltung der Metadaten-Elemente in die Rechteverwaltung der Sage 100 integriert ist, ist auch die Vergabe der Rechte identisch. Die Berechtigungen werden im Administrator als Baum angezeigt. Die Anzeige im Baum wird durch einen Eintrag in der Haupttabelle der Berechtigungen definiert. Für einige Elemente ist die Anzeige fest vorgegeben, für andere Elemente aber nicht. Diese Elemente haben die Eigenschaft "Pfad für Berechtigung (Desktop)". Im einzelnen sind dies die folgenden Elemente:
- Master-Detail-Element
- Daten-Edit-Element
- Berichte
Die Berechtigungen für das Regiezentrum haben ebenfalls eine Eigenschaft dafür ("Berechtigungsname für Access-Wurzelknoten"). Die Anzeige im Administrator ist für Regiezentrumseinträge vorgegeben. Mit dem Eintrag in diese Eigenschaft definieren Sie, in welchem Hauptzweig (oberster Knoten des Regiezentrums) die Einträge angezeigt werden sollen.
Aufbau des Permissionnamen
Die folgenden Informationen zum Bilden des Rechteschlüssels werden vom Client gesendet:
Eigenschaft | Beschreibung | ||||||||||||||||||||||||
Token | Kennung der Anwendung; anhand dieser wird der Präfix des Rechteschlüssels gemäß folgender Tabelle ermittelt:
| ||||||||||||||||||||||||
SubContext | Ergänzende Kontext-Angabe, falls erforderlich:
| ||||||||||||||||||||||||
PartContext | Name des Elements, welches den Rechtekontext liefert:
| ||||||||||||||||||||||||
PartKey | Voll qualifizierter Name des Elements, z.B. lstVKBelegPos.Sage.Wawi | ||||||||||||||||||||||||
DetailDialogContext | Für Detail-DEE-Dialoge muss beim Öffnen der Kontext des Parent-MDEE übergeben werden, da im Detail-DEE die gleichen Feldberechtigungen verwendet werden wie im Parent-MDEE. Aufbau: Key des Parent | Name des Host-Feldes für das MDEE im Parent | Selektiertes Template im MDEE Beispiel: ediKundenstamm.Sage.System|Ansprechpartner|Standard |
Element-Rechteschlüssel
Der Schlüssel für UI-Elemente (Elemente / Parts) wird wie folgt gebildet:
Syntax:
<Präfix>_<Partkey>
<Präfix>_<SubContext>_<Partkey>
Beispiele:
Application_lstVKBelegPos.Sage.Wawi
Application_mdtVKBelegPositionen.Sage.Wawi_lstVKBelegPos.Sage.Wawi
SData-Rechteschlüssel
Bei einem Direktzugriff über SData wird als Partkey der Name der Datenquelle übergeben und kein SubContext:
Syntax:
<Präfix>_<Partkey>
Beispiel:
SData_RealTimeData_dtsVKBelegPos.Sage.Wawi
Handhabung bei den Elementen
Metadaten – Daten | Beschreibung |
Geschäftsprozess | Keine Sage 100 Rechte möglich |
Datenquelle | Beim Lesen von Daten: Prüfung <Part-Rechteschlüssel> oder Prüfung <SData-Rechteschlüssel> Prüfung aller Feldnamen |
Datensatz | Prüfung über das zugehörige UI-Element |
Datenreferenz | Prüfung über das zugehörige UI-Element |
Datenstruktur | Keine Sage 100 Rechte möglich |
Metadaten – Oberfläche | Beschreibung |
Kontextmenü | Keine Sage 100 Rechte möglich |
Kontextmenüeintrag | Keine Sage 100 Rechte möglich |
Listen-Element | Prüfung <Part-Rechteschlüssel>; Prüfung aller Feldnamen |
Diagramm-Element | Prüfung <Part-Rechteschlüssel>; Prüfung aller Feldnamen |
Browser-Element | Prüfung <Part-Rechteschlüssel>; zusätzlich wird der Rechteschlüssel "Internetzugriff" geprüft |
Link-Element | Prüfung <Part-Rechteschlüssel> |
Daten-Edit-Element | Prüfung <Part-Rechteschlüssel> |
Multi-Daten-Edit-Element | Keine Sage 100 Rechte möglich
|
Dateninfo-Element | Prüfung <Part-Rechteschlüssel> |
Datensuch-Element | Keine Sage 100 Rechte möglich gilt für das gesamte Element, also inkl. der enthaltenen Listen-Elementen sowie Datenreferenzen |
Selektionselement | Keine Sage 100 Rechte möglich gilt für das gesamte Element, also inkl. Datenrefenzen |
Master-Detail-Element | Prüfung <Part-Rechteschlüssel> |
Pivot-Element | Prüfung <Part-Rechteschlüssel> Prüfung aller Feldnamen |
Bericht | Prüfung <Part-Rechteschlüssel> |