Skip to content

Gitea as an IdP

GiteaをIdPとして使うと便利というメモです。
設定は特に書いてないですが、ちゃんと動いたという備忘録として。

目的

運用を楽に!

  • OAuth2-Proxyを使って、ちょっとしたツールアプリをユーザ管理・認証から解放する
  • 各種アプリ(例えばMinIOとか)等のセットアップでそれぞれのユーザ管理の手間を省く

手法

OpenID Connect のIdPとしてGiteaを使う

登場人物

  • Gitea
    • セルフホストなGitHubクローンっぽいやつ。今回はIdPとして使う。検証時は1.23.5。
  • OAuth2-Proxy
    • OAuth2で認証するプロキシサーバ。こちらも検証時はv7.8.2。

Why

  • シングルバイナリで動くので、デプロイが楽
  • いささかオーバースペックは否めないが、Giteaのユーザ管理は優れている
    • ユーザ管理が楽
    • パスキーも使える
    • OAuth2-Proxyのサンプルに使われているので、実績がある
    • Giteaからさらに他のIdPに委譲することもできる
    • 当然、Gitea自体のID/PW認証も使える

ワンポイント

IdPとして使う場合の、Giteaのエンドポイント設定は以下の通り。

EndpointURL
OpenID Connect Discovery/.well-known/openid-configuration
Authorization Endpoint/login/oauth/authorize
Access Token Endpoint/login/oauth/access_token
OpenID Connect UserInfo/login/oauth/userinfo
JSON Web Key Set/login/oauth/keys

Updated at: