Keycloak と GitBucket で OpenID Connect の設定を行う
Keycloak と GitBucket 間を OpenID Connect で認証させる設定例をメモしておきます。
パラメータ¶
今回は以下のパラメータで設定していきます。 また、Keycloak 側は既に Realm / Client / User 設定がされているものとします。
Keycloak 側のパラメータ¶
項目 | 値 |
---|---|
Realm | members |
Client ID | gitbucket |
Client Protocol | openid-connect |
Access Type | confidential |
Valid Redirect URIs | https://gitbucket.example.com/signin/oidc |
GitBucket 側のパラメータ¶
Issuer
の値は https://[KEYCLOAK-FQDN]/auth/realms/[YOUR_REALM]
のように入力します。 Client ID は Keycloak 上に定義した値に合わせます (今回は Keycloak 上で gitbucket
と定義した為、GitBucket 上でも gitbucket
になる)。 Client secret の値は Keycloak の Client 定義
→ Credentials
から取得します。
項目 | 値 |
---|---|
Issuer | https://keycloak.example.com/auth/realms/members |
Client ID | gitbucket |
Client secret | (Keycloak 上で確認) |
Expected signature | RS256 |
Step.1¶
画面右上の Sign in
をクリックします。
Step.2¶
管理ユーザ名とパスワードを入力し、管理者としてログインします (GitBucket インストール直後であれば root
ユーザ)。
Step.3¶
管理ユーザとしてログイン出来たら、画面右上のメニューから System administration
をクリックします。
Step.4¶
System settings
→ Authentication
の順にクリックします。
Step.5¶
画面下部までスクロールすると OpenID Connect の設定欄があります OpenID Connect
にチェックを入れ、必要なパラメータを入力していきます。
Step.6¶
OpenID Connect の設定が完了したら、一度 Sing out
をクリックし、サインアウトします。
Step.7¶
再度、画面右上の Sign in
をクリックし、サインイン画面へ進みます。
Step.8¶
OpenID Connect を有効化した為、(当初は無かった) Sign in with OpenID Connect
というボタンが表示されているので、これをクリックします。
Step.9¶
Keycloak の認証画面へリダイレクトされます。 Keycloak 上に存在するユーザ名 / パスワードを入力し、Log In
をクリックします。
Step.10¶
Keycloak 上のユーザで GitBucket へログイン出来れば、OpenID Connect による認証は成功です。