HachiAuth
Gitea / Forgejo OIDC
Gitea / Forgejo 接続
HachiAuth側では Confidential Client を作成します。新規Confidential Clientはclient secret必須・PKCE任意になるので、PKCEを送らないGitea系クライアントでも使えます。
HachiAuth Client
Admin → OAuth / OIDC → Client作成で Confidential + secret と client_secret_basic を選び、下のCallback URLをRedirect URIに登録してください。Scopesは openid profile email。
Gitea CLI
CLIENT_ID と CLIENT_SECRET はHachiAuthのClient作成結果に置き換えてください。secretは公開リポジトリやapp.iniへ不用意にコミットしないでください。
SSO限定に寄せる app.ini
[service] ENABLE_PASSWORD_SIGNIN_FORM = false ENABLE_BASIC_AUTHENTICATION = false ALLOW_ONLY_EXTERNAL_REGISTRATION = true REQUIRE_EXTERNAL_REGISTRATION_PASSWORD = false [oauth2_client] ENABLE_AUTO_REGISTRATION = true OPENID_CONNECT_SCOPES = profile,email USERNAME = preferred_username REGISTER_EMAIL_CONFIRM = false
先にHachiAuthログインが成功することを確認してからパスワードログインを閉じるのがおすすめです。管理者の復旧経路は別途確保してください。