比較バージョン

キー

  • この行は追加されました。
  • この行は削除されました。
  • 書式設定が変更されました。

1. はじめに

本メニューでは、IdPをカスタマイズします。
IdP Ver2からVer3にアップグレードを行い設定ファイルがコンバートされた環境に対して実施します。アップグレード直後の状態でも動作しますが、以降のカスタマイズで支障が出ますので適当なタイミングで下記手順を行うことをお勧めします。
Ver3形式にすると、送信属性同意機能が有効となるなど、IdP Ver3の全ての機能を使うことができるようになります。(以下に無効化の手順も示してあります)

設定ファイルをVer3形式に修正し、認証確認まで行います。 

 


...

2. 実習セミナーでは

以下の手順で作業を進めてください。

idp.propertiesの修正

/opt/shibboleth-idp/conf/idp.propertiesに、参照している証明書・秘密鍵の情報を設定します。

パネル
borderColor#cccccc
bgColor#eeeeee
borderStylesolid

idp.signing.key= %{idp.home}/credentials/server.key
idp.signing.cert= %{idp.home}/credentials/server.crt
idp.encryption.key= %{idp.home}/credentials/server.key
idp.encryption.cert= %{idp.home}/credentials/server.crt

・credentials.xmlの確認

/opt/shibboleth-idp/conf/credentials.xmlが存在することを確認してください。
存在しなければ、以下のようにcredentials.xml.distをコピーして作成します。

...

情報

このファイル(テンプレート)は上記idp.propertiesの変更部分を参照しているだけなので、ファイル内容の修正は不要です。

・relying-party.xmlの置き換え

/opt/shibboleth-idp/dist/conf/relying-party.xml.distでVer2からコンバートされたrelying-party.xmlを置き換えます。

...

パネル
borderColor#cccccc
bgColor#eeeeee
borderStylesolid

# cp /opt/shibboleth-idp/dist/conf/relying-party.xml.dist /opt/shibboleth-idp/conf/relying-party.xml
上書きします。
cp: `/opt/shibboleth-idp/conf/relying-party.xml' を上書きしてもよろしいですか(yes/no)? y[Enter]

情報

上書きしたrelying-party.xmlテンプレートに送信属性同意機能有効化が含まれています。無効にしたい場合は以下の部分を削除してください。テンプレートに送信属性同意機能有効化が含まれています。無効にしたい場合は以下の赤字部分を削除してください。

パネル

...
    <bean parent="Shibboleth.SSO" p:postAuthenticationFlows="attribute-release" />
...
    <bean parent="SAML2.SSO" p:postAuthenticationFlows="attribute-release" />
...

・metadata-providers.xmlの置き換えと修正

情報

アップグレード直後のmetadata-providers.xmlの内容はアップグレード前のrelying-party.xmlと同内容です。

...

パネル

# grep metadataURL= /opt/shibboleth-idp/conf/metadata-providers.xml
                          metadataURL="https://metadata.gakunin.nii.ac.jp/gakunin-test-metadata.xml" ←このURLを記録してください
# grep -A 2 id=.shibboleth.MetadataTrustEngine /opt/shibboleth-idp/conf/metadata-providers.xml
    <security:TrustEngine id="shibboleth.MetadataTrustEngine" xsi:type="security:StaticExplicitKeySignature">
        <security:Credential id="MyFederation1Credentials" xsi:type="security:X509Filesystem">
            <security:Certificate>/opt/shibboleth-idp/credentials/gakunin-test-signer-2011.cer</security:Certificate> ←このファイル名を記録してください

 


/opt/shibboleth-idp/dist/conf/metadata-providers.xml.distでVer2からコンバートされたmetadata-providers.xmlを置き換えます。

注意

追加でローカルSPのメタデータを読み込んでいるなど<MetadataProvider>の部分をカスタマイズしている場合は、置き換える前にバックアップをとるなどして、確認できるようにしてください。の部分をカスタマイズしている場合は、置き換え後にバックアップ(/opt/shibboleth-idp/conf.v2/relying-party.xml)を参照しながら必要なものを反映してください。

パネル
borderColor#cccccc
bgColor#eeeeee
borderStylesolid

# cp /opt/shibboleth-idp/dist/conf/metadata-providers.xml.dist /opt/shibboleth-idp/conf/metadata-providers.xml
上書きします。
cp: `/opt/shibboleth-idp/conf/metadata-providers.xml' を上書きしてもよろしいですか(yes/no)? y[Enter]

