Shibboleth便利ツール


背景

ShibbolethにはHandlerの一部としていくつかブラウザベースの便利ツールが用意されている。

参考:Shibboleth Wiki - Handler

環境

  • Windows Server 2016
  • Apache 2.4
  • Shibboleth 3.x

前提

Apache + Shibbolethの設定はできているものとする。
関連記事:Apache + OneLogin SSO with Shibboleth

Apacheのhttpd.confにおいてHandlerのロケーションは次のように設定されているものとする。

httpd.conf
<Location /Shibboleth.sso>
  SetHandler shib
</Location>

※httpd.confのLocationとは:ドメイン上のリソースの相対パス。ドメインがlocalhostである場合、ロケーション/は、http://localhost/を表す。ロケーションが/login/であれば、http://localhost/login/を表す。上記のコードは、http://localhost/Shibboleth.ssoに対して'shib'というハンドラをセットするという意味。

なお、以下でもホスト名はとりあえずlocalhostとする。

Metadata Generation Handler

Linux環境では、/etc/shibboleth/metagen.shによってmetadataを生成できるらしいが、Windows版にはない。環境によらず、http://localhost/Shibboleth.sso/MetadataにGETリクエストを送ると、SPの設定に基づくMetadata(のサンプル)をダウンロードできる。

参考:Shibboleth Wiki - Metadata Generation Handler

Status Handler

https://localhost/Shibboleth.sso/StatusにGETリクエストを送ると、SPの各種ステータスをXML形式で返す。
有効になっているハンドラや、証明書の情報などが載っている。秘密にすべき情報が載る場合があるので、管理者以外は見られないようにすべきとShibboleth Wikiには書いてある。

参考:Shibboleth Wiki - Status Handler

Session Handler

http://localhost/Shibboleth.sso/SessionにGETリクエストを送ると、デバッグ用のShibboleth Session情報を返す。

Miscellaneous
Session Expiration (barring inactivity): 479 minute(s)
Client Address: ::1
SSO Protocol: urn:oasis:name:tc:SAML:2.0:protocol
Identity Provider: https://app.onelogin.com/saml/metadata/e5ca0b3b-d8e7-4551-8884-64b59e16c482
Authentication Time: 2020-05-05T03:59:06Z
Authentication Context Class: urn:oasis:names:tc:SAML:2.0:ac:classes:PasswordProtectedTransport
Authentication Context Decl: (none)

>Attributes
givenName: 1 value(s)
sn: 1 value(s)
xusername: 1 value(s)

有効なセッションが無い場合は次の表示になる。

A valid session was not found.

参考:Shibboleth Wiki - Session Handler