iiif auth apiを試すため環境として、以下のリポジトリが提供されています。
https://github.com/digirati-co-uk/iiif-auth-server
今回は、上記のリポジトリを使用して、iiif auth apiを試します。
pip install -r requirements.txt時にバージョンの不具合などが発生した場合、以下のように、バージョン情報を削除して、再度試すなどしてみてください。
db作成#
その後、dbを作成します。
上記を実行後、iiif-auth-server/iiifauthにiiifauth.dbというファイルが作成されます。
dbの中身は、以下のようなツールを使って確認することができます。
https://sqlitebrowser.org/dl/
以下を実行します。
その後、http://127.0.0.1:5000にアクセスすると、以下の画面が表示されます。

ビューアの準備#
以下を実行して、mirador3をダウンロードして、ローカルサーバで起動してみます。
http://0.0.0.0:8000にアクセスして、以下の画面が表示されればOKです。

ビューアに読み込ませる#
http://127.0.0.1:5000のページの構成は、まずImagesが並び、その後Manifestsが並びます。
今回、下部のManifestsを、Mirador3で読み込んでみます。
わかりやすい例として、02のdegradedを試してみます。
以下のようなURLにアクセスしてみます。
http://0.0.0.0:8000/?manifest=http://0.0.0.0:5000/manifest/02_degraded
すると、以下のように表示されます。特徴として、画面上部にログインのための帯が表示され、色がついていない画像が表示されます。

そこで、ログインをしてみます。以下のようなログイン画面が起動するため、Loginボタンを押します。

そうすると、以下のように、画面上部がLog outボタンに変わり、カラーの画像が表示されます。

上記が、iiif auth apiの利用例のひとつです。
以下、小さくて見にくいと思いますが、先に紹介したDB Browser for SQLiteでiiifauth.dbを開いて表示したものです。session_idやtokenなどが保存されていることが確認できます。

info.jsonを概観する#
上記の例のinfo.jsonは以下です。
serviceの箇所に記載された文字列が、ビューア上で表示されていたことが確認できます。
さらに、service > service のところで、以下のような記載があります。ここで、ログアウト時などに必要な情報が記載されています。
これまで、以下のようなURLが登場しています。
上記の処理内容については、iiifauth/iiif_auth_server.pyに記載されています。
例えばログアウトについては、以下のようになっており、tokensテーブルから当該レコードを削除していることが確認できます。
上記のような箇所を参考にして、各機関の環境に応じた実装を行うのがよいように思います。
なお、ログインが成功・失敗時の個々の処理内容は、以下に記載されていました。
さまざまな処理が可能なはずですので、上記ファイルと以下を参考に、色々と試してみるのがよさそうです。
https://iiifauth.digtest.co.uk/
まとめ#
国内では島根大学などを除いて、あまり導入例を見ないiiif auth apiですが、本記事が参考になりましたら幸いです。
https://current.ndl.go.jp/ca1988
具体的な実装方法などについても、今後調査してみたいと思います。