IBM Security Z Security

 View Only
Expand all | Collapse all

Printing CSDATA Segment fields for Inactivity Report

  • 1.  Printing CSDATA Segment fields for Inactivity Report

    Posted Tue May 23, 2023 02:16 PM

    Trying to create an inactivity report based on data in the CSDATA segment.   I know that I need to do 2 NEWLISTs to make this happen.   My 1st NEWLIST sets the segment to CSDATA and selects all User IDs with the CSDATA field of $FIELD1.
    The 2nd new list sets the segment to BASE and selects the users based on LAST_CONNECT_DATE.     Because my environment is multiple RACF DB's I am doing a SUMMARY to list the IDs that are inactive.    They have to be inactive on all the systems to be included in the report.

    My issue is that I want to print some of the CSDATA fields in that SUMMARY, but my SEGMENT is BASE, so my CSDATA fields of $FIELD2 $FIELD3 and $FIELD4 are not working.

    Do I need to pass the Ids through a 3rd newlist?

    Sample carla:

    newlist n=baseu1 segment=csdata required allowrestrict outlim=0
     select c=user            segment=CSDATA cskey=$field1
     sortlist segment

    newlist required segment=base           proflist=baseu1,
    tt='Inactive User IDs - 395 Days since Last Connect' 
    select segment=base c=user,
                      ((last_connect_date<TODAY-395)  or
                      (last_connect_date=never and CREADATE<TODAY-180))
    summary,
            key(8,"User",key,pas),
            pgmrname(cprx),
            last_connect_date(9,"LastCon",max),
            ljdate(9,"LastUse",max),
            passdate_effective(9,"LastPwd",max),
            phrdate_effective(9,max),
            defdate(9,max),
            $field2,
            $field3,
            $field4,
            count(2,>n)



    ------------------------------
    Linnea Sullivan
    ------------------------------


  • 2.  RE: Printing CSDATA Segment fields for Inactivity Report

    IBM Champion
    Posted Wed May 24, 2023 02:54 AM
    Edited by Rob van Hoboken Wed May 24, 2023 02:56 AM

    Starting with zSecure 2.5, you can use indirect reference (lookup) to add the value of CSDATA fields.  Something like :$FIELD2 (instead of the $FIELD2 you used) would find the value of this custom field from the current profile:

    Since release 2.5, the target field can also be a custom field name as defined in the CFIELD class in a RACF database.


    ------------------------------
    Rob van Hoboken
    ------------------------------