2013-06-20 2 views
1

Я пытаюсь использовать клиент для проверки подлинности службы шины с использованием сертификата, и я получаю следующее сообщение об ошибке -Ошибка вызова Windows Azure ACS с сертификатом

{ «ошибка»: «invalid_client», "error_description ":" ACS50008: токен SAML недействителен. \ R \ nTrace ID: 40fd75f3-7a9c-490f-9708-8ee24c1b8d6c \ r \ nКорреляционный идентификатор: faaeba2f-4d0e-4b67-a12e-32b9a8006aad \ r \ nПримечание: 2013-06-19 11: 40: 05Z "}

, но там не так много деталей, и я не могу найти что-либо в Интернете.

запрос HTTP Я посылаю это -

POST https://[ACS.accesscontrol.windows.net/v2/OAuth2-13 HTTP/1.1 SB Namespace] 

Content-Type: application/x-www-form-urlencoded 

Host: [ACS SB Namespace].accesscontrol.windows.net 

Content-Length: 2902 

Expect: 100-continue 

Connection: Keep-Alive 

и маркер SAML в теле (декодируется для ясности) -

<Assertion ID="_71323c38-9f7d-4e34-9681-25ab3338cca4" IssueInstant="2013-06-19T11:58:46.233Z" Version="2.0" xmlns="urn:oasis:names:tc:SAML:2.0:assertion"> 
<Issuer>OAuth2SampleX509Identity</Issuer> 
<ds:Signature xmlns:ds="http://www.w3.org/2000/09/xmldsig#"> 
<ds:SignedInfo> 
<ds:CanonicalizationMethod Algorithm="http://www.w3.org/2001/10/xml-exc-c14n#" /> 
<ds:SignatureMethod Algorithm="http://www.w3.org/2001/04/xmldsig-more#rsa-sha256" /> 
<ds:Reference URI="#_71323c38-9f7d-4e34-9681-25ab3338cca4"> 
<ds:Transforms> 
<ds:Transform Algorithm="http://www.w3.org/2000/09/xmldsig#enveloped-signature" /> 
<ds:Transform Algorithm="http://www.w3.org/2001/10/xml-exc-c14n#" /> 
</ds:Transforms> 
<ds:DigestMethod Algorithm="http://www.w3.org/2001/04/xmlenc#sha256" /> 
<ds:DigestValue>TKIR+dse+tMuZxXCzFO+C7QcCj25xWQ2Uzax1YUmpdQ=</ds:DigestValue> 
</ds:Reference> 
</ds:SignedInfo> 
<ds:SignatureValue>oCP8si[removed for brevity]</ds:SignatureValue> 
<KeyInfo xmlns="http://www.w3.org/2000/09/xmldsig#"> 
<X509Data> 
<X509Certificate>[remove for brevity]</X509Certificate> 
</X509Data> 
</KeyInfo> 
</ds:Signature> 
<Subject> 
<NameID>OAuth2SampleX509Identity</NameID> 
<SubjectConfirmation Method="urn:oasis:names:tc:SAML:2.0:cm:bearer" /> 
</Subject> 
<Conditions NotBefore="0001-01-01T00:00:00.000Z" NotOnOrAfter="9999-12-31T23:59:59.999Z"> 
</AudienceRestriction> 
</Conditions> 
</Assertion> 

Я тестирую с помощью клиента от http://msdn.microsoft.com/en-us/library/hh127795.aspx и считаю, что я настроил ACS в соответствии с инструкциями (хотя я использую SB-пространство имен ACS, я не думаю, что это важно?)

ответ

1

Причина, по которой это не удалось, заключается в том, что Эмитент в утверждении SAML не совпал с именем идентификатора службы, который я пытался аутентифицировать, с

+0

Эмитент также чувствителен к регистру –

Смежные вопросы