子ページ
  • SPv3アップデートに関する情報

比較バージョン

キー

  • この行は追加されました。
  • この行は削除されました。
  • 書式設定が変更されました。
ヒント
Shibboleth IdPのアップデートに関してはこちらをご覧ください。⇒IdPv3アップデートに関する情報IdPv4アップデートに関する情報
ヒント

SP 2.5.xおよびそれ以前からアップデートする場合はこちらの情報もご覧ください。⇒SPバージョン2アップデートに関する情報

注意

以前の本手順でSPv2からSPv3にアップデートして以降、/var/log/messages にmod_shibのログが出力されなくなっている場合は、/etc/shibboleth/native.logger を同ディレクトリの native.logger.dist と比較し、必要な修正を適用してください。
出力されるべきmod_shibのログは以下のようなフォーマットです:

書式設定済み
Nov 10 22:37:54 localhost shobboleth: ...


目次
maxLevel4

バージョン共通

CentOS等、yumコマンドによりインストールした環境では以下のコマンドで簡単に最新版にアップデートできます。CentOS等、yum/dnfコマンドによりインストールした環境では以下のコマンドで簡単に最新版にアップデートできます。

コード ブロック
$ sudo yum update

...

コード ブロック
$ sudo yum update shibboleth libsaml10libsaml12 libxmltooling8libxmltooling10 libxml-security-c20 liblog4shib2 opensaml-schemas xmltooling-schemas libxerces-c-3_2 libcurl-openssl
(OSによっては libcurl-openssl パッケージが存在しない場合がありますが、無視されますので問題ありません)

...

コード ブロック
$ sudo systemctl restart shibd
$ sudo systemctl restart httpd
情報

CentOS 6の場合コマンドが異なります。自動再起動されていない場合は以下のコマンドを用いてください。

コード ブロック
$ sudo /sbin/service shibd restart
$ sudo /sbin/service httpd restart

※ 例えば、2.6.1から3.0.1へのアップデートは自動的に再起動する模様。3.0.1にアップデート後、libxmltooling8のみをアップデートした場合は自動再起動されない模様。

注意点

すでにNIIオープンフォーラム等でアナウンスしておりますが、Shibboleth開発元におけるメンテナンス持続性のため、Shibboleth SP次期バージョンはJavaで再実装する方向でリデザインが進行しており、リリース目処は2024もしくは2025年となっております。次期バージョンリリースまでは現行バージョンがメンテナンスされますが、それ以降も運用を続けるには大きな改修が必要になる可能性があります(利用している機能によっては提供されなくなる可能性もあります)ので予めご了承ください。

RPMパッケージ情報が取得できない場合は、本ページ末尾の説明を参照して新しいリポジトリを利用するよう設定ファイルを更新してください。RPMパッケージのミラーリングがおかしい場合は、本ページ末尾の説明を参照して冗長化されたリポジトリへ設定ファイルを更新してください。

デフォルトでは有効になっていない、オープンリダイレクタとならないための設定があります。特に事情がなければ以下の指示に従って設定を有効にしてください。
オープンリダイレクタとなりうる問題の対処

Shibbolethプロダクトに関する次節以降記載以外のセキュリティフィックスおよび脆弱性情報は以下のページにてご覧いただけます。
⇒ Shibboleth Wiki: SecurityAdvisories

Apache httpd 2.4へ移行する場合の注意点

OSのバージョンアップ等でApache httpd 2.2およびそれ以前の環境からApache httpd 2.4の環境へ移行する場合の、Shibboleth SP周りの設定ファイルに関する注意事項です。

Apache httpd 2.2およびそれ以前からApache httpd 2.4へ移行する場合、設定ファイルの ShibCompatWith24 の行はコメントアウトもしくは削除してください。
2016-12-08 [upki-fed:01115] Re: Proxy配下でのSP構築に関して

...

2016-12-09 [upki-fed:01121] Re: Proxy配下でのSP構築に関して
関連: https://issues.shibboleth.net/jira/browse/SSPCPP-628
関連: (Shibboleth Users ML) Configuration of SP with apache and mod_shib - HTTP 401 error

SP 3.2.x から SP 3.3.x へアップデートする場合の注意点

本リリースよりRPMパッケージの署名に使われるGPG鍵が変更されているために、以前のバージョンからそのままではyumコマンドによるアップデートに失敗します。CentOS等、yumコマンドによりインストールした環境では以下の手順でアップデートしてください。

  1. Shibboleth用のrepositoryファイルの更新
    Shibboleth用のrepositoryファイルを下記URL先より取得できる最新のものに更新してください。
    https://shibboleth.net/downloads/service-provider/latest/RPMS/
    (CentOS 7の場合のコマンド例)

    パネル
    $ sudo curl 'https://shibboleth.net/cgi-bin/sp_repo.cgi?platform=CentOS_7' -o /etc/yum.repos.d/shibboleth.repo
  2. GPG鍵のインポートとアップデートの完了
    repositoryファイルの更新後、yumコマンドによりアップデートを実施すると、新しいGPG鍵のインポートを促されますので、表示されるフィンガープリントが以下と一致することを確認してインポートしてください。

    パネル

    Fingerprint: dcaa 1500 7bed 9de6 90cd 9523 378b 8454 0227 7962

    その後アップデート処理が進みますので、そのまま完了してください。

