cancel
Showing results for 
Search instead for 
Did you mean: 

Rfc Library: SSO via SNC and RfcGetTicket

chrisp_vigelius
Explorer
0 Kudos

Hi,

i am connecting to a WAS 6.20 system through SNC/Active Directory SSO, e.g. using

"SNC_MODE=1 SNC_PARTNERNAME=p:SAPServiceXXX@domain SNC_LIB=c:\windows\system32\gsskrb5.dll"

instead of "USER= PASSWD=" the RfcOpenEx logon string. This works fine, I can log on to the system and execute RFCs without having to provide the username and pw.

However, since I want the solution also to work with BSP, I need a SAPSSO2 ticket. No problem, RfcGetTicket() should get me one, says the documentation. But here's my problem:

I have to add not only "GETSSO2=1" to the connect string, but also the SAP username of the user, otherwise RfcGetTicket() returns only a "0" instead of the ticket (providing the password is not necessary).

Can someone confirm whether

a.) this behaviour is by design

b.) this should work, and when it does not, my server is not configured correctly

or

c.) there is some other way to get the ticket without having to provide the SAP username

On a side note, the documentation could mention that it is necessary to actually call a function module to get the ticket; calling RfcGetTicket() right after RfcOpenEx() does not work.

regards,

chris

Accepted Solutions (0)

Answers (1)

Answers (1)

chrisp_vigelius
Explorer
0 Kudos

Just in case anyone is interested in the "solution":

I found out the empty SSO Ticket is only returned if if the (dummy) function module "RFC_PING" is called. If any(?) other module is used instead, the ticket gets returned as expected (even if RFC_PING is copied to e.g. "ZRFC_PING").

This is a rather strange effect, I suspect this has something to do with internal optimizations.