アクセスポリシーを作成する

前提条件

 以下の権限

  • 承認>ポリシー>すべての権限
  • 承認>ポリシー>追加
  • 承認>ポリシー>消去
  • 承認>ポリシー>ビュー

次の組織設定:

新しいアクセスポリシーを最初から作成するには、ポリシーを作成するオプションを選択するか、Genesys Cloud が設計した構築済みのポリシー テンプレートを使用して編集し、ポリシーとして保存します。

あらかじめ作成されたテンプレートからアクセス ポリシーを作成する

既存のポリシー テンプレートからアクセス ポリシーを作成するには、次の手順を実行します。 

  1. [管理]をクリックします。
  2. 「ユーザーと権限」の下で、アクセスポリシー
  3. クリックテンプレート
  4. 既存のテンプレートを選択します。現在、Genesys Cloud では、開始するための次のアクセス ポリシー テンプレートを提供しています。
  5. 要件に応じてポリシー テンプレートをクリックします。テンプレートの詳細が表示されます。
  6. ポリシー名と説明を編集します。
  7. ポリシーに別のターゲットを指定する場合は、ドメイン、エンティティ、およびアクション フィールドを変更します。
  8. (オプション)ポリシーをすぐに有効にするには、ポリシーを有効にするオプション。後でポリシーを編集して有効にすることもできます。詳細については、アクセスポリシーを有効にする。 
  9. 必要に応じて、組織のニーズに合わせて、ポリシー JSON の subject、effect、condition セクションを変更します。
     メモ:  
  10. JSON構文を検証するには、構文の検証構文の検証タブで。構文エラーを解決し、ポリシーの保存を続行します。構文を明示的に検証しない場合は、ポリシーを保存するときにGenesys Cloudによって自動的に構文が検証されます。構文検証手順では、次の項目を検証します。 
    • 必須フィールドが使用可能かどうか。
    • リストされた属性は指定されたターゲットに対して有効です。
    • すべての属性の比較は、それぞれのデータ型に対して有効です。
    • 事前設定された属性名は、システムで定義された属性名と競合しません。
  11. クリックポリシーとして保存。 
  12. ポリシーが期待通りに動作するかどうかを確認するには、テストポリシータブをクリックしてサンプルデータを入力し、クリックしますテストポリシー
  13. ポリシーページに戻るには、キャンセル

サンプルの事前構築済みテンプレート

現在、Genesys Cloud には次のアクセス ポリシー テンプレートが含まれています。

このポリシー テンプレートは、管理者以外のユーザーが自分自身にないロールを付与できないように設計されています。

ポリシー JSON のテンプレート パラメータを変更できます。ドメイン、エンティティ、アクション フィールドは、ターゲットまたは API 呼び出しのグループを指定します。

「新しいロールを付与できない」テンプレートを示す ABAC ポリシー エディター

このテンプレートには次の 2 つの条件があります。

条件1

"subject.role.names": {
"contains_one": "admin.role.names"
}

この条件は、サブジェクトに管理者ロールがあるかどうかを確認します。サブジェクトに管理者ロールがある場合、結果は許可になります。

条件2

"subject.role.names": {
"contains_one": "authorization.grant.role.name"
}

対象者に管理者ロールがない場合、付与しようとしているロールが対象者にすでにある場合にのみ、アクションが許可されます。authorization.grant.role.nameサブジェクトが自分自身または他のユーザーに付与しようとしているロールの名前が含まれる属性です。したがって、たとえば、対象者にスーパーバイザー ロールはあるが管理者ロールがない場合、管理者ロールを付与しようとすると結果は拒否になります。このシナリオでは、管理者ロールはサブジェクト ロール名のリストに含まれていません。

このテンプレートでは、admin.role.names admin および masterAdmin ロールを含むリストにすることができます。組織内に他のカスタム管理者ロールがある場合は、コンマで区切ってこのリストに追加できます。

このポリシー テンプレートは、スーパーバイザーまたは管理者以外による定義済みのユーザー プロファイル フィールドの変更を防止するように設計されています。 

注記:このテンプレートには、表示されるすべてのフィールドの属性が含まれています。ユーザープロフィールページ。アクセス ポリシーを使用して、ユーザー プロファイル ページに含まれていないフィールドをユーザーが更新することを制限することはできません。たとえば、WebRTC 設定はユーザー プロファイル ページの一部ではありません。

特定のユーザープロファイルフィールドを更新できないテンプレートを示す ABAC ポリシーエディター

このテンプレートには Any ルールが含まれています。これは、指定された条件のいずれかが満たされた場合にポリシーが Allow の結果を返すことを意味します。テンプレートにはデフォルトで次の 2 つの条件があります。 

条件1

"profile.fields": {
"contains_none_ignore_case": "restricted.fields.value"

この条件は、変更されるユーザープロファイルフィールドがrestricted.fields.valueプリセット属性リストを使用し、比較では大文字と小文字の区別を無視します。変更対象のフィールドがリストにない場合、この条件の結果は True になります。環境のニーズに応じて、プリセット属性リストを個別のフィールドとして、またはセクション名として、あるいはその両方の組み合わせとして編集できます。サポートされているプリセット属性の詳細については、以下を参照してください。制限されたフィールドの値リスト。 

条件2

"subject.role.names": {
"contains_one": "manager.role.names"

この条件は、サブジェクトがプリセット属性リストに含まれる役割を持っているかどうかを確認します。manager.role.names 。対象者がこれらのいずれかのロールを持っている場合、アクションは許可されます。

テンプレートをポリシーとして保存したら、ポリシーをテストして期待どおりに機能することを確認できます。次のサンプル画像では、サブジェクトに管理者ロールがあるため、プロファイルフィールド(agent.name ) は制限フィールドのリストに含まれています。

特定のユーザーフィールドを更新できないテンプレートのサンプルデータを表示します

ポリシーの作成機能を使用してアクセス ポリシーを作成します

アクセス ポリシーを最初から作成するには、次の手順を実行します。

  1. [管理]をクリックします。
  2. 「ユーザーと権限」の下で、アクセスポリシー
  3. クリックポリシーを作成する
  4. ポリシー名と説明を入力します。
  5. ポリシー要件に基づいて、ドメイン、エンティティ、およびアクション フィールドを指定します。参照してくださいあらかじめ構築されたテンプレート独自のポリシーを作成します。 
  6. (オプション)ポリシーをすぐに有効にするには、ポリシーを有効にするオプション。後でポリシーを編集して有効にすることができます。詳細については、アクセスポリシーを有効にする。 
  7. 組織のニーズに基づいて、ポリシー JSON の subject、effect、condition セクションを定義します。
     メモ:  
  8. JSON構文を検証するには、構文の検証構文の検証タブで。構文エラーを解決し、ポリシーの保存を続行します。構文を明示的に検証しない場合は、ポリシーを保存するときにGenesys Cloudによって自動的に構文が検証されます。構文検証手順では、次の項目を検証します。
    • 必須フィールドが使用可能かどうか。
    • リストされた属性は指定されたターゲットに対して有効です。
    • すべての属性の比較は、それぞれのデータ型に対して有効です。
    • 事前設定された属性名は、システムで定義された属性名と競合しません。
  9. 保存するをクリックします。
  10. ポリシーが期待通りに動作するかどうかを確認するには、テストポリシータブをクリックしてサンプルデータを入力し、クリックしますテストポリシー
  11. ポリシーページに戻るには、キャンセル