Obtiene estadisticas de modifiación de miembros de una PDS.

Utilitarios artesanales que desarrollamos para nosotros y deseamos compartir (en REXX)
Responder
ricardo

Obtiene estadisticas de modifiación de miembros de una PDS.

Mensaje por ricardo » 21 Nov 2007, 19:15

Este pequeño programa obtienen las estadísticas de modificación de los elementos de una biblioteca.

A mi me fue útil para detectar cambios no autorizados. Espero le sea útil a alguien:

Código: Seleccionar todo

/* -- rexx -- 
  Objetivo: Obtiene las estadisticas de modifiación de los members de
            una biblioteca. 
*/ 
trace N 
/* --- --- --- --- --- --- --- --- --- --- --- --- --- --- --- --- */
 arg lib 
                                                                     
 address ispexec 
   "lminit dataid(lib01) dataset('"lib"') enq(shr)" 
   "lmopen dataid("lib01") option(input)" 
                                                                     
do until rc /= 0 
                                                                     
  address ispexec 
  "lmmlist dataid("lib01") option(list) member(memname) stats(yes)" 
                                                                     
  if rc = 0 then 
    do 
      mbr = substr(memname,1,8) 
      usr = substr(zluser,1,8) 
      cdf = substr(zlcdate,1,8) 
      mdf = substr(zlmdate,1,8) 
      ctm = substr(zlmtime,1,8) 
      say substr(lib, 1,35) mbr usr cdf mdf||'-'||ctm 
    end 
  else exit 
end 
/* --- --- --- --- --- --- --- --- --- --- --- --- --- --- --- --- */
address ispexec 
  "lmmlist  dataid("lib01") option(free)" 
  "lmclose dataid("lib01")" 
  "lmfree  dataid("lib01")" 
exit 
Para ejecutar este programa vía batch se puede utilizar este JCL:

Código: Seleccionar todo

//* ------ JOBCARD ------ 
//*--------------------------------------------------------------------
//BIB SET BIB=BIB.A.PROCESAR               <<<== AJUSTAR 
//*--------------------------------------------------------------------
//IKJEFT01 EXEC PGM=IKJEFT01,PARM='REXXGUST &BIB' 
//SYSEXEC  DD DSN=BIB.EXECREXX,DISP=SHR    <<<== AJUSTAR 
//SYSTSPRT DD SYSOUT=* 
//SYSTSIN  DD DUMMY 
//SYSOUT   DD SYSOUT=* 
//SYSPRINT DD SYSOUT=* 
//*--------------------------------------------------------------------

Avatar de Usuario
acevedo
Colaborador Senior
Colaborador Senior
Mensajes: 375
Registrado: 01 Abr 2005, 14:36
País: España
Ciudad: Malaga
Ocupación: Analista de desarrollo

Mensaje por acevedo » 21 Nov 2007, 19:23

y para detectar cambios no autorizados os basasteis en las estadísticas? que por cierto, pueden ser manipuladas.... nada de RACF, TopSecret?

ricardo

Mensaje por ricardo » 22 Nov 2007, 02:42

Claro que esto es algo muy sencillo, pero para detectar usuarios que se quieren pasar de listos y que, los únicos comandos del ISPF que saben son edit, view, browse y los comunes de edición. Así que esto me basto.

No todo tiene que ser rebuscado.

Responder