I want to use the IdentitySAMLSSOService.wsdl to end a session using the doSingleLogout method but I can't find any documentation around. The method asks for a sessionId, the problem is that I don't know where to find that value, I've looking in the SAML Response, headers, etc.
<soap:Envelope xmlns:soap="http://www.w3.org/2003/05/soap-envelope" xmlns:xsd="http://org.apache.axis2/xsd">
<soap:Header/>
<soap:Body>
<xsd:doSingleLogout>
<!--Optional:-->
<xsd:sessionId></xsd:sessionId>
</xsd:doSingleLogout>
</soap:Body>
</soap:Envelope>
The ouput seems to be the same always with all the values I've tried.
<soapenv:Envelope xmlns:soapenv="http://www.w3.org/2003/05/soap-envelope">
<soapenv:Body>
<ns:doSingleLogoutResponse xmlns:ns="http://org.apache.axis2/xsd">
<ns:return xsi:type="ax2362:SAMLSSOReqValidationResponseDTO" xmlns:ax2360="http://base.identity.carbon.wso2.org/xsd" xmlns:ax2362="http://dto.saml.sso.identity.carbon.wso2.org/xsd" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:ax2364="http://util.java/xsd">
<ax2362:assertionConsumerURL xsi:nil="true"/>
<ax2362:destination xsi:nil="true"/>
<ax2362:doSingleLogout>false</ax2362:doSingleLogout>
<ax2362:forceAuthn>false</ax2362:forceAuthn>
<ax2362:id xsi:nil="true"/>
<ax2362:idPInitSSO>false</ax2362:idPInitSSO>
<ax2362:issuer xsi:nil="true"/>
<ax2362:logOutReq>true</ax2362:logOutReq>
<ax2362:loginPageURL xsi:nil="true"/>
<ax2362:logoutRespDTO xsi:nil="true"/>
<ax2362:logoutResponse xsi:nil="true"/>
<ax2362:passive>false</ax2362:passive>
<ax2362:queryString xsi:nil="true"/>
<ax2362:requestMessageString xsi:nil="true"/>
<ax2362:response xsi:nil="true"/>
<ax2362:rpSessionId xsi:nil="true"/>
<ax2362:subject xsi:nil="true"/>
<ax2362:valid>false</ax2362:valid>
</ns:return>
</ns:doSingleLogoutResponse>
</soapenv:Body>
</soapenv:Envelope>
I'm using Identity Server 5.0.0 without SP1. The WebService is built into org.wso2.carbon.identity.sso.saml (4.2.3) and it's exposed in identityserverurl:9443/services/IdentitySAMLSSOService?wsdl.
Thanks in advance.
According to the execution flow, it can be any value. As doSingleLogout method does not consider an actual SAML2 logout request, there is no any validate is happened according to the sessionid value. However, in real SSO signal logout flow, sessionid would be the value of the 'samlssoTokenId' cookie which is set in to the browser. Please note, doSingleLogout method can not be used to send SAML logout request to other session participants. As i know, it can be used to destroy the SSO session in WSO2IS.
Also, you can destroy the WSO2IS SSO session using following way by calling commonauth end point as mentioned in last selection in this
https://localhost:9443/commonauth?commonAuthLogout=true&type=oidc2&sessionDataKey=7fa50562-2d0f-4234-8e39-8a7271b9b273&commonAuthCallerPath=http://localhost:8080/SSOWebApp/&relyingParty=SSOWebAPP
Related
I'm trying to hit Fedex address validation api from postman using production credentials but getting authentication failed error in the response ..
There is no information related to production credentials in fedex api documentation.
I'm using the production EndPoint https://ws.fedex.com:443/web-services
Here is the request body
<soapenv:Envelope xmlns:soapenv="http://schemas.xmlsoap.org/soap/envelope/"
xmlns:v4="http://fedex.com/ws/addressvalidation/v4">
<soapenv:Header/>
<soapenv:Body>
<v4:AddressValidationRequest>
<v4:WebAuthenticationDetail>
<v4:ParentCredential>
<v4:Key>PRODUCTION KEY</v4:Key>
<v4:Password>PRODUCTION PASSWORD</v4:Password>
</v4:ParentCredential>
<v4:UserCredential>
<v4:Key>PRODUCTION KEY</v4:Key>
<v4:Password>PRODUCTION PASSWORD</v4:Password>
</v4:UserCredential>
</v4:WebAuthenticationDetail>
<v4:ClientDetail>
<v4:AccountNumber>PRODUCTION ACCOUNT</v4:AccountNumber>
<v4:MeterNumber>PRODUCTION METER</v4:MeterNumber>
<v4:Localization>
<v4:LanguageCode>EN</v4:LanguageCode>
<v4:LocaleCode>EN</v4:LocaleCode>
</v4:Localization>
</v4:ClientDetail>
<v4:TransactionDetail>
<v4:CustomerTransactionId>AddressValidationRequest_v54534</v4:CustomerTransactionId>
<v4:Localization>
<v4:LanguageCode>EN</v4:LanguageCode>
<v4:LocaleCode>EN</v4:LocaleCode>
</v4:Localization>
</v4:TransactionDetail>
<v4:Version>
<v4:ServiceId>aval</v4:ServiceId>
<v4:Major>4</v4:Major>
<v4:Intermediate>0</v4:Intermediate>
<v4:Minor>0</v4:Minor>
</v4:Version>
<v4:AddressesToValidate>
<v4:ClientReferenceId>Shelby Drive</v4:ClientReferenceId>
<v4:Address>
<v4:StreetLines>1155 15th Street NW Suite 720 </v4:StreetLines>
<v4:City>Washington</v4:City>
<v4:StateOrProvinceCode>DC</v4:StateOrProvinceCode>
<v4:PostalCode>20005</v4:PostalCode>
<v4:UrbanizationCode>CO</v4:UrbanizationCode>
<v4:CountryCode>US</v4:CountryCode>
<v4:Residential>0</v4:Residential>
</v4:Address>
</v4:AddressesToValidate>
</v4:AddressValidationRequest>
</soapenv:Body>
</soapenv:Envelope>
Here is the response what m getting
<SOAP-ENV:Envelope xmlns:SOAP-ENV="http://schemas.xmlsoap.org/soap/envelope/">
<SOAP-ENV:Header/>
<SOAP-ENV:Body>
<v4:AddressValidationReply xmlns:v4="http://fedex.com/ws/addressvalidation/v4">
<v4:HighestSeverity xmlns:v4="http://fedex.com/ws/addressvalidation/v4">ERROR</v4:HighestSeverity>
<v4:Notifications xmlns:v4="http://fedex.com/ws/addressvalidation/v4">
<v4:Severity xmlns:v4="http://fedex.com/ws/addressvalidation/v4">ERROR</v4:Severity>
<v4:Source xmlns:v4="http://fedex.com/ws/addressvalidation/v4">prof</v4:Source>
<v4:Code xmlns:v4="http://fedex.com/ws/addressvalidation/v4">1000</v4:Code>
<v4:Message xmlns:v4="http://fedex.com/ws/addressvalidation/v4">Authentication Failed</v4:Message>
</v4:Notifications>
<v4:TransactionDetail xmlns:v4="http://fedex.com/ws/addressvalidation/v4">
<v4:CustomerTransactionId xmlns:v4="http://fedex.com/ws/addressvalidation/v4">AddressValidationRequest_v54534</v4:CustomerTransactionId>
<v4:Localization xmlns:v4="http://fedex.com/ws/addressvalidation/v4">
<v4:LanguageCode xmlns:v4="http://fedex.com/ws/addressvalidation/v4">EN</v4:LanguageCode>
<v4:LocaleCode xmlns:v4="http://fedex.com/ws/addressvalidation/v4">EN</v4:LocaleCode>
</v4:Localization>
</v4:TransactionDetail>
<v4:Version xmlns:v4="http://fedex.com/ws/addressvalidation/v4">
<v4:ServiceId xmlns:v4="http://fedex.com/ws/addressvalidation/v4">aval</v4:ServiceId>
<v4:Major xmlns:v4="http://fedex.com/ws/addressvalidation/v4">4</v4:Major>
<v4:Intermediate xmlns:v4="http://fedex.com/ws/addressvalidation/v4">0</v4:Intermediate>
<v4:Minor xmlns:v4="http://fedex.com/ws/addressvalidation/v4">0</v4:Minor>
</v4:Version>
</v4:AddressValidationReply>
</SOAP-ENV:Body>
</SOAP-ENV:Envelope>
please help :(
<v4:Message xmlns:v4="http://fedex.com/ws/addressvalidation/v4">Authentication Failed</v4:Message>
Check you key, password, accountnumber, meternumber
I've created and saved a search in NetSuite. Now I want to use the same search in SuiteTalk web services call. There is no option to set SavedSearchId neither in CustomerSearchBasic nor in CustomerSearch. So I used CustomerSearchAdvanced as below
<soapenv:Envelope xmlns:soapenv="http://schemas.xmlsoap.org/soap/envelope/" xmlns:urn="urn:messages_2016_1.platform.webservices.netsuite.com" xmlns:urn1="urn:core_2016_1.platform.webservices.netsuite.com" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">
<soapenv:Header>
<urn:searchPreferences>
<urn:pageSize>10</urn:pageSize>
</urn:searchPreferences>
<urn:applicationInfo>
<urn:applicationId>some id</urn:applicationId>
</urn:applicationInfo>
<urn:passport>
<!-- With Credentials -->
</urn:passport>
</soapenv:Header>
<soapenv:Body>
<urn:search>
<urn:searchRecord ns7:savedSearchId = "732" xsi:type="ns7:CustomerSearchAdvanced"
xmlns:ns7="urn:relationships_2016_1.lists.webservices.netsuite.com">
</urn:searchRecord>
</urn:search>
</soapenv:Body>
</soapenv:Envelope>
But I am getting this error from NetSuite server
<soapenv:Envelope xmlns:soapenv="http://schemas.xmlsoap.org/soap/envelope/" xmlns:xsd="http://www.w3.org/2001/XMLSchema" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">
<soapenv:Header>
<platformMsgs:documentInfo xmlns:platformMsgs="urn:messages_2016_1.platform.webservices.netsuite.com">
<platformMsgs:nsId>some id</platformMsgs:nsId>
</platformMsgs:documentInfo>
</soapenv:Header>
<soapenv:Body>
<searchResponse xmlns="urn:messages_2016_1.platform.webservices.netsuite.com">
<platformCore:searchResult xmlns:platformCore="urn:core_2016_1.platform.webservices.netsuite.com">
<platformCore:status isSuccess="false">
<platformCore:statusDetail type="ERROR">
<platformCore:code>UNEXPECTED_ERROR</platformCore:code>
<platformCore:message>An unexpected error occurred. Error ID: iufcwwrkjcqii34kqgag</platformCore:message>
</platformCore:statusDetail>
</platformCore:status>
</platformCore:searchResult>
</searchResponse>
</soapenv:Body>
</soapenv:Envelope>
I am not able to get information about error Id : iufcwwrkjcqii34kqgag
Is it possible to use Saved Search in SuiteTalk Web services? If yes, what call and types should I use?
I am using SOAP UI project created using this wsdl
Below is the successfully working SOAP request and what you need to configure the Netsuite Account, Token, consumer key, nonce, timestamp and signature. Use the saved search id (here -7734) to invoke the saved search
<soap:Envelope soap:encodingStyle="http://schemas.xmlsoap.org/soap/encoding/" xmlns:soap="http://schemas.xmlsoap.org/soap/envelope/" xmlns:messages="urn:messages_2020_1.platform.webservices.netsuite.com" xmlns:accountingLists="urn:accounting_2020_1.lists.webservices.netsuite.com" xmlns:employeesLists="urn:employees_2020_1.lists.webservices.netsuite.com" xmlns:employeesTransactionsTypes="urn:types.employees_2020_1.transactions.webservices.netsuite.com" xmlns:demandplanningTransactions="urn:demandplanning_2020_1.transactions.webservices.netsuite.com" xmlns:common="urn:common_2020_1.platform.webservices.netsuite.com" xmlns:commonTypes="urn:types.common_2020_1.platform.webservices.netsuite.com" xmlns:accountingListsTypes="urn:types.accounting_2020_1.lists.webservices.netsuite.com" xmlns:customizationSetup="urn:customization_2020_1.setup.webservices.netsuite.com" xmlns:inventoryTransactionsTypes="urn:types.inventory_2020_1.transactions.webservices.netsuite.com" xmlns:filecabinetDocuments="urn:filecabinet_2020_1.documents.webservices.netsuite.com" xmlns:bankTransactionsTypes="urn:types.bank_2020_1.transactions.webservices.netsuite.com" xmlns:communicationGeneralTypes="urn:types.communication_2020_1.general.webservices.netsuite.com" xmlns:customizationSetupTypes="urn:types.customization_2020_1.setup.webservices.netsuite.com" xmlns:supplychainListsTypes="urn:types.supplychain_2020_1.lists.webservices.netsuite.com" xmlns:core="urn:core_2020_1.platform.webservices.netsuite.com" xmlns:coreTypes="urn:types.core_2020_1.platform.webservices.netsuite.com" xmlns:soapenc="http://schemas.xmlsoap.org/soap/encoding/" xmlns:supplychainLists="urn:supplychain_2020_1.lists.webservices.netsuite.com" xmlns:demandplanningTransactionsTypes="urn:types.demandplanning_2020_1.transactions.webservices.netsuite.com" xmlns:websiteLists="urn:website_2020_1.lists.webservices.netsuite.com" xmlns:salesTransactions="urn:sales_2020_1.transactions.webservices.netsuite.com" xmlns:salesTransactionsTypes="urn:types.sales_2020_1.transactions.webservices.netsuite.com" xmlns:relationshipsLists="urn:relationships_2020_1.lists.webservices.netsuite.com" xmlns:inventoryTransactions="urn:inventory_2020_1.transactions.webservices.netsuite.com" xmlns:employeesListsTypes="urn:types.employees_2020_1.lists.webservices.netsuite.com" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:customersTransactions="urn:customers_2020_1.transactions.webservices.netsuite.com" xmlns:schedulingActivitiesTypes="urn:types.scheduling_2020_1.activities.webservices.netsuite.com" xmlns:financialTransactions="urn:financial_2020_1.transactions.webservices.netsuite.com" xmlns:xsd="http://www.w3.org/2001/XMLSchema" xmlns:relationshipsListsTypes="urn:types.relationships_2020_1.lists.webservices.netsuite.com" xmlns:employeesTransactions="urn:employees_2020_1.transactions.webservices.netsuite.com" xmlns:faults="urn:faults_2020_1.platform.webservices.netsuite.com" xmlns:marketingListsTypes="urn:types.marketing_2020_1.lists.webservices.netsuite.com" xmlns:communicationGeneral="urn:communication_2020_1.general.webservices.netsuite.com" xmlns:faultsTypes="urn:types.faults_2020_1.platform.webservices.netsuite.com" xmlns:supportListsTypes="urn:types.support_2020_1.lists.webservices.netsuite.com" xmlns:websiteListsTypes="urn:types.website_2020_1.lists.webservices.netsuite.com" xmlns:purchasesTransactions="urn:purchases_2020_1.transactions.webservices.netsuite.com" xmlns:financialTransactionsTypes="urn:types.financial_2020_1.transactions.webservices.netsuite.com" xmlns:schedulingActivities="urn:scheduling_2020_1.activities.webservices.netsuite.com" xmlns:bankTransactions="urn:bank_2020_1.transactions.webservices.netsuite.com" xmlns:marketingLists="urn:marketing_2020_1.lists.webservices.netsuite.com" xmlns:customersTransactionsTypes="urn:types.customers_2020_1.transactions.webservices.netsuite.com" xmlns:purchasesTransactionsTypes="urn:types.purchases_2020_1.transactions.webservices.netsuite.com" xmlns:generalTransactions="urn:general_2020_1.transactions.webservices.netsuite.com" xmlns:filecabinetDocumentsTypes="urn:types.filecabinet_2020_1.documents.webservices.netsuite.com">
<soap:Header>
<urn:tokenPassport xmlns:urn="urn:messages_2020_1.platform.webservices.netsuite.com">
<ns8:account xmlns:ns8="urn:core_2020_1.platform.webservices.netsuite.com">NetSuite Account</ns8:account>
<ns8:consumerKey xmlns:ns8="urn:core_2020_1.platform.webservices.netsuite.com">Consumer Key</ns8:consumerKey>
<ns8:token xmlns:ns8="urn:core_2020_1.platform.webservices.netsuite.com">Token</ns8:token>
<ns8:nonce xmlns:ns8="urn:core_2020_1.platform.webservices.netsuite.com">nonce</ns8:nonce>
<ns8:timestamp xmlns:ns8="urn:core_2020_1.platform.webservices.netsuite.com">timestamp</ns8:timestamp>
<ns8:signature xmlns:ns8="urn:core_2020_1.platform.webservices.netsuite.com" algorithm="HMAC_SHA256">t/WP6f33JePu7rdqtnInwPtJSRIB24RNy3GKhDDpn94=</ns8:signature>
</urn:tokenPassport>
<ns1:preferences xmlns:ns1="urn:messages.platform.webservices.netsuite.com">
<ns2:ignoreReadOnlyFields xmlns:ns2="urn:messages_2020_1.platform.webservices.netsuite.com">true</ns2:ignoreReadOnlyFields>
</ns1:preferences>
<ns3:searchPreferences xmlns:ns3="urn:messages.platform.webservices.netsuite.com">
<ns4:bodyFieldsOnly xmlns:ns4="urn:messages_2020_1.platform.webservices.netsuite.com">true</ns4:bodyFieldsOnly>
<ns5:pageSize xmlns:ns5="urn:messages_2020_1.platform.webservices.netsuite.com">999</ns5:pageSize>
</ns3:searchPreferences>
</soap:Header>
<soap:Body>
<ns24:search xmlns:ns5="urn:filecabinet_2020_1.documents.webservices.netsuite.com" xmlns:ns6="urn:relationships_2020_1.lists.webservices.netsuite.com" xmlns:ns3="urn:common_2020_1.platform.webservices.netsuite.com" xmlns:ns4="urn:communication_2020_1.general.webservices.netsuite.com" xmlns:ns9="urn:sales_2020_1.transactions.webservices.netsuite.com" xmlns:ns7="urn:support_2020_1.lists.webservices.netsuite.com" xmlns:ns8="urn:accounting_2020_1.lists.webservices.netsuite.com" xmlns="urn:core_2020_1.platform.webservices.netsuite.com" xmlns:ns19="urn:supplychain_2020_1.lists.webservices.netsuite.com" xmlns:ns18="urn:demandplanning_2020_1.transactions.webservices.netsuite.com" xmlns:ns2="urn:scheduling_2020_1.activities.webservices.netsuite.com" xmlns:ns17="urn:marketing_2020_1.lists.webservices.netsuite.com" xmlns:ns16="urn:employees_2020_1.transactions.webservices.netsuite.com" xmlns:ns15="urn:website_2020_1.lists.webservices.netsuite.com" xmlns:ns14="urn:employees_2020_1.lists.webservices.netsuite.com" xmlns:ns13="urn:customization_2020_1.setup.webservices.netsuite.com" xmlns:ns24="urn:messages_2020_1.platform.webservices.netsuite.com" xmlns:ns12="urn:financial_2020_1.transactions.webservices.netsuite.com" xmlns:ns23="urn:faults_2020_1.platform.webservices.netsuite.com" xmlns:ns11="urn:customers_2020_1.transactions.webservices.netsuite.com" xmlns:ns22="urn:general_2020_1.transactions.webservices.netsuite.com" xmlns:ns10="urn:purchases_2020_1.transactions.webservices.netsuite.com" xmlns:ns21="urn:inventory_2020_1.transactions.webservices.netsuite.com" xmlns:ns20="urn:bank_2020_1.transactions.webservices.netsuite.com">
<ns24:searchRecord xsi:type="ns13:CustomRecordSearchAdvanced" savedSearchId="7734"/>
</ns24:search>
</soap:Body>
</soap:Envelope>
While I create the service provider and add the Inbound Authentication Config -> SAML2 Web SSO Configuration via Web UI of Identity Server admin panel everything works and I see the SAMLSSO provider in the expanded tab later.
Now I get stuck with creating the Service Provider and adding the SAMLSSO provider via API.
I am using the following services to do the work:
IdentityApplicationManagementService?wsdl - for creating service provider.
IdentitySAMLSSOConfigService?wsdl - for creating SAMLSSO provider.
I send the following request in order:
Firstly create the SAMLSSO provider:
POST /services/IdentitySAMLSSOConfigService.IdentitySAMLSSOConfigServiceHttpsSoap11Endpoint/ HTTP/1.1
Host: test.com
Connection: Keep-Alive
User-Agent: PHP-SOAP/5.6.11-1ubuntu3.4
Content-Type: text/xml; charset=utf-8
SOAPAction: "urn:addRPServiceProvider"
Content-Length: 1228
Authorization: Basic *****
<?xml version="1.0" encoding="UTF-8"?>
<SOAP-ENV:Envelope
xmlns:SOAP-ENV="http://schemas.xmlsoap.org/soap/envelope/"
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
xmlns:ns1="http://dto.saml.sso.identity.carbon.wso2.org/xsd"
xmlns:ns2="http://org.apache.axis2/xsd">
<SOAP-ENV:Body>
<ns2:addRPServiceProvider>
<ns2:spDto>
<ns1:assertionConsumerUrl xsi:nil="true"/>
<ns1:assertionConsumerUrls>https://test.shib/Shibboleth.sso/SAML2/POST</ns1:assertionConsumerUrls>
<ns1:attributeConsumingServiceIndex xsi:nil="true"/>
<ns1:certAlias xsi:nil="true"/>
<ns1:defaultAssertionConsumerUrl>https://test.shib/Shibboleth.sso/SAML2/POST</ns1:defaultAssertionConsumerUrl>
<ns1:digestAlgorithmURI xsi:nil="true"/>
<ns1:idpInitSLOReturnToURLs xsi:nil="true"/>
<ns1:issuer>https://tesh.shib/shibboleth</ns1:issuer>
<ns1:loginPageURL xsi:nil="true"/>
<ns1:nameIDFormat xsi:nil="true"/>
<ns1:nameIdClaimUri xsi:nil="true"/>
<ns1:requestedAudiences xsi:nil="true"/>
<ns1:requestedClaims xsi:nil="true"/>
<ns1:requestedRecipients xsi:nil="true"/>
<ns1:signingAlgorithmURI xsi:nil="true"/>
<ns1:sloRequestURL xsi:nil="true"/>
<ns1:sloResponseURL xsi:nil="true"/>
</ns2:spDto>
</ns2:addRPServiceProvider>
</SOAP-ENV:Body>
</SOAP-ENV:Envelope>
Then I create the Service Provider with Inbound authentication config set with the SAMLSSO provider as mentioned here:
POST /services/IdentityApplicationManagementService.IdentityApplicationManagementServiceHttpsSoap11Endpoint/ HTTP/1.1
Host: test.com
Connection: Keep-Alive
User-Agent: PHP-SOAP/5.6.11-1ubuntu3.4
Content-Type: text/xml; charset=utf-8
SOAPAction: "urn:createApplication"
Content-Length: 1934
Authorization: Basic ****
<?xml version="1.0" encoding="UTF-8"?>
<SOAP-ENV:Envelope
xmlns:SOAP-ENV="http://schemas.xmlsoap.org/soap/envelope/"
xmlns:ns1="http://model.common.application.identity.carbon.wso2.org/xsd"
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
xmlns:ns2="http://org.apache.axis2/xsd">
<SOAP-ENV:Body>
<ns2:createApplication>
<ns2:serviceProvider>
<ns1:applicationName>tect_com</ns1:applicationName>
<ns1:claimConfig xsi:nil="true"/>
<ns1:description>Test SP</ns1:description>
<ns1:inboundAuthenticationConfig>
<ns1:inboundAuthenticationRequestConfigs>
<ns1:friendlyName xsi:nil="true"/>
<ns1:inboundAuthKey>https://test.shib/shibboleth</ns1:inboundAuthKey>
<ns1:inboundAuthType>samlsso</ns1:inboundAuthType>
<ns1:properties xsi:nil="true"/>
</ns1:inboundAuthenticationRequestConfigs>
<ns1:inboundAuthenticationRequestConfigs>
<ns1:friendlyName xsi:nil="true"/>
<ns1:inboundAuthKey></ns1:inboundAuthKey>
<ns1:inboundAuthType>openid</ns1:inboundAuthType>
<ns1:properties xsi:nil="true"/>
</ns1:inboundAuthenticationRequestConfigs>
<ns1:inboundAuthenticationRequestConfigs>
<ns1:friendlyName xsi:nil="true"/>
<ns1:inboundAuthKey></ns1:inboundAuthKey>
<ns1:inboundAuthType>passivests</ns1:inboundAuthType>
<ns1:properties xsi:nil="true"/>
</ns1:inboundAuthenticationRequestConfigs>
</ns1:inboundAuthenticationConfig>
<ns1:inboundProvisioningConfig xsi:nil="true"/>
<ns1:localAndOutBoundAuthenticationConfig xsi:nil="true"/>
<ns1:outboundProvisioningConfig xsi:nil="true"/>
<ns1:owner>
<ns1:tenantDomain>user.com</ns1:tenantDomain>
<ns1:userName>user</ns1:userName>
<ns1:userStoreDomain xsi:nil="true"/>
</ns1:owner>
<ns1:permissionAndRoleConfig xsi:nil="true"/>
<ns1:requestPathAuthenticatorConfigs xsi:nil="true"/>
<ns1:saasApp>true</ns1:saasApp>
<ns1:spProperties xsi:nil="true"/>
</ns2:serviceProvider>
</ns2:createApplication>
</SOAP-ENV:Body>
</SOAP-ENV:Envelope>
Both request are accepted. I can see the Service Provider in Web UI, but the section with SAML Web SSO Configuration is empty.
If I try to authenticate with my new SP everything works.
If I try add the same SAML SSO Config via Web UI it gives me an error that it already exists.
The table SP_INBOUND_AUTH is empty while creating SAMLSSO Config using API. But if I create the SAML Configuration using Web UI, I can see the record in SP_INBOUND_AUTH table.
What am I missing?
When creating the Service provider, it should be done in two steps.
creating a service provider for the given application name and the description (createApplication).
update it with other configurations (updateApplication).
So in your case, createApplication should be invoked only with application name and description. Then you have to invoke updateApplication operation and configure its inbound authentication, etc.
[1] https://docs.wso2.com/display/IS510/Using+the+Service+Provider+API#UsingtheServiceProviderAPI-createApplication
I am working on a camel based cxf-webservice. I have to show all types of error messages in my responses which I am doing properly in my service layer. But if a request is invalidated still I was getting a correct response.
For the following type of request
<soapenv:Body>
...
<!--Optional:-->
<prod:CandidateMaximumQuantity/>
<!--Optional:-->
<prod:CandidatePerPageMaximumQuantity>100</prod:CandidatePerPageMaximumQuantity>
<!--Optional:-->
<prod:CandidateDisplayStartSequenceNumber>1</prod:CandidateDisplayStartSequenceNumber>
...
</soapenv:Body>
In the soap validator i am getting invalid decimal value. expected at least one digit.
After writing the following code in my cxf-context I am able to do the input request validation.
But in the response I
<cxf:properties>
<entry key="allowStreaming" value="false" />
<entry key="schema-validation-enabled" value="${isSchemaValidationEnabled}" />
</cxf:properties>
Where isSchemaValidationEnabled = true.
So I am getting the following response in my SOAP UI.
<soap:Envelope xmlns:soap="http://schemas.xmlsoap.org/soap/envelope/">
<soap:Body>
<soap:Fault>
<faultcode>soap:Client</faultcode>
<faultstring>Unmarshalling Error: cvc-datatype-valid.1.2.1: '' is not a valid value for 'integer'.</faultstring>
</soap:Fault>
</soap:Body>
My requirement is to create custom error message, so that I can propagate the SOAP error in to my response.And I can show a format of following message
<soapenv:Envelope xmlns:soapenv="http://schemas.xmlsoap.org/soap/envelope/">
<soapenv:Body>
<prod:Response ServiceVersionNumber=" " xmlns:prod="****">
<prod:TransactionDetail>
<prod:ApplicationTransactionID>***Request</prod:ApplicationTransactionID>
<prod:ServiceTransactionID/>
<prod:TransactionTimestamp>2015-05-05T05:33:52</prod:TransactionTimestamp>
</prod:TransactionDetail>
<prod:TransactionResult>
<prod:SeverityText>Error</prod:SeverityText>
<prod:ResultID>CM018</prod:ResultID>
<prod:ResultText>No candidates resulted for the given input criteria.</prod:ResultText>
<prod:ResultMessage>
<prod:ResultDescription>List of service interface is not available for the given Service name or Service Version number</prod:ResultDescription>
</prod:ResultMessage>
</prod:TransactionResult>
</prod:Response>
Please someone respond to the query.
I am trying to retrieve TFS workitems using ClientService.asmx using JavaScript and I am able to access the webservice, however when using the SOAP it gives me following error "TF51612: The query does not contain any groups or expressions.
Parameter name: queryXml"
Below is the code that I am using to access the Workitems:
<?xml version="1.0" encoding="utf-8"?>
<soap:Envelope xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:xsd="http://www.w3.org/2001/XMLSchema" xmlns:soap="http://schemas.xmlsoap.org/soap/envelope/">
<soap:Header>
<RequestHeader xmlns="http://schemas.microsoft.com/TeamFoundation/2005/06/WorkItemTracking/ClientServices/03">
<Id></Id>
</RequestHeader>
</soap:Header>
<soap:Body>
<QueryWorkitems xmlns="http://schemas.microsoft.com/TeamFoundation/2005/06/WorkItemTracking/ClientServices/03">
<psQuery>
<queryXml>
<Wiql>SELECT [System.Id], [System.WorkItemType], [System.Title], [System.AssignedTo], [System.State] FROM WorkItems WHERE [System.TeamProject] = #project AND [System.WorkItemType] <> '' AND [System.State] <> '' ORDER BY [System.Id] </Wiql>
</queryXml>
</psQuery>
</QueryWorkitems>
</soap:Body>
</soap:Envelope>
Please let me know what am I doing wrong.
Thanks
Your header SOAP must contais informations about your credential, because your query header's is empty so you are not authenticated
Add this with Soap Extension in your Web service, register in config file
After much pain I figured out how to do a proper request to this service. Here is my full request. Forgive me for the formatiing. I am apparently too dumb to figure out how to do a proper list.
Couple of notes...
*the RequestHeader Id field has to be in the format uuid:GUID
*The psQuery element is not actually in Wiql as other web sources have hinted. (Which is you are receiving the error)
*The FieldType for numeric fields is 288
<soapenv:Envelope xmlns:soapenv="http://schemas.xmlsoap.org/soap/envelope/" xmlns:ns="http://schemas.microsoft.com/TeamFoundation/2005/06/WorkItemTracking/ClientServices/03">
<soapenv:Header>
<ns:RequestHeader>
<!--Optional:-->
<ns:Id>uuid:262c6910-8394-11e3-baa7-0800200c9a67</ns:Id>
</ns:RequestHeader>
</soapenv:Header>
<soapenv:Body>
<ns:QueryWorkitems>
<!--Optional:-->
<ns:psQuery>
<Group GroupOperator="And">
<Expression Column="System.TeamProject" FieldType="16" Operator="equals"><String>ProjectName</String></Expression>
<Expression Column="System.AssignedTo" FieldType="16" Operator="equals"><String>Daniel West</String></Expression>
<Expression Column="System.WorkItemType" FieldType="16" Operator="equals"><String>Anomaly</String></Expression>
<Expression Column="System.State" FieldType="16" Operator="equals"><String>Validate</String></Expression>
</Group>
</ns:psQuery>
<ns:sort>
<!--Zero or more repetitions:-->
<ns:QuerySortOrderEntry>
<!--Optional:-->
<ns:ColumnName>System.AssignedTo</ns:ColumnName>
<ns:Ascending>1</ns:Ascending>
</ns:QuerySortOrderEntry>
</ns:sort>
<ns:useMaster>1</ns:useMaster>
</ns:QueryWorkitems>
</soapenv:Body>
</soapenv:Envelope>