I have WCF webservice that works correctly if I get it from WPF Client Calling App , which is not in the same machine nor in the same domain. The client application has app.config :
& lt; Binding & gt; & Lt; BasicHttpBinding & gt; & Lt; Binding name = "Besikacteepibainding_aimai service" off Krentaimaut = "00:05:00" Opantaimaut = "00:05:00" Prapttaimaut = "00:10:00" Bejentaimaut = "00:05:00" Allow cookies "" wrong "Baypasproksionokl =" false "maxBufferPoolSize =" 1524288000 "has received Adiktmtr MESSAGESize =" 1524288000 "using default WebProxy =" true "& gt; & Lt; readerQuotas maxDepth =" 2000 "maxStringContentLength =" 819200 "Maksarere lang =" 163840 Maxbitespear Read = "4096" max-name labeling = "16384" />
Safety Mode = "TransportWithMessageCredentia L "/> & lt; / basicHttpBinding & gt; & lt; / bindings & gt; & lt; customer & gt; & lt; endpoint address =" https: // my service.com/MyService.svc "binding =" basic HttpBinding "binding configuration =" BasicHttpBinding_IMyService "contract =" LicenseServicekIMyService "name =" BasicHttpBinding_IMyService "/ & gt; & Lt; / client & gt;
after being invited to the WCO I serve sniffs the Fiddler with soft Lipfafe, I modify the timestamp, I have pastes copy the contents in the client / For example, Chrome Postman, I send a request to WCF and I get an error below SOAP request envelope and given error, which is very common and I can not find a good solution anywhere, my best estimate is that There is something to do with the way to manage WPF security tokens, but I'm not getting it wrong. Can a token be used only once? Can anyone help?
Error message:
The message can not be processed on the receiver with the operation, so the contract filter mismatch on Android Dispatch. It may be that there is no compulsory / security match between contract mismatch (mismatched action between sender and receiver) or sender and receiver. Check that the sender and the receiver have the same contract and the same binding (security requirements, such as messages, transport, none).
SOAP envelope:
& lt; s: Envelope xmlns: s = "http://schemas.xmlsoap.org/soap/envelope/" xmlns: u = "http: //docs.oasis-open .org / WSS / 2004/01 / oasis 200,401-WSS -wssecurity-utility-1.0.xsd "& gt; & Lt; Key: Header & gt; & Lt; O: should be: the security integrated = "1" xmlns: o = "http://docs.oasis-open.org/wss/2004/01/oasis-200401-wss-wssecurity-secext-1.0.xsd" & Gt; & Lt; U: Timestamp u: id = "_ 0" & gt; & Lt; U: Created & gt; 2014-10-24T09: 39: 11.198Z & lt; / U: Created & gt; & Lt; U: Expired & gt; 2014-10-24T09: 44: 11.198Z & lt; / U: Expired & gt; And lt; / U: Timestamp & gt; & Lt; O: UsernameTlock: id = "token" & gt; & Lt; O: User Name & gt; MyUsername & lt; / O: Username & gt; & Lt; O: Password Type = "http://docs.oasis-open.org/wss/2004/01/oasis-200401-wss-username-token-profile-1.0#PasswordText" & gt; Password & lt; / O: Password & gt; & Lt; / O: UsernameToken & gt; & Lt; / O: Security & gt; & Lt; / S: Header & gt; & Lt; S: body & gt; & Lt; GetProduct xmlns = "http://tempuri.org/" & gt; & Lt; ProductGuid & gt; ProductGuid & lt; / ProductGuid & gt; & Lt; / GetProduct & gt; & Lt; / S: Body & gt; & Lt; / S: envelope & gt;
WCF service has used CustomValidation with WS-Security Client WS-Secure , So he could not take action on the top of the SOAP message. The Morvor WS Token in the client was not refreshed and it was already consumed by the WCF service
Comments
Post a Comment