5.2. ロールベースのポリシー
このタイプのポリシーを使用して、1 つ以上のロールセットがオブジェクトにアクセスできるパーミッションの条件を定義できます。
デフォルトでは、このポリシーに追加されたロールは必要に応じて指定されず、アクセスを要求するユーザーがこのロールが付与されている場合は、ポリシーはアクセスを付与します。ただし、特定のロールを強制する場合は、必要 に応じて特定のロールを指定することができます。レルムまたはクライアントロールのどちらであるかに関係なく、必須ロールと必須ロールを組み合わせることもできます。
ロールポリシーは、より多くの制限付きのロールベースのアクセス制御 (RBAC) が必要な場合に役に立ちます。オブジェクトへのアクセス権限を付与するために特定のロールを適用する必要がある場合に役立ちます。たとえば、ユーザーがユーザーのリソースにアクセスするために (ユーザーの代わってくる) クライアントアプリケーションを許可する必要があります。Red Hat Single Sign-On Client Scope Mapping を使用して競合ページを有効にしたり、クライアントが Red Hat Single Sign-On サーバーからアクセストークンを取得する際にスコープを明示的に指定することもできます。
新規ロールベースのポリシーを作成するには、ポリシー一覧の右上隅にある項目リストで Role を選択します。
ロールポリシーの追加
5.2.1. 設定
Name
ポリシーを記述する人間が判読できる一意な文字列。ベストプラクティスは、ビジネス要件とセキュリティー要件に密接に関連する名前を使用して、それらをより簡単に識別できるようにすることです。
Description
このポリシーの詳細を含む文字列。
Realm Roles
このポリシーで許可される realm ロールを指定します。
Client Roles
このポリシーで許可される client ロールを指定します。このフィールドを有効にするには、最初に
Client
を選択します。Logic
他の条件を評価した後に適用する、このポリシーのロジック。
関連情報
5.2.2. ロールの定義 (任意)
ロールベースのポリシーの作成時に、特定のロールを Required
として指定できます。これを実行する際に、アクセスを要求するユーザーが すべて の 必要な ロールが付与されている場合にのみ、ポリシーはアクセスを付与します。レルムとクライアントロールの両方を設定できます。
必要なロールの例
必要に応じてロールを指定するには、必要に応じて設定するロールの Required
チェックボックスを選択します。
必要なロールは、ポリシーに複数のロールを定義する場合に役に立ちますが、それらのサブセットのみが必須となります。この場合、レルムとクライアントロールを組み合わせて、アプリケーションに対してより粒度の細かいロールベースアクセス制御 (RBAC) モデルを有効にすることができます。たとえば、クライアントに固有のポリシーを持つことができ、そのクライアントに関連付けられた特定のクライアントロールが必要です。また、アクセスを強制できるのは、特定のレルムロールの有無のみです。また、両方のアプローチを同じポリシーに組み合わせることもできます。