I realize that this was not asked for, but I keep a "DATETIPS EXEC" on my 
disk with the following for quick, tested cut/pastes into new execs.
Maybe it will help someone else in the future:

---<snip>---
/* DATETIPS EXEC*/ address command 
trace ?i 
   retpd=7 
   tmp=date('B')+retpd 
   exdte=left(date('O',tmp,'B'),2)||right(date('D',tmp,'B'),3,0) 
 
   isodate='2005-01-21' 
   wday=date('W',isodate,'S',,'-') 
 
   when=date('B')-1                              /* Yesterday       */ 
   prevjdate=left(date('O',when,'B'),2)||right(date('D',when,'B'),3,0) 
 
   when=date('B')+1                              /* Tommorrow       */ 
   nextjdate=left(date('O',when,'B'),2)||right(date('D',when,'B'),3,0) 
 
   isodate     =date('S', date('U'),'U','-','/') 
   isodateplus =date('S', date('U',date('B')+5,'B')  ,'U','-','/') 
   isodateminus=date('S', date('U',date('B')-5,'B')  ,'U','-','/') 
 
   Sdateplus   =date('S', date('B')+5,'B') 
   Sdateminus  =date('S', date('B')-5,'B') 
 
   Signal ON Syntax Name Bad_Date 
   bdate=date('B',date,iformat) 
   Signal Off Syntax 
 
   daynum=date('B', sdate, 'S')//7 
/*This will give you a number in the range of 0 (=Monday) and 6 (=Sunday) 
  An added bonus is that this number also infers how far away you are 
  from Sunday, */ 
 
 
 
/* Let rexx test for a valid date... */ 
   yyyymmdd=195005bd 
   SIGNAL ON SYNTAX NAME BadDate 
     returnlabel='SOMELABEL'            /* Must be upper case if used */ 
     emsg=date('S',yyyymmdd,'S')        /* Let REXX validate */ 
SomeLabel: 
   SIGNAL OFF SYNTAX 
 
 
 
BadDate: 
   say '+++'xfn'; invalid date: "'yyyymmdd'".' 
Exit 
/* You cannot "Return" from a SIGNAL, but you can:                  */ 
/* SIGNAL value returnlabel                                         */ 
 
 
ValiDate: 
  SIGNAL ON SYNTAX NAME InvalidDate 
  Call Date arg(2),arg(1),arg(2) 
Return (1==1) 
InvalidDate: 
Return (0==1) 
---<snip>--- 



"Scott Rohling" <[EMAIL PROTECTED]> 

Sent by: "The IBM z/VM Operating System" <[email protected]>
10/22/2008 10:34 AM
Please respond to
"The IBM z/VM Operating System" <[email protected]>



To
[email protected]
cc

Subject
Re: RACF inactivity REVOKE






Oops --  REXX DATE doesn't allow 'Julian' to be converted  .. although you 
can convert 'from' Julian..   New code:

Daybase = date('B') 
D30ago = date('S',Daybase-30,'B')
. 
.
.
xlastacc = date('S',xyr||xday,'J')
If xlastacc < D30ago then do

.
.
.
      
Scott Rohling

On Wed, Oct 22, 2008 at 8:09 AM, Scott Rohling <[EMAIL PROTECTED]> 
wrote:
I think you're going to have some issues during January using Julian  ;-)  
2009001-30 = 2008971 ...  so you'll likely end up revoking everybody...

I would use date('B') -- and then convert to date('J') after:


Daybase = DATE('B')
D30ago  = Date('J',Daybase-30,'B')

Scott Rohling



On Wed, Oct 22, 2008 at 6:41 AM, Mary Anne Matyaz <[EMAIL PROTECTED]> 
wrote:
So here's the quick and dirty version for those interested. 

/* Rexx */
erase racf data a
GLOBALV SELECT $RACGRP SET $RAC_APN Y
GLOBALV SELECT $RACGRP SET $RAC_ISPF Y
'RAC LU MATYAZ' 
GLOBALV SELECT $RACGRP SET $RAC_APN N
GLOBALV SELECT $RACGRP SET $RAC_ISPF N
Daybase = date('Julian') 
D30ago = Daybase - 30 
'PIPE < RACF DATA | STRIP | LOCATE /LAST-ACCESS/ | STEM xracf.' 
If rc <> 0 then exit rc 
Do i = 1 to xracf.0 
parse var xracf.i xlast '-' xaccess '=' xyr '.' xday '/' xrest
xlastacc = xyr || xday
If xlastacc < D30ago then do 
 'rac alu MATYAZ revoke' 
 say 'Revoking userid MATYAZ due to last access ' xlastacc 
 end
End 


On Wed, Oct 22, 2008 at 6:56 AM, Mary Anne Matyaz <[EMAIL PROTECTED]> 
wrote:
> Colin,
> Inactivity timeout is a system wide setting. The only workaround I
> could come up with is this:
> If your system is like mine, it is a lot of linux guests, a few
> batchlike system userids, and a few system programmers. See if they
> will allow you to change the interval to the maximum, 254, and NOT
> revoke. Then, you can do the revoke manually. By that I mean, write
> and run a nightly exec that checks those three or four system
> programmers, see when their 'last-access' is from a RAC LU, and if
> it's beyond 30 days, issue a RAC ALU userid REVOKE.
> I think it's a nice idea, so I'm going to write one. I'll email it to
> you if you want it.
> MA
>
> On Tue, Oct 21, 2008 at 4:00 AM, Colin Allinson <[EMAIL PROTECTED]> 
wrote:
>>
>> I know this has been the subject of recent discussion & I said that we 
have
>> a process to override this for defined virtual machines. However, for a
>> number of reasons, (mainly keeping up with identifying them), this is 
giving
>> us some difficulty.
>>
>> Our VM systems are now very different beasts to when the original rules 
were
>> defined so I am talking to our internal security about lengthening the
>> period of inactivity before automatic revoke. They are sympathetic but 
asked
>> me to investigate if the inactivity time-out can be different dependant 
on
>> RACF group or if it is a system wide limit.
>>
>> As far as I know, it is a system wide limit but I would be pleased if
>> someone can confirm or deny this.
>>
>>
>> Colin Allinson
>>
>> Amadeus Data Processing GmbH
>>
>







The information contained in this e-mail and any accompanying documents may 
contain information that is confidential or otherwise protected from 
disclosure. If you are not the intended recipient of this message, or if this 
message has been addressed to you in error, please immediately alert the sender 
by reply e-mail and then delete this message, including any attachments. Any 
dissemination, distribution or other use of the contents of this message by 
anyone other than the intended recipient is strictly prohibited. All messages 
sent to and from this e-mail address may be monitored as permitted by 
applicable law and regulations to ensure compliance with our internal policies 
and to protect our business. E-mails are not secure and cannot be guaranteed to 
be error free as they can be intercepted, amended, lost or destroyed, or 
contain viruses. You are deemed to have accepted these risks if you communicate 
with us by e-mail. 

Reply via email to