Your Browser is not longer supported

Please use Google Chrome, Mozilla Firefox or Microsoft Edge to view the page correctly
Loading...

{{viewport.spaceProperty.prod}}

Auswahl der zu bearbeitenden Guards

Guards unterscheiden sich durch ihren Namen und ihren Typ. Der Guardname bewirkt die Eindeutigkeit der Guards auf einem Pubset, der Guardtyp gibt Auskunft über die Art der Daten, die ein Guard enthält. Zum Beispiel sind in Guards des Typs STDAC Zugriffsbedingungen und in Guards des Typs DEFPATTR Standardschutzwerte enthalten.

Bestimmte Guardtypen können Verweise auf weitere Guards (Referenzguards) enthalten. So sind zum Beispiel in Regeln für den Standardschutz (Default protection) die Namen derjenigen Guards aufgeführt, die die erforderlichen Definitionen der Schutzattribut-Defaultwerten enthalten.

GUARDS-SAVE berücksichtigt beim Ermitteln einer Guardmenge mehrere Auswahlkriterien, die der Anwender bestimmen kann:

  1. Guardname

    Mit dem Operanden GUARD-NAME wählt der Anwender den Namen eines Guards aus, das bearbeitet werden soll. Wenn der Guardname Musterzeichen enthält, wählt GUARDS-SAVE alle Guards aus, die dem angegebenen Muster entsprechen.

  2. Guardtyp

    Mit der Angabe SELECT=*BY-ATTRIBUTES(TYPE=) kann der Anwender die mit dem Operanden GUARD-NAME getroffene Auswahl auf bestimmte Guardtypen einschränken. GUARDS-SAVE wählt aus der im ersten Selektionsschritt ermittelten Guardmenge die Guards vom gesuchten Typ aus.

  3. Guardreferenzen

    Mit der Angabe SELECT=*BY-ATTRIBUTES(RESOLVE=*YES) gibt der Anwender an, ob die in den ersten beiden Selektionsschritte ermittelte Guardmenge nach Referenzguards durchsucht und um die so gefundenen Guards ergänzt werden soll.

    Hierbei werden alle gefundenen Referenzguards wiederum nach Referenzen durchsucht. Eine semantische Prüfung auf Zulässigkeit der Referenzen wird von GUARDS-SAVE jedoch nicht durchgeführt, darum können sowohl zulässige als auch unzulässige Guardreferenzen selektiert werden.

    Zulässig sind folgende Guardreferenzen:


    Guardzweck

    Guardtyp

    Referenzzweck

    Referenztyp

    Regelbehälter für den
    Standardschutz
    (Default protection)

    DEFAULTP

    Spezifikationen der Attribut-Defaultwerte

    DEFPATTR

    Spezifikationen der Benutzerkennungen
    und Benutzergruppen für pubsetglobale
    Defaultierungen

    DEFPUID

    Spezifikationen der
    Attribut-Defaultwerte

    DEFPATTR

    Lese-, Schreib- Ausführ-Guard,
    die für den Defaultwert des
    Schutzattributs GUARDS spezifiziert sind

    STDAC

    Regelbehälter für den
    Miteigentümerschutz
    (Co-owner protection)

    COOWNERP

    Spezifikationen der Zugriffsbedingungen
    für die Miteigentümer

    STDAC

Die Standardeinstellungen der GUARDS-SAVE-Anweisungen sind so festgelegt, dass die Suche nach Referenzguards durchgeführt wird.

Die implizite Berücksichtigung von Referenzguards sollte bei Sicherungs- und Restaurierungsläufen sinnvollerweise auch dann eingeschaltet bleiben, wenn dabei durch die Angabe GUARD-NAME=*, SELECT=(TYPE=*ANY) der komplette Guardbestand ausgewählt wird. Dadurch werden in den Ergebnisprotokollen werden auch Referenzguards aufgelistet, die nicht gefunden wurden. Wird die Suche nach Referenzguards ausgeschaltet (SELECT=(RESOLVE=*NO)), werden gegebenenfalls fehlende Guards nicht erkannt.

Folgende Beispiele sollen das in diesem Abschnitt erläuterte Auswahlverfahren verdeutlichen:

Beispiel 1

Es sollen alle Regelbehälter für den Standardschutz gesichert werden, wobei auch die Referenzguards berücksichtigt werden sollen.

Der Anwender macht für die Auswahl der Guards folgende Angaben:

GUARD-NAME=SYS.UD*, SELECT=(TYPE=DEFAULTP, RESOLVE=*YES)

GUARDS-SAVE führt folgende Selektionsschritte durch:

  1. Ermittlung aller Guards, deren Namen mit der Zeichenfolge SYS.UD beginnen.

  2. Selektion derjenigen Guards aus der durch Schritt 1 ermittelten Guardmenge, die vom Typ DEFAULTP sind.

  3. Rekursives Durchsuchen der in Schritt 1 und 2 ermittelten Guardmenge nach Referenzguards. Die gefundenen Referenzguards werden zusätzlich selektiert.

Als Ergebnis dieser Selektion bearbeitet GUARDS-SAVE die Menge aller Guards, deren Namen mit der Zeichenfolge SYS.UD beginnen und vom Guardtyp DEFAULTP sind. Zusätzlich dazu werden aber auch alle Guards gesichert, die von der durch Schritt 1 und Schritt 2 ermittelten Guardmenge referenziert werden und zwar unabhängig davon, aus welcher Zeichenfolge sich ihr Name zusammensetzt und welchen Guardtyp sie besitzen. Es gehören zu der selektierten Guardmenge also auch solche Guards, deren Name nicht mit der Zeichenfolge SYS.UD beginnen und deren Guardtyp nicht DEFAULTP ist.

Aus einem Protokoll kann der Anwender ersehen, welche Guards aufgrund ihres Namens und Typs gesichert wurden, welche Guards aufgrund einer Referenz gesichert wurden und welche Guards aufgrund ihrer Referenz gesichert werden müssten, aber nicht gesichert werden konnten.

Beispiel 2

Es sollen alle Regelbehälter für den Miteigentümerschutz gesichert werden; die Referenzguards sollen dabei nicht mit erfasst werden.

Der Anwender macht für die Auswahl der Guards folgende Angaben:

GUARD-NAME=SYS.UC*, SELECT=(TYPE=COOWNERP, RESOLVE=*NO)

GUARDS-SAVE führt folgende Selektionsschritte durch:

  1. Ermitlung aller Guards, deren Namen mit der Zeichenfolge SYS.UC beginnen.

  2. Selektion derjenigen Guards aus der durch Schritt 1 ermittelten Guardmenge, die vom Typ COOWNERP sind.

Als Ergebnis dieser Selektion bearbeitet GUARDS-SAVE die Menge aller Guards, deren Namen mit der Zeichenfolge SYS.UC beginnen und vom Guardtyp COOWNERP sind. Mögliche referenzierte Guards vom Typ STDAC bleiben unberücksichtigt.

Aus einem Protokoll kann der Anwender ersehen, welche Guards aufgrund ihres Namens und Typs gesichert wurden. Er kann daraus nicht ersehen, welche Guards referenziert werden.