cancel
Showing results for 
Search instead for 
Did you mean: 

Dynamic Username and password in SOAP reciever

Former Member
0 Kudos

Hi,

We have a requirement where we have to post the data to a webservice using SOAP reciever. However, the challenge is that we have multiple username/PWD and based on a field in source message, decide at the runtime, which Username/PWD to choose.

Please suggest how can we proceed.

Accepted Solutions (0)

Answers (1)

Answers (1)

former_member854360
Active Contributor
0 Kudos

Authentication Keys

If authentication is required for the receiver system, you can enter a password and a confirmation for each key value. This means that you do not need to write passwords in the enhanced message header.

If you want to specify or display authentication keys, select View Authorization Keys.

You can enter and confirm passwords for each authentication key value (TAuthKey or TproyxAuthKey).

http://help.sap.com/saphelp_nw04/helpdata/en/29/5bd93f130f9215e10000000a155106/content.htm

Former Member
0 Kudos

Thanks Debashish for your reply.

But I have different usernames also for the webservice system...how can i maintain that ?

baskar_gopalakrishnan2
Active Contributor
0 Kudos

An another way is sending user credentials on the source data structure fields and using dynamic configuration UDF mapping you can change the username and password and call webservice on the target side.

Former Member
0 Kudos

Thats precisely what we want, Baskar, but the question is how ?

Can you provide some pointers ?

baskar_gopalakrishnan2
Active Contributor
0 Kudos

Create user and password fields in the sender/source data structure. Use them and modify it using dynamic configuration UDF coding. I believe you know dynamic configuration fields to change. Previous reply already given link for it.

Or you can use variable substitution and through which you can specify dynamically in the soap receiver comm channel user name and password.

For variable substitution please refer this link..

anupam_ghosh2
Active Contributor
0 Kudos

Hi,

you can modify contents of SOAP envelop using java mapping. The mapping program takes input from source message and change the Username/PWD at runtime. Forum members might be able to help you more if you would post the source message and target message xml structure. Please also kindly mention the version of PI server you are working on.

regards

Anupam

Former Member
0 Kudos

Baskar,

I really doubt if we can use variable substituion with SOAP reciever CC ....right ?

Also, I have a question:

How can we use the field "Variable Header(XHeaderName1) in variable transport binding" in SOAP reciever channel?

KeshavDesai
Explorer
0 Kudos

Hi

I am not sure, if you 'must' use PI in your case (for any message transformations or other reasons). If possible, check the feasibility of configuring multiple logical ports in SOAMANAGER of your sending system (again assuming its an SAP ABAP/Java AS) with same endpoint details but different consumer security settings. Before you fire the web service in your sender system, check the payload content and dynamically choose the logical port relevant for a particular uname/pwd.

Wouldnt it be a risk to pass user credentials as a part of your payload?

Anyways, that my 2 cents, just thinking aloud.

cheers

Keshav

Former Member
0 Kudos

Hi Jaya,

I have the same exact issue. Could you please let me know how you solved the issue?

Mahesh