# Natural API for RACF.

**URL:** <https://techcommunity.softwareag.com/t/natural-api-for-racf/59019>\
**Category:** Forum\
**Tags:** Mainframe-Integration, EntireX\
**Created:** [July 15, 2004, 12:29am UTC](https://techcommunity.softwareag.com/t/natural-api-for-racf/59019 "2004-07-15T00:29:24Z")\
**Posts on this page:** 8\
**Page:** 1

<div class="post-metadata">

**Author:** ![Euro](https://avatars.discourse-cdn.com/v4/letter/e/4da419/32.png) [@Euro](https://techcommunity.softwareag.com/u/Euro)\
**Post date:** [July 15, 2004, 12:29am UTC](https://techcommunity.softwareag.com/t/natural-api-for-racf/59019/1 "2004-07-15T00:29:24Z")

</div>

Hello List.  
  
Is there any way to know via Natural API for RACF, which CICS transaction a user have access to?   
  
Saludos…

---

<div class="post-metadata">

**Author:** ![Rolf\_Bahlke](https://sea1.discourse-cdn.com/techcommunity/user_avatar/techcommunity.softwareag.com/rolf_bahlke/32/109_2.png) [@Rolf\_Bahlke](https://techcommunity.softwareag.com/u/Rolf_Bahlke)\
**Post date:** [July 23, 2004, 5:10pm UTC](https://techcommunity.softwareag.com/t/natural-api-for-racf/59019/2 "2004-07-23T17:10:49Z")

</div>

Hello Euridici,  
  
Could you please provide a more detailed description of what you are trying to achieve. I tried to get an answer from someone who is familiar with RACF and Natural, he was asking for more information.  
  
Kind regards,  
Rolf

---

<div class="post-metadata">

**Author:** ![Euro](https://avatars.discourse-cdn.com/v4/letter/e/4da419/32.png) [@Euro](https://techcommunity.softwareag.com/u/Euro)\
**Post date:** [July 28, 2004, 2:28am UTC](https://techcommunity.softwareag.com/t/natural-api-for-racf/59019/3 "2004-07-28T02:28:48Z")

</div>

Hello Rolf.  
  
I am using EntireX Security on the mainframe (os/390). EXS has a Natural interface to RACF that can provide me some information and also can verify user-id and password.   
  
My question is, if I can use the same natural interface (NA2RES) in order to know what CICS transaction or what resources an user have access to on the mainframe.  
  
I know that NA2RES talk with ‘RACROUTE’ and racroute can give me some info…   
  
For example an user ‘AAAA’ only have access to ‘F100’ and ‘F200’ that are very legacy Cobol and Natural transaction already converted to the web using wrappers.   
  
The user ?BBBB? only has access to ‘F300’ and ‘F400’ already converted to the web too.   
  
The idea is to make a main web portal that authenticates and authorizes an user with RACF (Using EXS) and depending on the information that I can read from NA2RES I will show a page only with the application that the user have access to.   
  
‘AAAA’ will see a page with links to F100 and F200 only .   
‘BBBB’ will see a page with links to F300 and F400 only .   
  
Regards …

---

<div class="post-metadata">

**Author:** ![Rolf\_Bahlke](https://sea1.discourse-cdn.com/techcommunity/user_avatar/techcommunity.softwareag.com/rolf_bahlke/32/109_2.png) [@Rolf\_Bahlke](https://techcommunity.softwareag.com/u/Rolf_Bahlke)\
**Post date:** [July 29, 2004, 4:53pm UTC](https://techcommunity.softwareag.com/t/natural-api-for-racf/59019/4 "2004-07-29T16:53:29Z")

</div>

Hello Euridici,  
  
according to the “specialist” you can do that.  
He mentioned that NA2RES does not exist (in Natural), it’s called NA2NRES. In an NSF environment it is called NSFNRES.  
  
Kind regards,  
Rolf

---

<div class="post-metadata">

**Author:** ![Euro](https://avatars.discourse-cdn.com/v4/letter/e/4da419/32.png) [@Euro](https://techcommunity.softwareag.com/u/Euro)\
**Post date:** [July 29, 2004, 9:26pm UTC](https://techcommunity.softwareag.com/t/natural-api-for-racf/59019/5 "2004-07-29T21:26:51Z")

</div>

Ok. they are rigth is NA2NRES, I am making some test …   
The subprogram ask me for a function and a Class field, and I don’t know exactly what function and class do I need to do that???..   
  
This is an example that give me a list of users names…   
  
DEFINE DATA   
LOCAL USING NA2LEQU   
LOCAL USING NA2ARES   
END-DEFINE   
  
 #RES-FUNC = INDQRDN   
 #RES-CLAS = ‘USER’   
 #RES-PROF = ‘A’   
 #RES-FLDA(1) = ‘PGMRNAME’   
 \*   
 REPEAT UNTIL #RES-RETC \> 0   
 \*   
 CALLNAT ‘NA2NRES’ NA2ARES   
 \*   
 DISPLAY #RES-RETC #RES-SERR #RES-PROF #RES-DATA-A(0)  
 \*   
 LOOP   
 END   
  
  
I am trying to find the right function and class in an IBM RACF manual with no succes…   
  
Regards…

---

<div class="post-metadata">

**Author:** ![Rolf\_Bahlke](https://sea1.discourse-cdn.com/techcommunity/user_avatar/techcommunity.softwareag.com/rolf_bahlke/32/109_2.png) [@Rolf\_Bahlke](https://techcommunity.softwareag.com/u/Rolf_Bahlke)\
**Post date:** [August 2, 2004, 8:50pm UTC](https://techcommunity.softwareag.com/t/natural-api-for-racf/59019/6 "2004-08-02T20:50:25Z")

</div>

I’m just forwarding the information I received:  
  
_The class has to be a defined RACF class, such as USER or GROUP or DATASET or any user-defined class such as ADASEC, NBKSAG and so on._  
  
_The valid functions are defined in the LDA NA2LEQU:_  
  
_1 INDQRTV B 1 INIT\<H’01’\> /\* SF: EXTRACT  
1 INDQRDN B 1 INIT\<H’02’\> /\* EXTRACTN  
1 INDQUPD B 1 INIT\<H’03’\> /\* EXTRACT U  
1 INDQDEF B 1 INIT\<H’04’\> /\* DEFINE  
1 INDQDEL B 1 INIT\<H’05’\> /\* DELETE  
1 INDQCHK B 1 INIT\<H’06’\> /\* AUTH  
1 INDQDES B 1 INIT\<H’07’\> /\* DES  
1 INDQHSH B 1 INIT\<H’08’\> /\* HASH  
1 INDQINS B 1 INIT\<H’09’\> /\* INSTALLAT  
1 INDQSDE B 1 INIT\<H’0A’\> /\* STD DES  
1 INDQEXG B 1 INIT\<H’0B’\> /\* EXTRACTN(  
1 INDQPCH B 1 INIT\<H’0C’\> /\* AUTH/PROX_   
  
_So your example is extracting the field programmer name from the next user profile after ?A?._

---

<div class="post-metadata">

**Author:** ![Douglas\_Kelly](https://sea1.discourse-cdn.com/techcommunity/user_avatar/techcommunity.softwareag.com/douglas_kelly/32/102_2.png) [@Douglas\_Kelly](https://techcommunity.softwareag.com/u/Douglas_Kelly)\
**Post date:** [August 19, 2004, 11:46pm UTC](https://techcommunity.softwareag.com/t/natural-api-for-racf/59019/7 "2004-08-19T23:46:45Z")

</div>

two IBM links I found helpful to understand the fields being passed to NA2NRES:  
  
[http://publibfp.boulder.ibm.com/cgi-bin/bookmgr/BOOKS/ichmra01/B.1.5?SHELF=&DT=19950727111421&FS=FALSE](http://publibfp.boulder.ibm.com/cgi-bin/bookmgr/BOOKS/ichmra01/B.1.5?SHELF=&DT=19950727111421&FS=FALSE)  
  
and   
  
[http://publibfp.boulder.ibm.com/cgi-bin/bookmgr/BOOKS/ichmra01/CCONTENTS](http://publibfp.boulder.ibm.com/cgi-bin/bookmgr/BOOKS/ichmra01/CCONTENTS)  
  
Be aware that requests to NA2NRES for resources outside those mentioned in the EXS documentation can cause EntireX Security gateway task to abend, so be sure to use a test environment! (And report any abends to support so they can reduce impact to other users!)  
  
Douglas Kelly,  
Principal Consultant  
Software AG, Inc  
Sacramento, California

---

<div class="post-metadata">

**Author:** ![system](https://global.discourse-cdn.com/techcommunity/original/3X/c/d/cd19967bb605d28a72d77eb83a1cae22f3df2eb8.svg) [@system](https://techcommunity.softwareag.com/u/system)\
**Post date:** [April 2, 2021, 2:39pm UTC](https://techcommunity.softwareag.com/t/natural-api-for-racf/59019/8 "2021-04-02T14:39:36Z")

</div>


