Hi I'm connecting to dynamics online using SOAP in C# to add custom entities. The login type being used is a windows live account.
I'm running into an odd error when i try and connect to the server atm, it seems to have just start with little explanation.
When i try and authenticate using windows live I get an xml responce [posted at end] containing an error saying"The credential is blocked."However when i try and connect with a fake username i know is invalid i get "The entered and stored passwords do not match."
I've checked my xml responses and my device is registering fine. Its just the authenticating bit.
Is there a chance the crm has blocked this log in somehow (it still works for logging into the crm itself, just not with this soap log in) ?
Is there a way of white listing a username?
Here is the xml i am sending to get the security tokens:
<s:Envelope xmlns:s="http://www.w3.org/2003/05/soap-envelope" xmlns:a="http://www.w3.org/2005/08/addressing" xmlns:u="http://docs.oasis-open.org/wss/2004/01/oasis-200401-wss-wssecurity-utility-1.0.xsd"><s:Header><a:Action s:mustUnderstand="1"> http://schemas.xmlsoap.org/ws/2005/02/trust/RST/Issue</a:Action><a:MessageID> urn:uuid:88dea52e-97a3-4222-82cd-3c4cde5e3e2f</a:MessageID><a:ReplyTo><a:Address> http://www.w3.org/2005/08/addressing/anonymous</a:Address></a:ReplyTo><VsDebuggerCausalityData xmlns="http://schemas.microsoft.com/vstudio/diagnostics/servicemodelsink"> uIDPozBEz+P/wJdOhoN2XNauvYcAAAAAK0Y6fOjvMEqbgs9ivCmFPaZlxcAnCJ1GiX+Rpi09nSYACQAA</VsDebuggerCausalityData><a:To s:mustUnderstand="1"> https://login.live.com/extSTS.srf</a:To><o:Security s:mustUnderstand="1" xmlns:o="http://docs.oasis-open.org/wss/2004/01/oasis-200401-wss-wssecurity-secext-1.0.xsd"><u:Timestamp u:Id="_0"><u:Created>2013-04-19T12:41:25.256Z</u:Created><u:Expires>2013-04-19T12:46:25.256Z</u:Expires></u:Timestamp><o:UsernameToken u:Id="user"><o:Username>==USERNAME REMOVED FOR POST==</o:Username><o:Password Type="http://docs.oasis-open.org/wss/2004/01/oasis-200401-wss-username-token-profile-1.0#PasswordText"> ==PASSWORD REMOVED FOR POST==</o:Password></o:UsernameToken><wsse:BinarySecurityToken ValueType="urn:liveid:device" xmlns:wsse="http://docs.oasis-open.org/wss/2004/01/oasis-200401-wss-wssecurity-secext-1.0.xsd"><EncryptedData Id="BinaryDAToken0" Type="http://www.w3.org/2001/04/xmlenc#Element" xmlns="http://www.w3.org/2001/04/xmlenc#"><EncryptionMethod Algorithm="http://www.w3.org/2001/04/xmlenc#tripledes-cbc"></EncryptionMethod><ds:KeyInfo xmlns:ds="http://www.w3.org/2000/09/xmldsig#"><ds:KeyName>http://Passport.NET/STS</ds:KeyName></ds:KeyInfo><CipherData><CipherValue> ==LONG CYPHER VALUE REMOVED FOR POST==</CipherValue></CipherData></EncryptedData></wsse:BinarySecurityToken></o:Security></s:Header><s:Body><t:RequestSecurityToken xmlns:t="http://schemas.xmlsoap.org/ws/2005/02/trust"><wsp:AppliesTo xmlns:wsp="http://schemas.xmlsoap.org/ws/2004/09/policy"><a:EndpointReference><a:Address>urn:crmemea:dynamics.com</a:Address></a:EndpointReference></wsp:AppliesTo><wsp:PolicyReference URI="MBI_FED_SSL" xmlns:wsp="http://schemas.xmlsoap.org/ws/2004/09/policy" /><t:RequestType> http://schemas.xmlsoap.org/ws/2005/02/trust/Issue</t:RequestType></t:RequestSecurityToken></s:Body></s:Envelope>
This is the response i get:
<?xml version="1.0" encoding="utf-8" ?><S:Envelope xmlns:S="http://www.w3.org/2003/05/soap-envelope" xmlns:wsse="http://docs.oasis-open.org/wss/2004/01/oasis-200401-wss-wssecurity-secext-1.0.xsd" xmlns:wsu="http://docs.oasis-open.org/wss/2004/01/oasis-200401-wss-wssecurity-utility-1.0.xsd" xmlns:wst="http://schemas.xmlsoap.org/ws/2005/02/trust" xmlns:psf="http://schemas.microsoft.com/Passport/SoapServices/SOAPFault"><S:Body><S:Fault><S:Code><S:Value> S:Sender</S:Value><S:Subcode><S:Value> wst:FailedAuthentication</S:Value></S:Subcode></S:Code><S:Reason><S:Text xml:lang="en-US"> Authentication Failure</S:Text></S:Reason><S:Detail><psf:error><psf:value> 0x80048823</psf:value><psf:internalerror><psf:code> 0x80041010</psf:code><psf:text> The credential is blocked.
</psf:text></psf:internalerror></psf:error></S:Detail></S:Fault></S:Body></S:Envelope>