Your Browser is not longer supported

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

{{viewport.spaceProperty.prod}}

Default protection (user defined default values)

&pagelevel(4)&pagelevel

Specifying values for the protection attributes of job variables should correspond to commonly prescribed patterns. With the “default protection” SECOS function the user can define his own default values that can then be used instead of the default system values. These default values can be specified for a certain user or globally for all pubsets. They are stored in attribute guards (guards used to specify default values for protection attributes).

Default protection values can be set via the ADD-/MODIFY-DEFAULT-PROTECTION-ATTR command for the following protection attributes of job variables:

Protection attribute

Meaning

ACCESS

Default access control (type of access)

USER-ACCESS

Default access control (access for external users)

BASIC-ACL

Basic access control

GUARDS

Access control via guards

READ-PASS-WORD

Read password

WRITE-PASSWORD

Write password

Table 9: Protection attributes of job variables

Each attribute guard is linked to a rule container that contains the rules that determine to which job variable names these rules apply. See also the SECOS command ADD-/MODIFY-DEFAULT- PROTECTION-RULE in the “SECOS” [10] manual. Default protection is activated by creating a rule container.

Commands and macros to use default protection for job variables

Default protection values for protection attributes are implemented with the command CREATE-JV PROTECTION=*STD (see the “Commands” manual [1]) or the macro CATJV ..., PROTECT= DEFAULT (see "CATJV Catalog job variable "). The *STD or DEFAULT specifications are the default settings.

If default protection is not activated or /CREATE-JV PROTECTION-ATTR=*STD or CATJV...,PROTECT=STD is specified, then the default system values apply when a job variable is created (first protection attribute entry). You cannot use the default protection values for existing job variables. The retention period (EXPIRATION-DATE) cannot be affected by the first entry with default protection. It is implicitly set to *TODAY by default.

The default protection cannot be applied to temporary job variables.

