shibboleth2.xml ファイル
1. entityIDを設定します。
/etc/shibboleth/shibboleth2.xml ファイルを以下のように編集してください。
※「ApplicationDefaults entityID」を検索し、場所を特定してください。 <ApplicationDefaults entityID="https://sp.example.ac.jp/shibboleth-sp"
↑ホスト名変更 ↑後ろに「-sp」追記
REMOTE_USER="eppn subject-id pairwise-id persistent-id"
cipherSuites="DEFAULT:!EXP:!LOW:!aNULL:!eNULL:!DES:!IDEA:!SEED:!RC4:!3DES:!kRSA:!SSLv2:!SSLv3:!TLSv1:!TLSv1.1">
※端末のサイズによっては表記がずれる可能性がございます。画面を広くしてご覧ください。
2. DSサーバの参照設定を行います。
/etc/shibboleth/shibboleth2.xml ファイルを以下のように編集してください。
※DSサーバのURLはフェデレーション毎に異なります。
運用フェデレーションの場合 | https://ds.gakunin.nii.ac.jp/WAYF |
---|---|
テストフェデレーションの場合 | https://test-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> (省略)
※端末のサイズによっては表記がずれる可能性がございます。画面を広くしてご覧ください。
3. メタデータの自動更新設定を行います。
・SPのトラストアンカーの確認と必要なCA証明書の導入
SPのトラストアンカーの確認と必要なCA証明書の導入 のページを参照して必要なCA証明書が導入されていることをご確認ください。
・証明書を格納するディレクトリを作成します。
# mkdir /etc/shibboleth/cert
・検証に用いる検証用証明書をダウンロードして、/etc/shibboleth/cert/ に置きます。
検証用証明書は以下からダウンロードして使用してください。
・メタデータを自動的にダウンロードする設定を行います。
/etc/shibboleth/shibboleth2.xml ファイルを以下のように編集してください。
<!-- Example of remotely supplied batch of signed metadata. -->
<!-- --> ←コメントアウト解除
<MetadataProvider type="XML" validate="true"
url="https://metadata.gakunin.nii.ac.jp/gakunin-metadata.xml" ↑参照先のURLを設定
backingFilePath="federation-metadata.xml" maxRefreshDelay="7200">
<MetadataFilter type="RequireValidUntil" maxValidityInterval="1296000"/>
↑validUntilの検証設定
<MetadataFilter type="Signature" certificate="/etc/shibboleth/cert/gakunin-signer-2017.cer" verifyBackup="false"/>
↑自動更新メタデータの検証用証明書設定
<DiscoveryFilter type="Blacklist" matcher="EntityAttributes" trimTags="true" attributeName="http://macedir.org/entity-category"
attributeNameFormat="urn:oasis:names:tc:SAML:2.0:attrname-format:uri"
attributeValue="http://refeds.org/category/hide-from-discovery" />
<TransportOption provider="CURL" option="64">1</TransportOption>
<TransportOption provider="CURL" option="81">2</TransportOption>
<TransportOption provider="CURL" option="10065">/etc/pki/tls/certs/ca-bundle.crt</TransportOption>
↑ HTTPSサイトの証明書検証を有効化(メタデータのダウンロード時に利用)
</MetadataProvider>
<!-- --> ←コメントアウト解除
※端末のサイズによっては表記がずれる可能性がございます。画面を広くしてご覧ください。
※ 上記設定によってダウンロードされたメタデータは /var/cache/shibboleth/federation-metadata.xml に配置されます。これはバッキングファイルと呼ばれます。
バッキングファイルが他者によって変更されないことが確実でない場合、MetadataFilter type="Signature"の行の「verifyBackup="false"
」の部分を削除してください。
verifyBackup="false"
は、起動時のメタデータ読み込み時にバッキングファイルの署名検証をスキップし起動を速くするためのものです。
※ 上記は運用フェデレーションでの設定で、テストフェデレーションの場合はメタデータダウンロードURLも異なります。詳しくはテストフェデレーションルールをご参照ください。
⇒テストフェデレーションルール
メタデータの読み込みについての注意点
※ maxValidityIntervalおよびメタデータのvalidUntilについては以下をご参照ください。
⇒メタデータのvalidUntilを検証する設定方法