Keycloak ユーザーとマッピングルールの設定¶
はじめに¶
この記事では、Keycloak でユーザーとマッピングルールを設定する方法について説明します。設定が完了すると、マッピングルールを介して Guance にシングルサインオンできるようになります。
Keycloak ユーザーの設定¶
- 作成した gcy レルムで、User をクリックし、Add user をクリックします。
- Username と Email を入力します。Email は必須項目であり、Guance の管理画面で設定したユーザーのメールアドレスと一致させる必要があります。これは、メールアドレスによるマッピングで Guance にログインするために使用されます。
- ユーザー作成後、Credentials でユーザーにパスワードを設定します。
マッピングルールの設定¶
Keycloak ユーザーの追加が完了したら、マッピングルールを設定します。方法は2 種類あります。1 つはユーザーに直接マッピングルール属性を追加する方法、もう 1 つはユーザーをユーザーグループに追加してからマッピングルール属性を追加する方法です。
ユーザーにマッピングルール属性を追加する¶
作成した gcy レルムで、User をクリックし、マッピングルールを追加するユーザーを選択します。Attributes で Add をクリックして追加します。例:
- Key:department
- Value:product
Keycloak マッピングフィールドの設定¶
この手順では、Client Scopes を作成し、マッピングフィールドを設定します。これは、Keycloak と Guance 間のマッピングルールを連携させるために使用されます。
- 作成した "gcy" レルムで、Client Scopes をクリックし、右側の Create をクリックします。
- Add client scope で、設定するマッピング属性フィールド(例:"department")を入力し、Save をクリックします。
- 作成した Key(例:"department")をクリックして開き、Mappers で右側の Create をクリックしてマッピングを作成します。
- 表示された Create Protocol Mappers ウィンドウで、以下の内容を入力し、Save をクリックします。
| フィールド | 説明 |
|---|---|
| Name | マッピング属性フィールド(例:"department")を入力します。 |
| Mapper Type | "User Attribute" を選択します。 |
| User Attribute | マッピング属性フィールド(例:"department")を入力します。 |
| Token Claim Name | マッピング属性フィールド(例:"department")を入力します。 |
| Claim JSON Type | "String" を選択します。 |
- Client で、作成済みの "Guance" クライアントをクリックします。
- クリックして開き、Client Scopes > Setup で、作成した "department" を右側の Assigned Default Client Scopes に追加します。
マッピングルールが使用可能かどうかの確認¶
上記の手順が完了したら、Keycloak から直接 Guance にシングルサインオンし、対応するワークスペースに追加されているか、適切なロールが割り当てられているかを確認できます。
Keycloak でマッピングルールを確認することもできます:
マッピングルールの設定後、Client > Client Scopes > Evaluate > Generated User Info で、マッピングルールが使用可能かどうかを確認できます。下図のように、設定したマッピングフィールド(例:"department")が存在すれば、そのフィールドを使用したマップログインが可能であることを示します。
Guance 管理画面でのマッピングルールの設定¶
Keycloak のシングルサインオンマッピングルールを設定するだけでなく、管理画面でもマッピングルールを設定する必要があります。両方の設定が完了して初めて、マッピングルールが有効になります。
Guance デプロイメントプランの管理画面 > マッピングルール に移動して設定を行います。マッチしたアカウントは、ルールに従ってワークスペースに追加され、対応するロールが割り当てられます。
Keycloak アカウントを使用した Guance へのシングルサインオン¶
すべての設定が完了したら、Guance にシングルサインオンできるようになります。
ユーザーグループにマッピングルール属性を追加する¶
- 作成した gcy レルムで、Groups をクリックし、New をクリックして、新しいユーザーグループ(例:"department")を作成します。
-
Attributes で Add をクリックして追加します。例:
-
Key:department
- Value:product
- User > Groups で Join をクリックし、ユーザーにユーザーグループを追加します。













