Zugriffsrechte - CX_SECURITY_SET
Objekte dieser Klasse dienen dazu, Objekte der Klassen CX_CLASS_SECURITY, CX_OBJECT_SECURITY und CX_MESSAGE_SECURITY sowie weitere CX_SECURITY_SET-Objekte zusammenzufassen.
CX_SECURITY_SET ist als Zusammenfassung von Security-Objekten gedacht, die Zugriffsrechte für disjunkte Objektmengen beschreiben - d.h. der Fall einer Spezialisierung für die Kopplung mit Datenfeld specializations liegt nicht vor. Man kann aber auch - statt der Unterordnung mittels specializations - allgemeine und spezielle Beschreibungen in einem Security-Set zusammenfassen wenn die Reihenfolge in securityObjects garantiert, dass spezielle Objekte immer vor allgemeineren kommen.
Beispiel:
Es existieren die Klassen A, A1, A2 und B. A1 und A2 sind von A abgeleitet, während B unabhängig von A ist:
Zugriff zu Objekten der Klassen A, A1 und B werden mit CX_CLASS_SECURITY-Objekten definiert. Für einige Instanzen von A1 sollen abweichende Rechte gelten (CX_OBJECT_SECURITY). Möglichkeiten, dies zu realisieren sind
- Nur die Security-Objekte für die Klassen A und B sind im Security-Set. Der allgemeinen Angabe für Klasse A wird die Spezialisierung für die abgeleitete Klasse A1 und dieser das CX_OBJECT_SECURITY-Objekt untergeordnet:
- Alle Security-Objekte sind direkt dem Security-Set zugeordnet. Die Reihenfolge der Security-Objekte, die sich auf A und A1 beziehen ist wesentlich:
Beide Varianten sind - bis auf das Zeitverhalten - gleichwertig. An der Kontrolle des Zugriffs zu Objekten der Klasse B sind im ersten Fall zwei, im zweiten Fall vier Security-Objekte beteiligt.