Weblogic 10.2 を実行しているサーバーで 2 つのドメインを持つ SSO のテスト環境をセットアップしようとしています。SAML ソース ドメインのサンプル サーブレットでログインを正常に利用し、SAML 宛先ドメインのサーブレットへのリンクに接続することができました。これは、Browser/POST Relying Party で SAML 1.1 を使用していました。これは、ダミーの appA と appB を利用して、Oracle ドキュメントの 2 つのドメインで提供されたサンプルであったためです。(サンプルの説明への便利なリンクはありませんが、うまくいきました)
ただし、私の目標は、ブラウザー/アーティファクトのシナリオで SAML 1.1 をテストすることでした。そこで、同じセキュリティ レルムを使用して、宛先ドメイン用に新しい AP をセットアップし、ソース ドメイン用に新しい RP をセットアップしました (これらは両方とも同じマシン上で実行されていることに注意してください)。同じ SSL 情報とキーストア/トラストストア/エイリアスを使用しました (実際には、それらはすべてエイリアス「localhost」を持つ同じ自己署名証明書を使用しています)。そして、宛先アプリで403エラーで失敗します。文字列で生成されたアーティファクトを確認できます。
https://localhost:7012/samlacs/acs?APID=ap_00002&SAMLart=AAH9R8ftHOp8ZwdBGik0ijXWFCYQZuUL%2FwTHd8JU%2Fo3aOkNGzkqbtuBm&TARGET=http://localhost:7010/appB/admin/services.jsp
しかし、アサーション ルックアップ (またはアーティファクト デリファレンスの直前) にエラーがあります: (再度実行したため、アーティファクトはログと一致しません) (ソース ドメイン):
Kernel>> <> <> <1352329499359> <BEA-000000> <SAMLSourceSite: lookupStoredAssertions: fetching assertion for artifact 'AAH9R8ftHOp8ZwdBGik0ijXWFCYQZoF3demE97Ls8pVqYxvva+3Mka/9'>
####<Nov 7, 2012 5:04:59 PM CST> <Debug> <SecuritySAMLService> <blah> <AdminServer> <[ACTIVE] ExecuteThread: '1' for queue: 'weblogic.kernel.Default (self-tuning)'> <<WLS Kernel>> <> <> <1352329499359> <BEA-000000> <SAMLSourceSite: verifyDestinationSite: auth failure for partner 'rp_00002', client cert required but not provided>
####<Nov 7, 2012 5:04:59 PM CST> <Debug> <SecuritySAMLService> <blah> <AdminServer> <[ACTIVE] ExecuteThread: '1' for queue: 'weblogic.kernel.Default (self-tuning)'> <<WLS Kernel>> <> <> <1352329499359> <BEA-000000> <SAMLSourceSite: lookupStoredASsertions: auth failure: missing/invalid credentials for partner 'rp_00002'>
####<Nov 7, 2012 5:04:59 PM CST> <Debug> <SecuritySAMLService> <blah> <AdminServer> <[ACTIVE] ExecuteThread: '1' for queue: 'weblogic.kernel.Default (self-tuning)'> <<WLS Kernel>> <> <> <1352329499359> <BEA-000000> <SAMLSourceSite: dispatchAssertionRequest: destination site auth failure, returning FORBIDDEN>
####<Nov 7, 2012 5:04:59 PM CST> <Debug> <Http> <blah> <AdminServer> <[ACTIVE] ExecuteThread: '1' for queue: 'weblogic.kernel.Default (self-tuning)'> <<anonymous>> <> <> <1352329499359> <BEA-000000> <HttpRequest@20065100 - /samlars/ars: Writing headers for HttpRequest@20065100 - /samlars/ars>
####<Nov 7, 2012 5:04:59 PM CST> <Debug> <SecuritySSL> <blah> <AdminServer> <[ACTIVE] ExecuteThread: '1' for queue: 'weblogic.kernel.Default (self-tuning)'> <<WLS Kernel>> <> <> <1352329499359> <BEA-000000> <write APPLICATION_DATA, offset = 0, length = 160>
####<Nov 7, 2012 5:04:59 PM CST> <Debug> <Http> <blah> <AdminServer> <[ACTIVE] ExecuteThread: '1' for queue: 'weblogic.kernel.Default (self-tuning)'> <<anonymous>> <> <> <1352329499359> <BEA-000000> <Response committed. request: 'HttpRequest@20065100 - /samlars/ars' response: weblogic.servlet.internal.ServletResponseImpl@ea013e[
HTTP/1.1 403 Forbidden
Date: : Wed, 07 Nov 2012 23:04:59 GMT
Content-Length: : 1216
Content-Type: : text/html; charset=UTF-8
X-Powered-By: Servlet/2.5 JSP/2.1
]>
(宛先ドメイン):
####<Nov 7, 2012 5:04:59 PM CST> <Debug> <SecuritySAMLService> <blah> <AdminServer> <[ACTIVE] ExecuteThread: '2' for queue: 'weblogic.kernel.Default (self-tuning)'> <<WLS Kernel>> <> <> <1352329499359> <BEA-000000> <SAMLDestinationSiteHelper: Exception while sending/receiving request/response: org.opensaml.SAMLException: SAMLSOAPBinding.send(): Error response from server: '403 Forbidden'>
####<Nov 7, 2012 5:04:59 PM CST> <Debug> <SecuritySAMLService> <blah> <AdminServer> <[ACTIVE] ExecuteThread: '2' for queue: 'weblogic.kernel.Default (self-tuning)'> <<WLS Kernel>> <> <> <1352329499359> <BEA-000000> <SAMLDestinationSiteHelper: Unable to dereference artifact -- returning SC_FORBIDDEN>
###<Nov 7, 2012 5:04:59 PM CST> <Debug> <Http> <blah> <AdminServer> <[ACTIVE] ExecuteThread: '2' for queue: 'weblogic.kernel.Default (self-tuning)'> <<anonymous>> <> <> <1352329499359> <BEA-000000> <HttpRequest@6557952 - /samlacs/acs: Writing headers for HttpRequest@6557952 - /samlacs/acs>
####<Nov 7, 2012 5:04:59 PM CST> <Debug> <Http> <blah> <AdminServer> <[ACTIVE] ExecuteThread: '2' for queue: 'weblogic.kernel.Default (self-tuning)'> <<anonymous>> <> <> <1352329499359> <BEA-000000> <HttpRequest@6557952 - /samlacs/acs: Wrote cookie: JSESSIONID=bkLSQhphfgFQGRnZNprd2kHJ71GGyPjsF91TMsn4pKkTMgLxcxVr!-98623638; path=/; HttpOnly>
####<Nov 7, 2012 5:04:59 PM CST> <Debug> <SecuritySSL> <7PSS2Q1> <AdminServer> <[ACTIVE] ExecuteThread: '2' for queue: 'weblogic.kernel.Default (self-tuning)'> <<WLS Kernel>> <> <> <1352329499359> <BEA-000000> <write APPLICATION_DATA, offset = 0, length = 250>
####<Nov 7, 2012 5:04:59 PM CST> <Debug> <Http> <blah> <AdminServer> <[ACTIVE] ExecuteThread: '2' for queue: 'weblogic.kernel.Default (self-tuning)'> <<anonymous>> <> <> <1352329499359> <BEA-000000> <Response committed. request: 'HttpRequest@6557952 - /samlacs/acs' response: weblogic.servlet.internal.ServletResponseImpl@2c3cd3[
HTTP/1.1 403 Forbidden
Date: : Wed, 07 Nov 2012 23:04:58 GMT
Content-Length: : 1216
Content-Type: : text/html
Set-Cookie: JSESSIONID=bkLSQhphfgFQGRnZNprd2kHJ71GGyPjsF91TMsn4pKkTMgLxcxVr!-98623638; path=/; HttpOnly
X-Powered-By: Servlet/2.5 JSP/2.1
]>
証明書利用者またはアサーション パーティで、この欠落しているクライアント証明書をアタッチする場所が他にありません。何が問題なのか知っている人はいますか?