[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

[upki-fed:280] Re: [upki-fed:279] Re: SSLアクセラレータ環境



お世話になっております。
寺口です。

SSLアクセラレータ環境での設定について報告いたします。

1.動作確認環境
   OS:Red Hat Enterprise Linux Server release 5.2 (Tikanga)
   Webサーバ:Apache/2.2.3
   shibbolethSP:shibboleth-2.3.1-1.3
   shibbolethIdP:shibboleth-identityprovider-2.2.0
   ドメイン:test.researchmap.jp


2.ログイン画面の表示
2-1.apacheの設定変更
   ServerName test.researchmap.jp
       ↓
   ServerName https://test.researchmap.jp

   https://spaces.internet2.edu/display/SHIB/SPNoSSL
   では、ポート番号の指定とUseCanonicalNameをOnに設定していますが、
   無くても動作いたしました。

2-2.apache−tomcat連携の設定変更
   <Connector port="8009" protocol="AJP/1.3"  redirectPort="8443"
              enableLookups="false"
              request.tomcatAuthentication="false"
              address="127.0.0.1" />
       ↓
   <Connector port="8009" protocol="AJP/1.3" redirectPort="8443"
              enableLookups="false"
              proxyPort="443" scheme="https"
              request.tomcatAuthentication="false"
              address="127.0.0.1" />

   参考:
   http://groups.google.com/group/shibboleth-users/browse_thread/thread/3247848f1087777c/a2bc1ce79fb1f428?lnk=gst&q=SAML+message+intended+destination+endpoint#a2bc1ce79fb1f428


3.認証処理
3-1.背景、現象
   SSLアクセラレータを通したWEBサーバへのリクエストは全てhttpになるため、
   SP(shibboleth2.xml)、及び、IdP(relying-party.xml)に設定されている
   秘密鍵と証明書は必要ないと判断し設定を行っていなかったが、
   設定を行わないと、ログイン時にエラーが発生する。

3-1.SPの設定
   shibboleth2.xml
   <CredentialResolver type="File" key="sp-key.pem"
certificate="sp-cert.pem" />
       ↓
   <CredentialResolver type="File"
                       key="/opt/shibboleth-idp/credentials/idp.key"
                       certificate="/opt/shibboleth-idp/credentials/idp.crt" />

3-2.IdPの設定
   relying-party.xml
   <security:Credential id="IdPCredential" xsi:type="security:X509Filesystem">
       <security:PrivateKey>/opt/shibboleth-idp/credentials/idp.key</security:PrivateKey>
       <security:Certificate>/opt/shibboleth-idp/credentials/idp.crt</security:Certificate>
   </security:Credential>

   デフォルトのままで変更なし。

3-3.鍵設定
   /opt/shibboleth-idp/credentials/idp.keyにtest.researchmap.jpの秘密鍵を設定
   /opt/shibboleth-idp/credentials/idp.crtにtest.researchmap.jpの証明書を設定


以上の設定で、tomcat再起動、apache再読込みを行ったところ動作いたしました。


2-1の設定については、ServerNameを変更しているため、
WEBアプリケーション側に影響が出る可能性があるかと思いますので、
今後、調査したいと思います。

また、2、3の設定がどのように影響して動作するようになったのか、
いまいち理解しておりません。。。。

とくに、3の設定で、SPの鍵、IdPの鍵、メタデータ内の証明書が、
いつ、何のために使われているのか気になります。
想定では、
・SPの秘密鍵はSAMLの情報を暗号化する際に使用している。
・SPの証明書はSP本人確認のためのデジタル署名に使用している。
・IdPの秘密鍵はSAMLの情報を暗号化する際に使用している。
・IdPの証明書はIdP本人確認のためのデジタル署名に使用している。
・メタデータ内の証明書はSAMLの情報を複合する際に使用している。
の様な感じかと思っております。

その辺りの情報等、詳しい方がいらっしゃいましたらご教授いただければ幸いです。