Diese Anweisung ändert den Schutz für die angegebenen Elemente der zugewiesenen Bibliothek. Die Anweisung ist für alle Elementtypen zulässig.
*UNCHANGED bedeutet, dass die jeweiligen Elementschutzattribute unverändert bleiben.
MODIFY-ELEMENT-PROTECTION | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
|
ELEMENT = *LIBRARY-ELEMENT(...)
Angaben für die gewünschte Elementbezeichnung.
LIBRARY = *STD / <filename 1..54 without-vers> / *LINK(...)
Angabe der Bibliothek, in der sich das Element befindet.
LIBRARY = *STD
Die durch OPEN-LIBRARY eröffnete Bibliothek.
LIBRARY = <filename 1..54 without-vers>
Name der Bibliothek, in der sich das Element befindet.
LIBRARY = *LINK(...)
Die über den Dateikettungsnamen zugewiesene Bibliothek.
LINK-NAME = <structured-name 1..8>
Dateikettungsname der Bibliothek, der vor dem Aufruf von LMS mit einem /ADD-FILE-LINK-Kommando vereinbart wurde.
ELEMENT = *ALL / <composed-name 1..64 with-under with-wild(132)>(...)
Name des Elementes, dessen Schutz-Attribute geändert werden soll.
VERSION = *HIGHEST-EXISTING / *ALL / *UPPER-LIMIT /
<composed-name 1..24 with-under with-wild(52)>
Version, die das Element besitzt.
VERSION = *HIGHEST-EXISTING
Die Schutz-Attribute des Elementes mit der höchsten bestehenden Version werden geändert.
VERSION = *UPPER-LIMIT
Die in der Bibliothek unter dem angegebenen TYPE und Namen höchstmögliche Version X’FF’ des Elementes wird verwendet.
VERSION = <composed-name 1..24 with-under with-wild(52)>
Explizite Angabe der Version des Elementes.
BASE = *STD / <composed-name 1..24 with-under with-wild>
Präfix für die Versionsauswahl. Im Zusammenhang mit VERSION=*HIGHEST-EXISTING kann damit die höchste Version mit einem bestimmten Präfix angesprochen werden. BASE=*STD wirkt wie BASE=*. Näheres zur Angabe der Basis siehe "Versionsbezeichnungen".
TYPE = *LMS-DEFAULT / *ALL / <alphanum-name 1..8 with-wild(20)>
Typ, den das Element besitzt.
USER-DATE = *ANY / *TODAY / <date 8..10 with-compl> / *INTERVAL(...)
Datum, das vom Benutzer vergeben wurde.
USER-DATE = *ANY
Das Element besitzt ein beliebiges Datum.
USER-DATE = *TODAY
Das Element mit dem aktuellen Tagesdatum wird verwendet.
USER-DATE = <date 8..10 with-compl>
Das Element, dessen Datum explizit in der Form [JJ]JJ-MM-TT eingegeben wird, wird verwendet.
USER-DATE = *INTERVAL(...)
Alle Elemente, die in dem angegebenen Zeitraum liegen, werden verwendet.
FROM = 1900-01-01 / <date 8..10 with-compl>
Beginn des Zeitraums.
TO = *TODAY / <date 8..10 with-compl>
Ende des Zeitraums.
CREATION-DATE = *ANY / *TODAY / <date 8..10 with-compl> / *INTERVAL(...)
Erzeugungsdatum des Elementes. Beschreibung der Operanden siehe Operand USER-DATE dieser Anweisung.
MODIFICATION-DATE = *ANY / *TODAY / <date 8..10 with-compl> / *INTERVAL(...)
Datum der letzten Änderung für das Element. Beschreibung der Operanden siehe Operand USER-DATE dieser Anweisung.
PROTECTION = *ANY / *NONE / *PARAMETERS(...)
Elementschutz für die ausgewählten Elemente.
PROTECTION = *ANY
Die Elemente haben beliebigen Elementschutz.
PROTECTION = *NONE
Die Elemente haben keinen zusätzlichen Elementschutz.
PROTECTION = *PARAMETERS(...)
Angabe, mit welchem Schutz die auszuwählenden Elemente versehen sind.
READ = *ANY / *NONE / *BY-GUARD(...) / *PARAMETERS(...)
Schutzeinstellung bezüglich Lesen, die dem Element zugeordnet ist.
READ = *ANY
Es werden Elemente unabhängig vom Leseschutz ausgewählt.
READ = *NONE
Es werden nur Elemente ausgewählt, für die kein Leseschutz eingestellt ist.
READ = *BY-GUARD(...)
Nur Elemente, für die Leseschutz durch GUARD eingestellt ist, werden ausgewählt.
GUARD-NAME = <filename 1..40 without-cat-gen-vers with-wild>
Nur Elemente, für die Leseschutz durch einen zum Muster passenden GUARD-NAMEN eingestellt ist, werden ausgewählt.
READ = *PARAMETERS(...)
Nur Elemente, für die Leseschutz durch BACL und/oder Kennwort eingestellt ist, werden ausgewählt.
USER = *ANY / *NONE / *ALL / list-poss(3): *OWNER / *GROUP / *OTHERS
Der Kreis der Leseberechtigten, der dem Element zugeordnet ist.
USER = *ANY
Es werden Elemente unabhängig vom Kreis der Leseberechtigten ausgewählt.
USER = *NONE
Nur Elemente, für die an niemanden Leserecht vergeben ist, werden ausgewählt.
USER = *OWNER
Nur Elemente, für die der Eigentümer der Bibliotheksdatei Leserecht hat, werden ausgewählt.
USER = *GROUP
Nur Elemente, für die die Gruppe des Eigentümers der Bibliotheksdatei
Leserecht hat, werden ausgewählt.
USER = *OTHERS
Nur Elemente, für die Leserecht für OTHERS vergeben ist, werden ausgewählt.
PASSWORD = *ANY / *YES / *NO
Kennwort bezüglich Lesen, das dem Element zugeordnet ist.
PASSWORD = *ANY
Es werden Elemente unabhängig vom Kennwort ausgewählt.
PASSWORD = *YES
Nur Elemente, die durch ein Lesekennwort geschützt sind, werden ausgewählt.
PASSWORD = *NO
Nur Elemente, die durch kein Lesekennwort geschützt sind, werden ausgewählt.
WRITE = *ANY / *NONE / *BY-GUARD(...) / *PARAMETERS(...)
Schreibrecht. Nur Elemente werden ausgewählt, für die dieses Recht in der angegebenen Art vergeben ist.
Beschreibung der Operanden analog zu READ.
EXEC = *ANY / *NONE / *BY-GUARD(...) / *PARAMETERS(...)
Ausführungsrecht. Nur Elemente werden ausgewählt, für die dieses Recht in der angegebenen Art vergeben ist.
Beschreibung der Operanden analog zu READ.
HOLD = *ANY / *NONE / *BY-GUARD(...) / *PARAMETERS(...)
Ausleihrecht. Nur Elemente werden ausgewählt, für die dieses Recht in der angegebenen Art vergeben ist.
Beschreibung der Operanden analog zu READ.
EXCEPT-ELEMENT = *NONE / *ELEMENT(...)
Angabe der Elemente, die von der oben getroffenen Auswahl ausgeschlossen werden.
EXCEPT-ELEMENT = *NONE
Es wird kein Element ausgeschlossen.
EXCEPT-ELEMENT = *ELEMENT(...)
Angabe der Elemente, dessen Schutz-Attribute von einer Änderung ausgeschlossen werden sollen. Ein Element wird ausgeschlossen, wenn alle Felder der EXCEPT-ELEMENT-Struktur, die nicht auf *ANY gesetzt sind, das Element als Treffer ausweisen. Sind alle Felder der EXCEPT-ELEMENT-Struktur auf *ANY gesetzt, so werden alle Elemente ausgeschlossen.
Zur Beschreibung der Operanden siehe Operand *LIBRARY-ELEMENT dieser Anweisung.
NEW-PROTECTION = *UNCHANGED / *NONE / *PARAMETERS(...)
Neuer Elementschutz für die ausgewählten Elemente.
NEW-PROTECTION = *NONE
Das Element bekommt keinen neuen oder zusätzlichen Schutz. Es ist nur durch den Schutz der Bibliotheksdatei geschützt.
NEW-PROTECTION = *PARAMETERS(...)
Angabe, welcher Schutz jetzt für das Element gelten soll.
READ = *UNCHANGED / *NONE / *BY-GUARD(...) / *PARAMETERS(...)
Neue Vergabe des Leseschutzes für das Element.
READ = *NONE
Es wird keine weitere Zugriffseinschränkung vorgesehen.
READ = *BY-GUARD(...)
Angabe des GUARDs für das Leserecht.
GUARD-NAME = <filename 1..18 without-cat-gen-vers>
Name des GUARDs.
READ = *PARAMETERS(...)
Änderung der Benutzerkreise für das Leserecht.
USER = *UNCHANGED / *NONE / *ALL / list-poss(3): *OWNER / *GROUP / *OTHERS
Der Kreis der Leseberechtigten wird explizit aufgezählt.
USER = *NONE
Keiner darf in der angegebenen Art zugreifen.
USER = *ALL
Alle dürfen in der angegebenen Art zugreifen (komplette Aufzählung).
USER = *OWNER
Der Eigentümer der Bibliotheksdatei darf zugreifen.
USER = *GROUP
Die Angehörigen der Gruppe des Eigentümers der Bibliotheksdatei dürfen zugreifen.
USER = *OTHERS
Alle anderen dürfen zugreifen.
PASSWORD = *UNCHANGED / *SECRET / *NONE / <c-string 1..4> /
<x-string 1..8> / <integer -2147483648..2147483647>
Der Kreis der Berechtigten wird weiter eingeschränkt. Zusätzlich zum notwendigen Zugriffsrecht wird das richtige Kennwort verlangt. Die Angabe 0 bzw. X’00000000’ führt nicht zu einer Änderung des letzten Wertes.
Die Angabe von *SECRET bzw. ^ ermöglicht die verdeckte Eingabe des gewünschten Kennwortes. Wird der „geheime“ Wert als c-string eingegeben, muss er in Hochkommata stehen. Wird er als x-string eingegeben, muss er ebenfalls in Hochkommata angegeben und ein X vorangestellt werden.
WRITE = *UNCHANGED / *NONE / *BY-GUARD(...) / *PARAMETERS(...)Neue Vergabe des Schreibrechts für das Element.
Beschreibung der Operanden analog zu READ ("MODIFY-ELEMENT-PROTECTION Elementschutz ändern").
EXEC = *UNCHANGED / *NONE / *BY-GUARD(...) / *PARAMETERS(...)Neue Vergabe des Ausführungsrechts für das Element.
Beschreibung der Operanden analog zu READ ("MODIFY-ELEMENT-PROTECTION Elementschutz ändern").
HOLD = *UNCHANGED / *NONE / *BY-GUARD(...) / *PARAMETERS(...)Neue Vergabe des Ausleihrechts für das Element.
Beschreibung der Operanden analog zu READ ("MODIFY-ELEMENT-PROTECTION Elementschutz ändern").
DIALOG-CONTROL = *LMS-DEFAULT / *NO / *YES
Dieser Operand legt fest, ob während der Ausführung einer Anweisung ein Dialog mit dem Benutzer geführt werden soll oder nicht.
Nähere Erläuterungen zur Dialogführung unter MODIFY-LMS-DEFAULTS, wobei der dort ggf. eingestellte Wert *ERROR wie *NO wirkt. Ebenso wirkt der beim /SEND-MSG-Kommando ggf. angegebene Wert für DIALOG-CONTROL= *ERROR bei MODIFY-ELEMENT-PROTECTION wie *NO.
Hinweis
Der bei MODIFY-LMS-DEFAULTS ggf. eingestellte Wert *ERROR wirkt wie *NO.
Anweisungs-Returncode
(SC2) | SC1 | Maincode | Bedeutung |
0 | CMD0001 | Ohne Fehler | |
2 | 0 | LMS0129 | Anweisung abgebrochen durch Benutzer |
1 | CMD0230 | Syntaxfehler | |
32 | LMS1002 | Interner Fehler | |
64 | LMS0302 | Element nicht gefunden | |
64 | LMS1003 | Fehler während Mengenverarbeitung (Wildcard) bei mindestens einem Element oder einer Datei | |
64 | LMS1004 | Sonstige Fehler | |
64 | PLA0229 | Kein Zugriffsrecht für das Element | |
64 | PLA0233 | Ausleihstatus verhindert Elementzugriff | |
130 | LMS0041 | Systemadressraum erschöpft | |
130 | LMS0411 | Bibliothek gesperrt | |
130 | LMS0412 | Element gesperrt | |
130 | LMS0413 | Typ gesperrt |
Notwendige Zugriffsrechte
Lese- und Schreibrecht für LIBRARY
Schutzattribute können nur vom Eigentümer der Bibliotheksdatei verändert werden.
Beispiele
Zusätzlich zum Leserecht erhält die Gruppe auch das Schreibrecht für alle Elemente, auf die die Gruppe bisher lesend zugreifen darf.
//modify-element-protection - // *lib(elem=*,type=*,protection=(read=(user=*group))),- // new-protection=(write=(user=*group))
Bei der Angabe von new-protection muss das Leserecht nicht nochmal bestimmt werden. Es gilt die bisherige Einstellung (UNCHANGED) für das Leserecht.
Die Eingabe des Kennwortes soll dabei nicht sichtbar sein.
//modify-element-protection *lib(elem=test,type=s), - // new-protection=(exec=(user=*group,password=*secret)) %ENTER SECRET OPERAND (NEW-PROTECTION=:EXEC=:PASSWORD):