shibboleth2.xml ファイル(★)
1. entityIDを設定します。(★)
/etc/shibboleth/shibboleth2.xml ファイルを以下のように編集してください。
ホスト名には、各自が割り振られたホスト名を設定します。 例)1番を割り振られた場合のホスト名 ex-sp-test01.gakunin.nii.ac.jp |
※「ApplicationDefaults entityID」を検索し、場所を特定してください。
<ApplicationDefaults entityID="https://example-sp.nii.ac.jp/shibboleth-sp"
↑ホスト名変更 ↑後ろに「-sp」追記
REMOTE_USER="eppn persistent-id targeted-id"> |
※端末のサイズによっては表記がずれる可能性がございます。画面を広くしてご覧ください。 |
※「<Host name="sp.example.org">」を検索し、場所を特定してください。(行番号は参考です)
68 <Host name="example-sp.nii.ac.jp">
↑ホスト名変更
69 <Path name="secure" authType="shibboleth" requireSession="true"/>
70 </Host>
(省略)
83 <ApplicationDefaults id="default" policyId="default"
84 entityID="https://example-sp.nii.ac.jp/shibboleth-sp"
↑ホスト名変更 ↑後ろに「-sp」追記
85 REMOTE_USER="eppn persistent-id targeted-id"
86 signing="false" encryption="false"> |
※端末のサイズによっては表記がずれる可能性がございます。画面を広くしてご覧ください。 |
2. DSサーバの参照設定を行います。(★)
/etc/shibboleth/shibboleth2.xml ファイルを以下のように編集してください。
※DSサーバのURLはフェデレーション毎に異なります。
運用フェデレーション: https://ds.gakunin.nii.ac.jp/WAYF
テストフェデレーション: https://test-ds.gakunin.nii.ac.jp/WAYF
DSサーバの参照先アドレスは、以下を設定してください。 https://ex-ds.gakunin.nii.ac.jp/WAYF |
※「</Sessions>」の直前に行を挿入してください。
<!-- JSON feed of discovery information. -->
<Handler type="DiscoveryFeed" Location="/DiscoFeed"/>
<SessionInitiator type="Chaining" Location="/DS" isDefault="true" id="DS">
<SessionInitiator type="SAML2" template="bindingTemplate.html"/>
<SessionInitiator type="Shib1"/>
<SessionInitiator type="SAMLDS" URL="https://test-ds.gakunin.nii.ac.jp/WAYF"/>
↑DSサーバの設定
</SessionInitiator>
</Sessions>
(省略)
|
※端末のサイズによっては表記がずれる可能性がございます。画面を広くしてご覧ください。 |
※「Default example directs」を検索し、場所を特定してください。(行番号は参考です)
108 <!-- Default example directs to a specific IdP's SSO service (favoring SAML 2 over Shib 1). -->
109 <SessionInitiator type="Chaining" Location="/Login" isDefault="false" id="Intranet"
↑変更(false:直接IdPサーバを参照しない)
110 relayState="cookie" entityID="https://idp.example.org/idp/shibboleth">
111 <SessionInitiator type="SAML2" defaultACSIndex="1" template="bindingTemplate.html"/>
112 <SessionInitiator type="Shib1" defaultACSIndex="5"/>
113 </SessionInitiator>
(省略)
122 <!-- An example supporting the new-style of discovery service. -->
123 <SessionInitiator type="Chaining" Location="/DS" isDefault="true" id="DS" relayState="cookie">
↑追加(true:DSサーバを参照する)
124 <SessionInitiator type="SAML2" defaultACSIndex="1" template="bindingTemplate.html"/>
125 <SessionInitiator type="Shib1" defaultACSIndex="5"/>
126 <SessionInitiator type="SAMLDS" URL="https://example-ds.nii.ac.jp/ds/WAYF"/>
↑DSサーバの設定
127 </SessionInitiator> |
※端末のサイズによっては表記がずれる可能性がございます。画面を広くしてご覧ください。 |
3. メタデータの自動更新設定を行います。(★)
・SPのトラストアンカーの確認と必要なCA証明書の導入
SPのトラストアンカーの確認と必要なCA証明書の導入 のページを参照して必要なCA証明書が導入されていることをご確認ください。
・証明書を格納するディレクトリを作成します。(★)
# mkdir /etc/shibboleth/cert |
・検証に用いる検証用証明書(gakunin-signer-2010.cer)をダウンロードして、/etc/shibboleth/cert/ に置きます。
(上記は運用フェデレーションの場合の証明書で、テストフェデレーションの場合はgakunin-test-signer-2011.cerをダウンロードして使用してください。)
証明書は、初期設定で「/root/GETFILE」に取得したex-fed.crtを使用します。 「/etc/shibboleth/cert」配下にコピーしてください。 # cp /root/GETFILE/ex-fed.crt /etc/shibboleth/cert/ |
・メタデータを自動的にダウンロードする設定を行います。(★)
/etc/shibboleth/shibboleth2.xml ファイルを以下のように編集してください。
・実習セミナーではフェデレーションメタデータはDSサーバにて公開していますので、 このサーバよりメタデータを自動ダウンロードします。 参照先のuri には、以下を設定してください。(実習セミナー内の公開メタデータ) https://ex-ds.gakunin.nii.ac.jp/fed/ex-fed-metadata.xml ・自動ダウンロードするメタデータの署名検証用の証明書を設定します。 先ほどコピーした、実習セミナー用の証明書「ex-fed.crt」を参照するように設定します。 /etc/shibboleth/cert/ex-fed.crt |
<!-- Example of remotely supplied batch of signed metadata. -->
<!-- --> ←コメントアウト解除
<MetadataProvider type="XML" uri="https://metadata.gakunin.nii.ac.jp/gakunin-metadata.xml"
↑参照先のURLを設定
backingFilePath="federation-metadata.xml" reloadInterval="7200">
<MetadataFilter type="RequireValidUntil" maxValidityInterval="1296000"/>
↑validUntilの検証設定
<MetadataFilter type="Signature" certificate="/etc/shibboleth/cert/gakunin-signer-2010.cer"/>
↑自動更新メタデータの検証用証明書設定
</MetadataProvider>
<!-- --> ←コメントアウト解除 |
※端末のサイズによっては表記がずれる可能性がございます。画面を広くしてご覧ください。
(上記は運用フェデレーションでの設定で、テストフェデレーションの場合はメタデータダウンロードURLも異なります。詳しくはテストフェデレーションルールをご参照ください。
⇒テストフェデレーションルール)
(maxValidityIntervalおよびメタデータのvalidUntilについては以下をご参照ください。
⇒メタデータのvalidUntilを検証する設定方法)
※ 上記設定によってダウンロードされたメタデータは /var/cache/shibboleth/federation-metadata.xml に配置されます。
参考資料