このページの古いバージョンを表示しています。現在のバージョンを表示します。

現在のバージョンとの相違点 ページ履歴を表示

« 前のバージョン バージョン 11 次のバージョン »

1. はじめに

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

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

 


2. 実習セミナーでは

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

idp.propertiesの修正

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

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をコピーして作成します。

lsコマンドを使ってファイルが存在するかを確認します。(以下、見つからない場合)
# ls /opt/shibboleth-idp/conf/credentials.xml
ls: cannot access /opt/shibboleth-idp/conf/credentials.xml: そのようなファイルやディレクトリはありません

見つからない場合は、以下のようにコピーします。
# cp /opt/shibboleth-idp/dist/conf/credentials.xml.dist /opt/shibboleth-idp/conf/credentials.xml

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

・relying-party.xmlの置き換え

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

特定のSPに対してSAML1アサーションに属性情報を含める、のようにrelying-party.xmlをカスタマイズしている場合は、その部分が失われますので置き換え後のrelying-party.xmlに対して修正・追加を行ってください。


# 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の置き換えと修正

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

Ver2で設定していた値に修正するので、置き換える前にバックアップをとるなどして、確認できるようにしてください。

# 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]

また、以下のように修正します。

The EntityRoleWhiteList saves memory by only loading metadata from entity types
that you will interoperate with.
--> ← コメントアウト解除

    <MetadataProvider id="HTTPMetadata"
                     xsi:type="FileBackedHTTPMetadataProvider"

                     backingFile="%{idp.home}/metadata/localCopyFromXYZHTTP.xml"
                     metadataURL="https://metadata.gakunin.nii.ac.jp/gakunin-test-metadata.xml">
        <MetadataFilter xsi:type="SignatureValidation"

           requireSignedMetadata="true">
           <security:TrustEngine id="MyTrustEngine" xsi:type="security:StaticExplicitKeySignature">
               <security:Credential id="IdPCredential" xsi:type="security:X509Filesystem">
                   <security:Certificate>%{idp.home}/credentials/gakunin-test-signer-2011.cer</security:Certificate>
               </security:Credential>

           </security:TrustEngine>

<!-- ← 公開鍵をファイルで指定するのでコメントアウト
           <PublicKey>
               THIS IS AN EXAMPLE

                MIIBIjANBgkqhkiG9w0BAQEFAAOCAQ8AMIIBCgKCAQEAxg0TyQAP/tIvOH89EtaX
               uRRn8SYzTj7W1TbNY4VvBmobjkRmSkki4hH9x4sQpi635wn6WtXTN/FNNmkTK3N/
                LspmBWxfZS+n+cc7I82E5yvCAPX67QsZgqgglp2W5dvK/FsMMCS6X6SVqzBLMP88
                NenXKxY+HMxMs0sT0UKYh1cAEqadrHRBO65aDBcm5a0sBVYt9K6pgaOHrp/zSIbh
                nR5tFFLjBbtFktDpHL3AdGBH3OYidNGKBO3tJ3Ms7LeKXsM0+0Y4P+9fHZINL2X3
                E2N6GVnKs5PZTg9sP0FtIpAbYm/+zCx7Yj1ET/Er8mDd6tNVGSQsn9s5xUBwGqn1
                4wIDAQAB
            </PublicKey>
--> ← 公開鍵をファイルで指定するのでコメントアウト
       </MetadataFilter>
        <MetadataFilter xsi:type="RequiredValidUntil"
                        maxValidityInterval="P15D" />
        <MetadataFilter xsi:type="EntityRoleWhiteList">
            <RetainedRole>md:SPSSODescriptor</RetainedRole>
        </MetadataFilter>

    </MetadataProvider>

    <!-- --> ← コメントアウト解除

・services.propertiesの修正

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

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

・Tomcatの再起動

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

# service tomcat7 restart

 


3. 手順書

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

参考: Installation

 


4. 動作確認

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

例)1番を割り振られた場合
https://ex-sp-test01.gakunin.nii.ac.jp/

② ログインボタンをクリックします。

③ DSの所属機関の選択画面が表示されるので、各自が使用するIdPを選択します。

④ IdPのログイン画面が表示されます。 

⑤ Username/Passwordを入力して認証を行います。

⑥ 送信属性同意画面が表示される事を確認します。

⑦ 正しく属性受信の確認ページが表示される事を確認してください。

  Parent Page  

  • ラベルがありません