クライアントを使用して、証明書を使用して Service Bus に対して認証しようとしていますが、次のエラーが発生します -
{"error":"invalid_client","error_description":"ACS50008: SAML トークンが無効です。\r\nトレース ID: 40fd75f3-7a9c-490f-9708-8ee24c1b8d6c\r\n相関 ID: 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 名前空間を使用していますが、関係ないと思いませんか?)