IdPの設定方法
学認に参加しているIdPでeduGAINメタデータを読み込む手順です。技術ガイド metadata-providers.xml ファイルの変更 の手順に従って、学認の運用フェデレーションメタデータを読み込んでいる前提で説明します。
eduGAINメタデータを検証するための証明書(https://www.edugain.org/mds-2014.cer)をダウンロードして、任意のディレクトリに置き、そのパスを設定します。(以下では「/opt/shibboleth-idp/credentials/」に置いたものとして説明しています)
ダウンロードした検証用証明書のフィンガープリントが下記と一致するか確認してください。
SHA-256
パネル |
---|
SHA-256: 12:8F:40:34:6A:D0:BE:D0:D2:92:8E:07:11:89:90:A7:46:04:30:22:D0:3D:55:22:2E:62:60:7C:C3:D5:40:C0 |
SHA-1
パネル |
---|
SHA-1: 8B:81:7A:0C:F3:F8:35:2F:85:91:9F:11:37:14:3F:98:91:8C:F8:34 |
eduGAINメタデータを自動的にダウンロードする設定を行います。/opt/shibboleth-idp/conf/metadata-providers.xml ファイルで、学認の運用フェデレーションメタデータを読み込む設定の直下に下記の設定を追加してください。
パネル |
---|
borderColor | #cccccc |
---|
bgColor | #eeeeee |
---|
borderStyle | solid |
---|
|
<MetadataProvider id="HTTPMetadata-eduGAIN"
xsi:type="FileBackedHTTPMetadataProvider"
backingFile="%{idp.home}/metadata/edugain-feed-sha256-back ing.xml"
↑ eduGAINメタデータは上記のファイル名で保存されます。必要に応じて調整してください。 metadataURL="http://mds.edugain.org/feed-sha256.xml"
>
<MetadataFilter xsi:type="SignatureValidation" requireSignedRoot="true"
certificateFile="%{idp.home}/credentials/mds-2014.cer"/>
<MetadataFilter xsi:type="RequiredValidUntil" maxValidityInterval="P9D" />
↑ 9日間を設定します。
<!-- MetadataFilter xsi:type="SchemaValidation"/ -->
<MetadataFilter xsi:type="EntityRoleWhiteList">
<RetainedRole>md:SPSSODescriptor</RetainedRole>
</MetadataFilter>
</MetadataProvider>
|
注意 |
---|
上記設定でSignatureValidation をコメントアウトしていますが、これは意図的なものです。有効にすると以下を含むエラーが記録され起動しません。(2017年1月6日時点) 書式設定済み |
---|
Caused by: net.shibboleth.utilities.java.support.resolver.ResolverException: Error filtering metadata from http://mds.edugain.org/feed-sha256.xml
at org.opensaml.saml.metadata.resolver.impl.AbstractReloadingMetadataResolver.processNonExpiredMetadata(AbstractReloadingMetadataResolver.java:430)
Caused by: org.opensaml.saml.metadata.resolver.filter.FilterException: Incoming metadata was not schema valid
at org.opensaml.saml.metadata.resolver.filter.impl.SchemaValidationFilter.filter(SchemaValidationFilter.java:121)
Caused by: org.xml.sax.SAXParseException: cvc-elt.4.2: Cannot resolve 'fed:ApplicationServiceType' to a type definition for element 'md:RoleDescriptor'.
at com.sun.org.apache.xerces.internal.util.ErrorHandlerWrapper.createSAXParseException(ErrorHandlerWrapper.java:198) |
|
SPの設定方法
学認に参加しているSPでeduGAINメタデータを読み込む手順です。技術ガイド shibboleth2.xml ファイル の手順に従って、学認の運用フェデレーションメタデータを読み込んでいる前提で説明します。
eduGAINメタデータを検証するための証明書(https://www.edugain.org/mds-2014.cer)をダウンロードして、任意のディレクトリに置き、そのパスを設定します。(以下では「 /etc/shibboleth/cert/」に置いたものとして説明しています)
ダウンロードした検証用証明書のフィンガープリントが下記と一致するか確認してください。
SHA-256
パネル |
---|
SHA-256: 12:8F:40:34:6A:D0:BE:D0:D2:92:8E:07:11:89:90:A7:46:04:30:22:D0:3D:55:22:2E:62:60:7C:C3:D5:40:C0 |
SHA-1
パネル |
---|
SHA-1: 8B:81:7A:0C:F3:F8:35:2F:85:91:9F:11:37:14:3F:98:91:8C:F8:34 |
eduGAINメタデータを自動的にダウンロードし、検証するための設定を行います。/etc/shibboleth/shibboleth2.xml ファイルで、学認の運用フェデレーションメタデータを読み込む設定の直下に下記の設定を追加してください。
パネル |
---|
borderColor | #cccccc |
---|
bgColor | #eeeeee |
---|
borderStyle | solid |
---|
|
<!-- for eduGAIN --> <MetadataProvider type="XML" uri="http://mds.edugain.org/feed-sha256.xml"
backingFilePath="edugain-feed-sha256.xml" reloadInterval="7200"> ↑ eduGAINメタデータは上記のファイル名で 保存されます。必要に応じて調整してください。
<MetadataFilter type="RequireValidUntil" maxValidityInterval="777600"/> ↑ 9日間(777600 秒)を設定します。 <MetadataFilter type="Signature" certificate="/etc/shibboleth/cert/mds-2014.cer"/> <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" />
</MetadataProvider>
|
ヒント |
---|
バッキングファイルが他者によって変更されないことが確実な場合はSignature MetadataFilterの末尾に verifyBackup="false" を追加してください。起動時のメタデータ読み込み時にバッキングファイルの署名検証がスキップされ起動が速くなります。 パネル |
---|
<MetadataFilter type="Signature" certificate="/etc/shibboleth/cert/mds-2014.cer" verifyBackup="false" />
|
|
情報 |
---|
他のMetadataProviderと比較して、validate="true" が削除されていることにご注意ください。 |
参考情報