SP 3.1.x から SP 3.2.x へアップデートする場合の注意点

libsaml, libxmltoolingが合わせてバージョンアップしパッケージ名が変更になっています。古いバージョンは削除されないようなので、他で使っていなければ削除してしまいましょう。

コード ブロック
$ sudo yum erase libsaml11 libxmltooling9

https://www.gakunin.jp/ml-archives/upki-fed/msg01430.html
にて説明していますが、Form SessionInitiatorでdiscoveryTemplate.htmlを使っている場合、3.2.1以降では
forceAuthn, isPassive, acsIndex, authnContextClassRef, authnContextDeclRef, authnContextComparison
の各パラメーターをURLのquery stringで受け渡しHTMLに反映することができなくなっておりますので、そのような機能に依存している箇所がございましたら、代替としてJavaScriptでquery stringを確認するなど別の手段を 使うようにしてください。

また、3.2.1以降<Errors>関連のテンプレートについて、query stringパラメーターによる置換のデフォルトがオフになったことにより、この機能に依存している箇所に影響が出る可能性があります。JavaScriptなど別の手段でカバーすることが推奨されますが、externalParameters="true"により以前のバージョンの挙動を再現することも可能です。

SP 3.0.x から SP 3.1.x へアップデートする場合の注意点

libsaml, libxmltoolingが合わせてバージョンアップしパッケージ名が変更になっています。古いバージョンは削除されないようなので、他で使っていなければ削除してしまいましょう。

コード ブロック
$ sudo yum erase libsaml10 libxmltooling8

Shibboleth IdP v3における設定ファイルのフラット化と同じことがSPでも進行しており、大量のDEPRECATEDのwarningが出力されるようになっています。実際に支障をきたすのはv4以降ですが、attribute-policy.xml.distファイルおよびIdPフラット化の記述を参考に時間のあるときに対処しておくことを推奨します。

SP 3.0.x から SP 3.0.x へのアップデートに関する情報

...

1. 事前準備

shibboleth2.xmlに accessError.html および syslog.logger への参照がないことを確認してください。参照している場合は、ファイルが編集されている(.distを付加したファイルと同一でない)ことを確認してください。
参照されておりかつ編集されていない場合、アップデートで当該ファイルが削除され問題が発生する可能性があります。編集された状態のものは削除されませんので、コメントを挿入しておくなどして対処してください。

...

libsaml, libxmltooling, libxml-security-c, liblog4shibが合わせてバージョンアップしパッケージ名が変更になっています。また、CentOS liblog4shib, libxerces-cが合わせてバージョンアップしパッケージ名が変更になっています。また、CentOS 7ではBaseリポジトリのxerces-cパッケージを使用していたものが独自のlibxerces-c-3_2パッケージを使用するようになっています。古いバージョンは削除されないようなので、他で使っていなければ削除してしまいましょう。

パネル

$ sudo yum erase libsaml9 libxmltooling7 libxml-security-c17 liblog4shib1 libxerces-c-3_1 xerces-c

2.2. 不要なファイルの削除

2.xで/var/log/shibboleth-www/以下に出力されていたログは3.0では/var/log/messagesに出力されるようになりました。既存のログファイルに有益なものはないと思いますので削除してかまいません。

...

注意

新形式(3.0フォーマット)でデフォルト値が変更になった部分があり、該当機能を使っている場合は移行する際には注意が必要です。これまで判明しているところでは、<SessionCache>cacheAssertions="false"がデフォルトになったことによりtrueを明示していない場合はWebアプリケーションがアサーションを直接取得することができなくなります。従来の値を指定するようにshibboleth2.xmlを修正してください。
詳細は開発元のReleaseNotesの3.0.0の"Changed Defaults"を参照してください。

...

3. SP 3.0からの新機能

  • Stateless Clustering
    ReleaseNotesより:

    A form of session recovery across clustered SP nodes using encrypted cookies is available. While making clustering much simpler, it does affect the behavior of logout in some cases, but it offers more flexibility for deployers willing to make trade-offs.

  • /Shibboleth.sso/Logout/Admin
    ReleaseNotesより:

    An endpoint is available to programmatically remove sessions based on the SP-assigned session ID, with associated communication to an IdP via SOAP where possible (though this is rarely possible). While complex, it is possible to create a more limited shared store of revoked sessions that prevents the stateless session recovery feature from re-creating the session in some cases, without requiring a fully-shared session store.

  • entityIDSelf / APPLICATIONID-override.xml
    ReleaseNotesより:

    A set of virtual hosts can be auto-assigned a distinct entityID without the creation of <ApplicationOverride> elements to do so, using the new entityIDSelf content setting. While this does not eliminate the overhead of managing metadata for each host, it does eliminate most actual configuration overhead within the SP itself.

    In addition, when overrides are still required for other purposes, it is now possible to load XML fragment files containing just the override configurations from a directory at runtime, including adding additional overrides on the fly without configuration reload.

...

shibbolethリポジトリが冗長化され設定ファイルが変更になっております。古いものをお使いの場合は技術ガイドの手順に従って /etc/yum.repo.d/shibboleth.repo ファイルを更新してください。これに伴いパッケージの更新が必要になることはありません。

SP 3へのアップデートに関する他の情報源: (Shibboleth Wiki) UpgradingFromV2