Your Browser is not longer supported

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

{{viewport.spaceProperty.prod}}

GETUGR Gruppenzugehörigkeit einer Benutzerkennung ermitteln

Der Makro GETUGR liefert zu einer Benutzerkennung den zugehörigen Gruppennamen. Zur Ermittlung der Gruppenzugehörigkeit wird die Gruppenstruktur herangezogen, die auf dem Home-Pubset der laufenden Sitzung hinterlegt ist. Ist die Benutzerkennung der Standardgruppe *UNIVERSAL zugeordnet, so ist der Gruppenname nicht definiert und der Returncode wird mit einem entsprechenden Wert versehen.

Anwendung: Systemverwaltermakro

Makrotyp: S-Typ (Standardform / E-Form / L-Form / C-Form / D-Form)

Makro

Operanden

GETUGR

MF=C / D / L / E

,PREFIX = p / S

,PARAM = (r) / addr

Die Beschreibung der Parameter MF, PREFIX, MACID, PARAM siehe Handbuch „Makroaufrufe an den Ablaufteil“ [16].

Vor dem Aufruf des Makros GETUGR muss das Feld SRMUUID mit der Benutzerkennung versorgt werden, deren Gruppenname ermittelt werden soll.

Wenn ein Benutzergruppenverwalter oder systemglobaler Benutzerverwalter die Gruppenzugehörigkeit einer Benutzerkennung ermitteln will, die nicht auf dem Home-Pubset eingetragen ist, muss er zusätzlich die Katalogkennung dieses Pubsets in das Feld SRMUPVS eintragen. Gibt ein Benutzer, der keines dieser Verwaltungsprivilegien hat, das Pubset explizit an, wird der Aufruf mit Parameterfehler zurückgewiesen.

Ausgabe-Operanden:

Der Gruppenname wird im Feld SRMGGID der Parameterliste abgelegt. Gehört die Benutzerkennung zur Standardgruppe *UNIVERSAL, so ist der Inhalt des Feldes nicht definiert und der Returncode enthält einen entsprechenden Wert.

Parameterliste (GETUGR MF=D)

SRMUGT   DSECT , 
               *,##### PREFIX=S, MACID=RMU ##### 
* 
SRMUFHDR FHDR  MF=(C,SRMU),EQUATES=NO                   standard header 
SRMUFHDR DS    0A 
SRMUFHE  DS    0XL8            0   GENERAL PARAMETER AREA HEADER 
* 
SRMUIFID DS    0A              0   INTERFACE IDENTIFIER 
SRMUFCTU DS    AL2             0   FUNCTION UNIT NUMBER 
*                                  BIT 15    HEADER FLAG BIT, 
*                                  MUST BE RESET UNTIL FURTHER NOTICE 
*                                  BIT 14-12 UNUSED, MUST BE RESET 
*                                  BIT 11-0  REAL FUNCTION UNIT NUMBER 
SRMUFCT  DS    AL1             2   FUNCTION NUMBER 
SRMUFCTV DS    AL1             3   FUNCTION INTERFACE VERSION NUMBER 
* 
SRMURET  DS    0A              4   GENERAL RETURN CODE 
SRMUSRET DS    0AL2            4   SUB RETURN CODE 
SRMUSR2  DS    AL1             4   SUB RETURN CODE 2 
SRMUSR1  DS    AL1             5   SUB RETURN CODE 1 
SRMUMRET DS    0AL2            6   MAIN RETURN CODE 
SRMUMR2  DS    AL1             6   MAIN RETURN CODE 2 
SRMUMR1  DS    AL1             7   MAIN RETURN CODE 1 
SRMUFHL  EQU   8               8   GENERAL OPERAND LIST HEADER LENGTH 
* 
*   main return codes 
SRMUOK   EQU   0                         group id of user valid 
SRMUUNI  EQU   1                         user is in group *UNIVERSAL 
SRMUUND  EQU   2                         user not defined on pubset 
SRMUPER  EQU   3                         parameter error 
SRMUPNA  EQU   5                         pubset not available 
SRMUSER  EQU   255                       system error 
* 
SRMUUID  DS    CL8                       user id for which information 
*                                        is sought 
SRMUPVS  DS    CL4                       pubset on which user is 
*                                        defined 
SRMUGID  DS    CL8                       group id for user on pubset 
SRMU#    EQU   *-SRMUFHDR 
Hinweis

Der Aufruf GETUGR verändert die Register R1, R14 und R15.

Returncodes

Zusätzlich zu den Standardreturncodes können folgende Returncodes auftreten:

SC1

Maincode

Erläuterung

ESMRFSP

SRMUOK

Gruppenname wurde ermittelt und im Parameterfeld SRMGGID hinterlegt.

ESMRFSP

SRMUUNI

Die Benutzerkennung gehört zur Standardgruppe *UNIVERSAL.

ESMRFSP

SRMUUND

Die Benutzerkennung ist auf dem Pubset nicht eingetragen.

ESMRCAR

SRMUPER

Parameterfehler

ESMRCAR

SRMUPNA

Pubset nicht verfügbar

ESMRIER

SRMUSER

Systemfehler

Beispiel

Ermitteln des Gruppennamens zur Benutzerkennung ’SRPMUSER’ und prüfen, ob ein Fehler aufgetreten ist.

GETUGR   START 
*--------------------------------------------------------------------* 
*  PROGRAMM: HANDBUCH-BEISPIEL GETUGR  SRPM-TESTS                    * 
*--------------------------------------------------------------------* 
GETUGR   RMODE ANY 
GETUGR   AMODE ANY 
         GPARMOD 31 
         BALR  3,0 
         USING *,3 
*--------------------------------------------------------------------* 
*    LESEN DER BENUTZERGRUPPE FUER BENUTZER "SRPMUSER"               * 
*--------------------------------------------------------------------* 
         MVC   SRMUUID,='SRPMUSER' 
         GETUGR MF=E,PARAM=GICHKL 
         CLI   SRMUMR1,SRMUOK 
         BNE   FEHLER 
*                           BEARBEITEN DER USER-GROUPID 
         B     ENDE 
FEHLER   EQU   * 
*                           ANDERE BEHANDLUNG 
ENDE     TERM 
**-------------------------------------------------------------------* 
GICHKC   GETUGR MF=C 
         ORG   GICHKC 
GICHKL   GETUGR MF=L 
         END