以前、Azure用にOAouth2クライアントをセットアップする記事を書いた時に思ったのですが、各IdPはサンプルコードとしてPythonコードや専用のモジュールを提供しているので、それがそのまま使用できれば効率が良いのにな、と思いました。
IRISが埋め込みPython機能としてWSGIをサポートしたことにより、これが簡単に実現しそうなので、その方法をご紹介したいと思います。
導入方法
今回は、IdPとしてOKTAを使用してAuthorization Codeフローを行います。
OKTAでの設定内容
参考までに、今回使用した環境を後半に記載しています。
アプリケーションの起動
コンテナ化してありますので、コンテナのビルド環境をお持ちの方は、下記を実行してください。
git clone https://github.com/IRISMeister/iris-okta-oidc-wsgi
cd iris-okta-oidc-wsgi
python/.env.templateをpython/.envという名前でコピーを作成して、OKTAで得られる設定値を指定してください。
AUTH0_CLIENT_ID="0oaxxxxxxx"
AUTH0_CLIENT_SECRET="qUudxxxxxxxxxxx"
AUTH0_DOMAIN="dev-xxxxx.okta.com/oauth2/default"
.png)
.png)

をクリックすることで投票できます。
(下図赤枠)をクリックし、アカウント登録を行って下さい。.png)
のマークをクリックします。クリック前はグレーの表示ですがクリック後
に変わります。