テストアカウントで接続確認する
1.httpdとTomcatの再起動(★)
接続確認前にhttpdとTomcatを再起動します。(★)
# service tomcat7 stop # service httpd restart # service tomcat7 start
IdPのサービス動作状況を確認するには
IdPのサービス動作状況を確認するには、以下のようにIdPに直接アクセスします。
「access-control.xml ファイルの変更」で設定した場合は、許可したIPアドレスからアクセスが行えます。
※ホスト名を構築した環境に置き換えてアクセスしてください。
実習セミナー
・各自が構築したIdPサーバへアクセスします。
以下のアドレスを各自のホスト名に変更してアクセスしてください。
(??部分を割り振られた番号に置き換えます。1の場合は「01」です。)
https://ex-idp-test??.gakunin.nii.ac.jp/idp/status
https://example-idp.nii.ac.jp/idp/status
各サービスの動作状況が確認できます。successfulという出力が含まれていれば、IdPの機能が正常に動作していることの確認が出来ました。
※URLのホスト名と証明書に記載されているホスト名が一致しない旨の警告が出ますが、無視して構いません。
ブラウザではなくTeraTermなどでの確認時: 何も出力されない場合は -nv オプションを外して再度実行し、エラーが表示されないか確認してください。
2.テストSPにアクセス(★)
テストSPにアクセスしログインを行ってください。学認のテストSPは技術ガイドに記載しています。画面中央の「接続テスト」 リンクをクリックしてください。
実習セミナー
・実習セミナー内のSPサーバにアクセスして、確認します。
https://ex-sp.gakunin.nii.ac.jp/
3.DSのIdP選択画面が表示(★)
DSのIdP選択画面から構築したIdPを選択します。(★)
※学認DSについての注意点:
一度選択したIdPが表示されている状態で、別のIdPを選択したい場合は、
「リセット」リンクをクリックすると選択可能な全てのIdPが表示されます。
4.ログイン(★)
設定したIDとPasswordを利用してログイン(★)
実習セミナー
・接続確認用ユーザ情報は、以下のようになっています。
ID:test001、パスワード:test001
ID:test002、パスワード:test002
ID:test003、パスワード:test003
何れかを使用して、ログインしてください。
ID, パスワードを入力してログインした後、IdPv3の標準機能となった送信属性同期画面が表示されます。
Acceptをクリックして表示される環境変数に、IdPで公開するように設定した値(LDAPに保存されている eduPersonPrincipalNameなど)が含まれていることを確認します。
これが、SPへ送信したユーザの属性情報となります。
表示例)
phpinfoの場合
PHP Variables
variable | value |
_SERVER["unscoped-affiliation"] | faculty |
5.メタデータ署名検証が正常に機能していることの確認
実習セミナー
・実習セミナーでは改変されたメタデータが用意されていないのでこの項目は飛ばしてください。
metadata-providers.xmlに設定した取得するメタデータを改竄されたものに変更して、適切に署名検証が失敗することを確認してください。
metadata-providers.xmlの以下の部分を修正し、Tomcatを再起動してください。(元がgakunin-test-metadata.xmlの場合はgakunin-test-metadata-tampered.xmlに修正してください)
<MetadataProvider id="HTTPMetadata"
xsi:type="FileBackedHTTPMetadataProvider"
backingFile="%{idp.home}/metadata/localCopyFromXYZHTTP.xml"
metadataURL="https://metadata.gakunin.nii.ac.jp/gakunin-metadata-tampered.xml">
メタデータの署名検証に失敗した場合には、IdPのログファイル(/opt/shibboleth-idp/logs/idp-process.log)に以下の様なメッセージが出力されます。
11:44:03.060 - ERROR [org.opensaml.saml2.metadata.provider.SignatureValidationFilter:311] - Signature trust establishment failed for metadata entry URLMD 11:44:03.067 - ERROR [org.opensaml.saml2.metadata.provider.AbstractReloadingMetadataProvider:393] - Error filtering metadata from https://metadata.gakunin.nii.ac.jp/gakunin-metadata-tampered.xml org.opensaml.saml2.metadata.provider.FilterException: Signature trust establishment failed for metadata entry at org.opensaml.saml2.metadata.provider.SignatureValidationFilter.verifySignature(SignatureValidationFilter.java:312) ~[opensaml-2.5.3.jar:na] (...略...) 11:44:03.071 - ERROR [org.opensaml.saml2.metadata.provider.AbstractMetadataProvider:411] - Metadata provider failed to properly initializing, halting org.opensaml.saml2.metadata.provider.MetadataProviderException: org.opensaml.saml2.metadata.provider.MetadataProviderException: Error filtering metadata from https://metadata.gakunin.nii.ac.jp/gakunin-metadata-tampered.xml at org.opensaml.saml2.metadata.provider.AbstractReloadingMetadataProvider.refresh(AbstractReloadingMetadataProvider.java:266) ~[opensaml-2.5.3.jar:na] (...略...) 11:44:03.073 - ERROR [edu.internet2.middleware.shibboleth.common.config.BaseService:188] - Configuration was not loaded for shibboleth.RelyingPartyConfigurationManager service, error creating components. The root cause of this error was: org.opensaml.saml2.metadata.provider.FilterException: Signature trust establishment failed for metadata entry
検証に失敗した場合、起動に失敗しますのでIdPで認証しようとすると代わりにエラー画面(HTTP Status 404)が表示されます。また、この時点でバッキングファイルは改竄されたもので上書きされていますので、バッキングファイルを使って復旧することもできません。
バッキングファイルは /opt/shibboleth-idp/metadata/localCopyFromXYZHTTP.xml にあります。
確認後は、設定を元に戻すのを忘れないでください。