一部の SAML1 SSO コードを SAML2 にアップグレードしています。大きな違いはありません。コードは、実際のサーバーと同じ構成 (jrun/複数の展開、CF7) のローカル サーバーで動作しています。
私のコードはローカルでは問題なく動作しますが、サーバー上では次のようにスローされます。要素「samlp:Response」のプレフィックス「samlp」がバインドされていません。私は問題のあるページをその行だけにまで取り除きました。それがレンガの壁のようです。名前空間を削除しようとしましたが、SAML を知っている場合、仕様は名前空間で RIDDLED になっています。
<cfscript>
xmlResponse = trim(form.SAMLResponse);
docElement= XmlParse(variables.xmlResponse);
</cfscript>
は、XML を重要な部分まで取り除きました。これでもエラーが発生します-
<samlp:Response ID="_74747ca7-7188-45c0-85a0-30177d868923"
Version="2.0"
IssueInstant="2013-03-21T11:26:59.320Z"
Consent="urn:oasis:names:tc:SAML:2.0:consent:unspecified"
xmlns:samlp="urn:oasis:names:tc:SAML:2.0:protocol"
>
<Issuer xmlns="urn:oasis:names:tc:SAML:2.0:assertion">http://test.com/trust</Issuer>
<samlp:Status>
<samlp:StatusCode Value="urn:oasis:names:tc:SAML:2.0:status:Success" />
</samlp:Status>
</samlp:Response>
私は完全に途方に暮れています。アイデアはありますか?