...

パネル
borderColor#cccccc
bgColor#eeeeee
borderStylesolid

The EntityRoleWhiteList saves memory by only loading metadata from SAML roles
that the IdP needs to interoperate with.
-->
 
<!--
 --> ← コメントアウト解除

<MetadataProvider id="HTTPMetadata"
                  xsi:type="FileBackedHTTPMetadataProvider"
                  backingFile="%{idp.home}/metadata/gakunin-metadata-backing.xml"
                  metadataURL="https://metadata.gakunin.nii.ac.jp/gakunin-test-metadata.xml">

    <MetadataFilter xsi:type="SignatureValidation" requireSignedRoot="true"
                    certificateFile="%{idp.home}/credentials/gakunin-test-signer-2011.cer">

<!-- ← 公開鍵をファイルで指定するのでコメントアウト
       <PublicKey>
            THIS IS AN EXAMPLE            MIIBIjANBgkqhkiG9w0BAQEFAAOCAQ8AMIIBCgKCAQEAxg0TyQAP/tIvOH89EtaX
            uRRn8SYzTj7W1TbNY4VvBmobjkRmSkki4hH9x4sQpi635wn6WtXTN/FNNmkTK3N/
            LspmBWxfZS+n+cc7I82E5yvCAPX67QsZgqgglp2W5dvK/FsMMCS6X6SVqzBLMP88
            NenXKxY+HMxMs0sT0UKYh1cAEqadrHRBO65aDBcm5a0sBVYt9K6pgaOHrp/zSIbh
            nR5tFFLjBbtFktDpHL3AdGBH3OYidNGKBO3tJ3Ms7LeKXsM0+0Y4P+9fHZINL2X3
            E2N6GVnKs5PZTg9sP0FtIpAbYm/+zCx7Yj1ET/Er8mDd6tNVGSQsn9s5xUBwGqn1
            4wIDAQAB
        </        <PublicKey>
            MIIBI.....
        </PublicKey>
--> ← 公開鍵をファイルで指定するのでコメントアウト

      <   </MetadataFilter>
      <MetadataFilter xsi:type="metadata:RequiredValidUntil" maxValidityInterval="P15D"/>
                                 ↑この部分を削除します
        <MetadataFilter xsi:type="EntityRoleWhiteList">
            <RetainedRole>md:SPSSODescriptor</RetainedRole>
        </MetadataFilter>
</MetadataProvider>
<!-- --> ← コメントアウト解除

・services.propertiesの修正

Ver3の形式で読み込むように/opt/shibboleth-idp/conf/services.properties修正します。

パネル
borderColor#cccccc
bgColor#eeeeee
borderStylesolid

#idp.service.relyingparty.resources= shibboleth.LegacyRelyingPartyResolverResources
idp.service.relyingparty.resources= shibboleth.RelyingPartyResolverResources Legacyを削除した値を設定します。

・Tomcatの再起動

Tomcatを再起動して、Ver3形式に変換した設定ファイルを読み込ませます。

パネル
borderColor#cccccc
bgColor#eeeeee
borderStylesolid

# service tomcat7 restart

...


...

3. 手順書

以下は、英語での情報が記載されたwiki.shibboleth.netのURLです。手順の詳細にご興味がある方はご参照ください。

参考: Installation 


...

4. 動作確認

作業前と同様に動作することを確認します。

① 各自が使用するSPの接続確認用ページにアクセスします。

...