LoginSignup
2
2

More than 3 years have passed since last update.

Keycloak認可機能のデータモデル

Posted at

Keycloakの認可機能には多くの独自の概念が登場するため、全体像を理解するには時間がかかる。Keycloakを調査をする過程で、これらの独自概念を整理するためにデータモデル図(ER図)を作成したため、認可機能概要の説明とともに紹介する。

なお実際の認可機能の利用例として、以下の記事ではKeycloakを使った認可ルールの登録と認可判定の動作の検証を説明している。

Keycloakの認可機能の概要

  • 保護対象のオブジェクトをResource(もしくResourceを細分化したScope)として定義する。
    • Resource(もしくはScope)はClientとして登録したResource Serverに従属するモデルとなる。
  • Resource(またはScope)のアクセスに必要な条件をPolicyとして登録する。
    • Role-Based Policyなど、典型的なアクセス制御モデル(Role-Based Policyの場合はRBAC)を実現するためのビルトインPolicyが提供されている。
    • その他に、JavaScriptで任意のロジックをPolicyとして登録できる、JavaScript-Based Policyもサポートされている。
  • 保護対象オブジェクト(ResourceまたはScope)とアクセス条件(Policy)をPermissionというモデルを登録することで紐づける。

データモデル(ER図)

参考

2
2
0

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
2
2