CX_ATTRIBUTE_SECURITY
Klassenhierarchie
- CX_CLASS
- CX_ATTRIBUTE_SECURITY
Beschreibung:
Die Klasse CX_ATTRIBUTE_SECURITY liefert die Elemente mit denen Objekte der Klassen CX_CLASS_SECURITY und CX_OBJECT_SECURITY Rechte für einzelnen Datenfelder beschreiben können.
Im Feld name kann nicht nur der Name eines Datenfelds sondern auch ein navigierender Zugriffsausdruck angegeben werden. Für Funktionsaufrufe und Indizes gelten folgende zusätzliche Verallgemeinerungen:
Werden Funktionsparameter weggelassen:
. . . a.Foo().b ...
so trifft das Objekt für alle InstantView®-Zugriffe mit Ausdrücken der obengenannten Form zu, unabhängig davon, welche Parameter für den Aufruf von Foo() angegeben sind. Werden jedoch im CX_ATTRIBUTE_SECURITY-Objekt jedoch Funktionsparameter angegeben, so beschreibt dieses nur Zugriffe mit exakt identischem Ausdruck.
Werden Indizes weggelassen, wie z.B. in
. . . a.collection[].b . . .
so beschreibt das Objekt die Rechte aller Zugriffe mit Ausdrücken der obengenannten Form mit beliebigen Indexangaben. Wenn im CX_ATTRIBUTE_SECURITY-Objekt ein Index angegeben wird, gilt es nur für Zugriffsausdrücke mit exakt diesem Index.
Beispiele:
CX_ATTRIBUTE_SECURITY::name | gilt für InstantView®-Zugriffsausdruck | ? |
birthday.AgeInYMD() | birthday.AgeInYMD(today) | ja |
birthday.AgeInYMD(x) | birthday.AgeInYMD(today) | nein |
|
|
ja |
|
|
nein (auch wenn InstantView®-Variable x den Wert 0 hat) |
sehe auch ClassiX® Information Security System
Code-Beispiel:
[ INITIALIZE: "CX_ATTRIBUTE_SECURITY::name" SetFormat [ "CX_ATTRIBUTE_SECURITY::" Push(Flag0), COLOR GREEN ] SetFormat [ "CX_ATTRIBUTE_SECURITY::" Push(Flag1), COLOR LIGHTRED ] SetFormat String(CX_ATTRIBUTE_SECURITY::name, ACCEPT_DROP, 60, 4, 200) Checkbox(CX_ATTRIBUTE_SECURITY::flags[0], 270, 5, 80, T("Lesen", "Read")) Checkbox(CX_ATTRIBUTE_SECURITY::flags[1], 350, 5, 100, T("Schreiben", "Write"))
Für die einzelne Datenfelder gelten folgende Werte:
name | STRING | ein Zugriffsausdruck |
|
Lesen | 1 - erlaubt, 0 - verboten |
|
Schreiben | 1 - erlaubt, 0 - verboten |
Datenfeld | Typ | Referenz-Klasse | I* | Kurzbeschreibung |
---|---|---|---|---|
flags | INTEGER | Rechte | ||
name | STRING | Zugriffsausdruck |
* I = Indizierbares Datenfeld
Modul | Kurzbeschreibung |
---|---|