Applies to: Siebel System Software - Version: 7.7.2 SIA [18325] and later [Release: V7 and later ]
IBM AIX on POWER Systems (64-bit)
Database: Oracle 9.2.0.4
Application Server OS: IBM AIX 5L 5.2
Database Server OS: IBM AIX 5L 5.2
This document was previously published as Siebel SR 38-1767022791.
SymptomsSBL-EAI-05162
Requirement was to use WS-Security for calling inbound Siebel WebServices. A web service without WS-Security could be invoked ok with following SOAP document :-
<?xml version="1.0" encoding="utf-16"?>
<soap:Envelope xmlns:soap="http://schemas.xmlsoap.org/soap/envelope/" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:xsd="http://www.w3.org/2001/XMLSchema">
<soap:Body>
<FID_FINAREF_QRY_SelectLOYMemberFF_Input xmlns="http://fnac.dom">
<MemberNumber>40008336</MemberNumber>
</FID_FINAREF_QRY_SelectLOYMemberFF_Input>
</soap:Body>
</soap:Envelope>
The following document with WS-Security was attempted :-
<?xml version="1.0" encoding="utf-8"?>
<soap:Envelope xmlns:soap="http://schemas.xmlsoap.org/soap/envelope/"
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
xmlns:xsd="http://www.w3.org/2001/XMLSchema">
<soap:Header>
<wsse:Security xmlns:wsse="http://docs.oasis-open.org/wss/2004/01/oasis-200401-wss-wssecurity-secext-1.0.xsd"
soap:mustUnderstand="0">
<wsse:UsernameToken>
<wsse:Username>FINAREF</wsse:Username>
<wsse:Password Type="wsse:PasswordText">init</wsse:Password>
</wsse:UsernameToken>
</wsse:Security>
</soap:Header>
<soap:Body>
<FID_FINAREF_QRY_SelectLOYMemberFF_Input xmlns="http://fnac.dom">
<MemberNumber>40008336</MemberNumber>
</FID_FINAREF_QRY_SelectLOYMemberFF_Input>
</soap:Body>
</soap:Envelope>
But the following error was reported :-
SBL-EAI-05162: En-t�te de s�curit� SOAP - Le jeton du nom de l'utilisateur est requis pour l'op�ration "SelectLOYMemberFF".
Translated text :-
SOAP Security Header UsernameToken is required for operation '%1'.
It was then found that the following request could be processed ok :-
<soap:Envelope
xmlns:soap="http://schemas.xmlsoap.org/soap/envelope/"
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
xmlns:xsd="http://www.w3.org/2001/XMLSchema">
<soap:Header>
<wsse:Security xmlns:wsse="http://schemas.xmlsoap.org/ws/2002/07/secext" soap:mustUnderstand="0">
<wsse:UsernameToken>
<wsse:Username>EIMUSER</wsse:Username>
<wsse:Password Type="wsse:PasswordText">init</wsse:Password>
</wsse:UsernameToken>
</wsse:Security>
</soap:Header>
<soap:Body>
<FID_FINAREF_QRY_SelectLOYMemberWSSE_Input xmlns="http://fnac.dom">
<MemberNumber>40008336</MemberNumber>
</FID_FINAREF_QRY_SelectLOYMemberWSSE_Input>
</soap:Body>
</soap:Envelope>
CauseIn this case the wsse tag was not referencing the correct namespace :-
<wsse:Security xmlns:wsse=="http://docs.oasis-open.org/wss/2004/01/oasis-200401-wss-wssecurity-secext-1.0.xsd"
...
The namespace url for WS-Security should follow this syntax :-
<wsse:Security xmlns:wsse="http://schemas.xmlsoap.org/ws/2002/07/secext" soap:mustUnderstand="0">
(i.e. or http://schemas.xmlsoap.org/ws/*/secext, where * can be any text.
In this case, the BEA WebLogic system did not follow that convention by default.
Enhancement request Bug 10508308 has been logged to request support for latest specifications for WS-Security.
At the moment, Siebel does not support OASIS 2004.
SolutionWhen the namespace for the inbound request used was amended to use the following, the request could be processed :-
<wsse:Security xmlns:wsse="http://schemas.xmlsoap.org/ws/2002/07/secext" soap:mustUnderstand="0">
Related Products Siebel > Customer Relationship Management > CRM - Enterprise Edition > Siebel System Software Keywords | |
NAMESPACE; WEBSERVICE; INBOUND; WEBLOGIC; SOAP; WEB SERVICES; WS-SECURITY | |
Errors | |
SBL-EAI-05162 | |
אין תגובות:
הוסף רשומת תגובה