The following are the effects of the PROTECTION-ATTR operand (CREATE-JV command) or PROTECT operand (CATJV macro) on the default values of protection attributes for job variables:

  • PROTECTION-ATTR=*STD
    The default system values are used for the default system values of individual protection attributes (see table 10) if not explicitly specified otherwise.

  • PROTECTION-ATTR=*BY-DEF-PROT-OR-STD

    • Default protection is active: Use the default protection values (from the attribute guard)

    • Default protection is not active: Use the default system values (see table 10)

    Protection attribute

    Default system value

    ACCESS

    WRITE

    USER-ACCESS

    OWNER-ONLY

    BASIC-ACL

    NONE

    GUARDS

    NONE

    READ-PASSWORD

    NONE

    WRITE-PASSWORD

    NONE

    Table 10: Default system values for job variable protection attributes

    Example

    /add-default-protection-attr guard-name=defprot,user-access=*all-users    (1)
    /show-default-protection-attr d*———————————————————————————————————————   ( 2 )
    %----------------------------------------------------------------------------

    %GUARD :2OSG:$USER1.DEFPROT                       DEFAULT PROTECTION
    ATTRIBUTES

    %---------------------------------------------------------------------------%

                      % SCOPE: CREATE-OBJECT        % SCOPE: MODIFY-OBJECT-ATTR
    %                   % --------------------------- % -------------------------
    %ACCESS             % *SYSTEM-STD                 % *SYSTEM-STD
    %USER-ACCESS        % *ALL-USERS                  % *ALL-USERS
    %BASIC-ACL          % *SYSTEM-STD                 % *SYSTEM-STD
    %GUARDS             % *SYSTEM-STD                 % *SYSTEM-STD
    %READ-PASSWORD      % *SYSTEM-STD                 % *SYSTEM-STD
    %WRITE-PASSWORD     % *SYSTEM-STD                 % *SYSTEM-STD
    %EXEC-PASSWORD      % *SYSTEM-STD                 % *SYSTEM-STD
    %DESTROY-BY-DELETE  % *SYSTEM-STD                 % *SYSTEM-STD
    %SPACE-RELEASE-LOCK % *SYSTEM-STD                % *SYSTEM-STD
    %EXPIRATION-DATE    % *SYSTEM-STD                 % *SYSTEM-STD
    %FREE-FOR-DELETION  % *SYSTEM-STD                 % *SYSTEM-STD
    %----------------------------------------------------------------------------

    %GUARDS SELECTED: 1                                            END OF DISPLAY

    /add-default-protection-rule rule-cont-guard=sys.udj,prot-rule=1stcharequj,
         protect-obj=*par(name=j*,attrib-guard=defprot) ———————————————————— (3)
    /show-default-protection-rule —————————————————————————————————————————— (4)
    %----------------------------------------------------------------------------

    %RULE CONTAINER :2OSG:$USER1.SYS.UDJ             USR ACTIVE  DEFAULT
    PROTECTION

    %----------------------------------------------------------------------------

    %1STCHAREQUJ    OBJECT     = J*
    %               ATTRIBUTES = $USER1.DEFPROT
    %               USER-IDS   = *ANY-USER-ID
    %----------------------------------------------------------------------------

    %RULE CONTAINER SELECTED: 1                                    END OF DISPLAY

    /create-jv jvdefprot ——————————————————————————————————————————————————— (5)
    /show-jv-attributes nodefprotjv,inf=*all ——————————————————————————————— (6)
    %0000000 :2OSG:$USER1.JV.DEFPROT

    % USER-ACC   = ALL-USERS   ACCESS     = WRITE
    % CRE-DATE   = 2010-08-13  EXPIR-DATE = 2010-08-13
    % CRE-TIME   =   14:38:42  EXPIR-TIME =   00:00:00
    % READ-PASS  = NONE
    % WRITE-PASS = NONE

    %SUM    00001 JV'S; JV-VALUE = 00000000 BYTES
    /create-jv nodefprotjv ————————————————————————————————————————————————— (7)

    /show-jv-attributes nodefprotjv,inf=*all ——————————————————————————————— (8)
    %0000000 :2OSG:$USER1.NO.JVDEFPROT

    % USER-ACC   = OWNER-ONLY  ACCESS     = WRITE
    % CRE-DATE   = 2010-08-13  EXPIR-DATE = 2010-08-13
    % CRE-TIME   =   14:41:00  EXPIR-TIME =   00:00:00
    % READ-PASS  = NONE
    % WRITE-PASS = NONE

    %SUM    00001 JV'S; JV-VALUE = 00000000 BYTES

    /create-jv jvstd,protection-attr=*std —————————————————————————————————— (9)
    /show-jv-attributes jvstd,inf=*all ———————————————————————————————————— (10)
    %0000000 :2OSG:$USER1.JV.STD-PROT

    % USER-ACC   = OWNER-ONLY  ACCESS     = WRITE
    % CRE-DATE   = 2010-08-13  EXPIR-DATE = 2010-08-13
    % CRE-TIME   =   14:42:04  EXPIR-TIME =   00:00:00
    % READ-PASS  = NONE
    % WRITE-PASS = NONE

    %SUM 00001 JV'S; JV-VALUE = 00000000 BYTES

    (1)

    The attribute guard “DEFPROT” is created and the default value for the ACCESS protection attribute is also specified.

    (2)

    The default values for the protection attributes are displayed. The values that apply when a job variable is created are displayed in the “SCOPE: CREATE OBJECT” column. USER-ACCESS “*ALL-USERS” is entered for the protection attribute as a user specific value. The default system values apply to all other protection attributes (the “SCOPE: MODIFY-OBJECT-ATTR” column does not apply to job variables, it only applies to files).

    (3)

    The default protection rule “1STCHAREQUJ” is added to the rule container “SYS.UDJ” (J stands for job variable). You specify via "PROTECT-OBJ=*PAR(NAME=j*,ATTRIB-GUARD=DEFPROT" that this rule applies to all job variables whose name begins with J and that the job variables for which this rule applies are to obtain their default values from the “DEFPROT” attribute guard.

    (4)

    The properties of the rule container and the rules it contains are displayed.

    (5)

    The job variable “JV.DEFPROT” is created. Its name abides by the rule “1STCHAREQUJ” and therefore the default values are taken from the “DEFPROT” attribute guard.

    (6)

    You can see that the values came from the “DEFPROT” attribute guard in the USER-ACCESS attribute: The value “ALL-USERS” is not a default system value.

    (7)

    The job variable “NO.DEFPROT” is created. Its name does not abide by the rule “1STCHAREQUJ” and therefore the default system values are used as the default values.

    (8)

    You can see that the default values are default system values in the USER-ACCESS attribute: The value “OWNER-ONLY” is a default system value.

    (9)

    The job variable “JV.STD-PROT” is created. Its name abides by the rule “1STCHAREQUJ”, but the use of the default system values is forces by specifying "PROTECTION-ATTR=*STD".

    (10)

    You can see that the default values are default system values in the USER-ACCESS attribute: The value “OWNER-ONLY” is a default system value.

    Default protection and monitor job variables

    The default protection also applies to monitor job variables. If a protection attribute is set by the default protection that prevents further access (e.g. using system commands), then the default protection setting must be changed by the user. For example, in the MONJV handler a new monitor job variable to be created is only set to USER-ACCESS=*ALL-USERS when default protection does not explicitly set USER-ACCESS=*OWNER-ONLY.