#背景
ShibbolethにはHandlerの一部としていくつかブラウザベースの便利ツールが用意されている。
#環境
- Windows Server 2016
- Apache 2.4
- Shibboleth 3.x
#前提
Apache + Shibbolethの設定はできているものとする。
関連記事:Apache + OneLogin SSO with Shibboleth
Apacheのhttpd.confにおいてHandlerのロケーションは次のように設定されているものとする。
<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.