IBM Security Z Security

Security for Z

Join this online user group to communicate across Z Security product users and IBM experts by sharing advice and best practices with peers and staying up to date regarding product enhancements.

 View Only
  • 1.  zSecure Report for CLASS=STARTED Information

    Posted 11/06/24 07:11 PM

    Hello zSecure Community!

    I'm trying to report on the Userid/GroupID that I think is in the STDATA segment but I come up with 'blanks'.   Can you help me or can this data not be obtained in my method in CARLA?  I was asked to produce a report with the following directive "... need a report listing all IDs/Groups within resource STARTED."  I think this is to mean, using zSecure, report on the General Resource CLASS=STARTED and pull out the STDATA segment with the Userid/Groupid values.  My understanding must be lacking as I do not find any data in the segment STDATA as I tried to write the custom CARLA code seen below with the help of your Online Dialogs:

    =NOTE= Enter GO or RUN to execute commands, SUB or SUBMIT to generate batch job     

    =NOTE= END or SAVE to save in ISPF profile                                          

    n required s=STDATA n=SELSEGM outlim=0                                       

      S c=general and segment=STDATA c=STARTED and                               

      (stuser<>' ' or stgroup<>' ')                                              

      sortlist segment                                                           

    n proflist=SELSEGM n=baser1 segment=base required allowrestrict,             

     ,                                                                           

     tt="RACF class ",                                                           

     st='CLASS=STARTED where segment STDATA fields STUSER or STGROUP NE to blank'

     def singledsn("Only one data set per volume",flag,p) boolean,               

         where(singleds)                                                         

     s c=general and s=base c=STARTED                                            

     sortlist class(tt,page) " - complex"(tt,page) complex(tt,page),             

              stamp(tt),                                                         

       ,                                                                         

       searchkey(nd) key(44,wrap)  proftype(1) | warning(1,hb),                  

         uacc stuser stgroup owner auditlvl,                                     

         gauditlvl(allowrestrict),defdate(7,"Created"),                          

         notify(7) level auditpriority,                                          

         ,instdata(0,wrap),                                                      

       / "                                               *"(ne) | idstar,        

       / "     Volser:  "(notempty) volser(0,hor,ww),                            

       / , "     Concern: "(notempty) auditconcern(63,wordwrap),                 

       / "     Appldata:"(notempty) appldata(0,wrap)   

    This produces the report sample seen below as:

    RACF class STARTED   - complex TPX       6Nov2024 02:00                                                                    page    1

    CLASS=STARTED where segment STDATA fields STUSER or STGROUP NE to blank                                                             

                                                                                                                                         

    Profile key                                  TW UACC    Userid   Group    Owner    S/F SgF Created Notify  Lv Pri InstData          

    AIRPROC.*                                    G  NONE                      STCGROUP   R     25May21          0     IBMMF01           

    AOINIT.*                                     G  NONE                      V601827    R     10Sep18          0                       

    AOPMAINT.*                                   G  NONE                      DATASEC    R      8May07          0                       

    AOPSTART.*                                   G  NONE                      STCGROUP   R      2Jun06          0                       

    AOPSTOP.*                                    G  NONE                      STCGROUP   R      2Jun06          0     

    Any help you may have on this would be very appreciated! 

    Thanks for hosting this forum as it very, very helpful!

    Lynn Gilson                                       



    ------------------------------
    Lynn Gilson
    Lynn
    ------------------------------


  • 2.  RE: zSecure Report for CLASS=STARTED Information

    Posted 11/07/24 02:01 AM

    Lynn,

    You are reporting on the BASE segment, but the fields are in the STDATA segment, so you need to do a lookup (prefix the field with a colon) into the STDATA segment.
    Please change

    uacc stuser stgroup owner auditlvl,

    into

    uacc :stuser :stgroup owner auditlvl,



    ------------------------------
    Ronald van der Laan
    ------------------------------



  • 3.  RE: zSecure Report for CLASS=STARTED Information

    Posted 11/07/24 10:59 AM

    Many thanks Tom and Ron!

    I always forget that ' : ' to reference the other segments, data fields.  Very thankful for your work and hosting this forum. 

    Best regards,

    Lynn Gilson



    ------------------------------
    Lynn Gilson
    Lynn
    ------------------------------



  • 4.  RE: zSecure Report for CLASS=STARTED Information

    Posted 11/07/24 11:00 AM

    Many thanks Tom and Ron!

    I always forget that ' : ' to reference the other segments, data fields.  Very thankful for your work and hosting this forum. 

    Best regards,

    Lynn Gilson



    ------------------------------
    Lynn Gilson
    Lynn
    ------------------------------



  • 5.  RE: zSecure Report for CLASS=STARTED Information

    Posted 11/07/24 04:02 AM
    Edited by Tom Zeehandelaar 11/07/24 04:03 AM

    Hi Lynn, 

    if your goal is just to generate a report of all STARTED profile definitions with their user ID and GROUP names, than this is all the CARLa code that you would need for that report.

    newlist type=racf tt="Started task user IDs and groups"
     select class=started segment=stdata                   
     sortlist key(17,'Started profile') stuser stgroup     

    Running that on my development system generates a report along the lines off this:

    Started task user IDs and groups 
                                       
    Started profile   Userid   Group   
    *.*               =MEMBER  SYS1    
    **                IBMUSER  OMVS    
    ANTAS000.*                 SYS1    
    ANTMAIN.*                  SYS1    
    APPC.*            APPC     SYS1    
    ASCH.*                     SYS1    
    ASCHINT.*                  SYS1    
    BLSJPRMI.*                 SYS1    
    BPX.*                      SYS1    
    BPXAS.*                    SYS1    
    BPXOINIT.*        OMVSKERN OMVS    
    BPXSTOP.*                  SYSAPPL 
    C#LCL.*           AUTO3    CRBEHEER
    C#TELNET.*        AUTO3    CRBEHEER

    When you want to include other fields that are stored in the STDATA segment, just add them to the sortlist statement. If you want to annotate the report with fields stored in the base segment, prefix them with a colon (:) in the sortlist as Ronald suggested. That causes the cross-segment LOOKUP function to be used to retrieve values from fields that are stored in a different segment of the same profile. 

    I hope this helps.



    ------------------------------
    Tom Zeehandelaar
    z/OS Security Enablement Specialist - zSecure developer
    IBM
    ------------------------------