Phil

I have just tested the following code in my own product test-bed PC-ss that 
performs a FASTAUTH using ACEEALET of x'00000002' and the ACEE pointing to the 
TCBSENV (or ASXBSENV if TCBSENV=0) - the code goes roughly like this :

        L       R3,WA_CALLER_TCB                        Callers TCB address
        LAM     AR3,AR3,=F'2'                           Set to Home
        IF (ICM,R3,B'1111',TCBSENV-TCB(,R3),Z)  Any ACEE for task ?
          L     R3,WA_CALLER_ASCB                       No - use ACEE for ASID
          L     R3,ASCBASXB-ASCB(,R3)
          L     R3,ASXBSENV-ASXB(,R3)                           
        ENDIF
        LAM   AR3,AR3,=F'0'                             Reset to Primary
...
...
        RACROUTE REQUEST=FASTAUTH,                Check authority
                        ATTR=READ,                                      
                        ENTITY=((R9)),                                  
                        CLASS=WA_SAFCLASS,                            
                        ACEE=(R3),ACEEALET==F'2',                 
                        WKAREA=WA_FASTAUTH_WKAREA,                      
                        WORKA=WA_RACF_WORKAREA,                         
                        RELEASE=2.4,                                    
                        MF=(E,WA_FASTAUTH_PLIST)
...
...
  
So, if your client address space is HASN, DB2 is SASN and your server is PASN 
you *should* be able to get it to work.   

Rob Scott
Lead Developer
Rocket Software
77 Fourth Avenue . Suite 100 . Waltham . MA 02451-1468 . USA
Tel: +1.781.684.2305
Email: [email protected]
Web: www.rocketsoftware.com


-----Original Message-----
From: IBM Mainframe Discussion List [mailto:[email protected]] On Behalf 
Of Phil Smith
Sent: 25 June 2014 18:19
To: [email protected]
Subject: Re: Address space puzzle

Rob Scott again: >
You need to capture the cross-memory environment when you get called from DB2 
(you can extract the HASN, SASN and PASN from control registers if you desire).

Control registers 7 and 13 are NOT the same.

>If DB2 is both HASN and SASN, then your PC-ss code is going to have to change 
>to perform third-party verification based on userid by building a "dummy" ACEE 
>with PASSCHK=NO.

By "is both HASN and SASN", I take it to mean "HASN <> SASN". Which is true. So 
maybe I'm back to where I was before I started this odyssey, which is, as you 
suggest, building an ACEE.

I had been discussing that approach with Walt Farrell. I'm currently doing just 
RACROUTE AUTH in that case, but it's hella slow. Oddly, it's slow *and doesn't 
use much CPU* -- as in, if I do 10,000 operations (each of which has to do a 
check), CPU is ticking along at 2%, but it takes several minutes to do the 
operations. With no I/O. Whereas the same 10,000 operations using FASTAUTH 
(yeah, I hacked it to always do AUTH so I could get the ACEE right, from a 
batch job) takes under a second. But both show about the same amount of CPU in 
both client and STC.

Walt had suggested that instead, I could:
"Since the user's ACEE already exists, make a copy of it and pass the copy to 
RACROUTE. You can do that using RACROUTE with an ENVRXTR request, after which 
you can pass the ENVR object to FASTAUTH."

One problem here is that we have to support all of RACF, ACF2, and TSS. And TSS 
at least is NOT at all happy with a dummy ACEE. So I don't know whether this 
approach will work, but it sounds like I need to try it!

----------------------------------------------------------------------
For IBM-MAIN subscribe / signoff / archive access instructions, send email to 
[email protected] with the message: INFO IBM-MAIN

----------------------------------------------------------------------
For IBM-MAIN subscribe / signoff / archive access instructions,
send email to [email protected] with the message: INFO IBM-MAIN

Reply via email to