Campaign による権限の評価方法

ユーザーがタスクを実行するか、オブジェクトへのアクセスを試みると、Campaign は以下のステップを実行します。

  1. グローバル・セキュリティー・ポリシー内でユーザーが所属するすべてのグループおよび役割を識別します。

    ユーザーは、1 つまたは複数の役割に属することができ、役割に属さないこともできます。ユーザーはオブジェクトを所有している場合には所有者役割に属します。 オブジェクトが置かれているフォルダーを所有している場合にはフォルダー所有者役割に属します。

    ユーザーは、(直接的に、またはその役割に割り当てられているグループに属しているために) その他の特定の役割に明確に割り当てられている場合のみ、その役割に属します。

  2. アクセス中のオブジェクトが、カスタム定義ポリシーに割り当てられているかどうかを識別します。割り当てられていれば、システムはそのカスタム・ポリシー内でユーザーが属するすべてのグループと役割を識別します。
  3. ステップ 1 とステップ 2 の結果に基づき、ユーザーが属しているすべての役割の権限を集約します。 その合成した役割を使用して、システムはアクションの権限を次のように評価します。
    1. このアクションの権限が「拒否」に設定された役割がある場合は、以下のようにして権限を集約します。
      1. グローバル・ポリシー、1 つのカスタム・ポリシーがあり、カスタム・ポリシー役割で権限が DENIED に設定されているとします。この場合は、カスタム・ポリシー役割の権限の DENIAL が、グローバル・ポリシー役割に割り当てられた権限よりも優先されます。
      2. グローバル・ポリシー、2 つ以上のカスタム・ポリシーがあり、いずれかのカスタム・ポリシー役割で権限が DENIED に設定されていて、他のカスタム・ポリシー役割では同じ権限が GRANTED に設定されているとします。この場合は、カスタム・ポリシーの権限の GRANT が、カスタム・ポリシーの権限の DENIAL よりも優先されます。
    2. 対象のアクションに関して「拒否」権限を持つ役割がない場合、そのアクションに関して「許可」権限を持つ役割があるかどうかを判別するために検査されます。その役割がある場合、ユーザーはそのアクションを実行できます。
    3. a と b のどちらも当てはまらない場合、ユーザーは権限を拒否されます。

カスタム・ポリシーが 1 つの場合の例

グローバル・ポリシーの下にカスタム・ポリシー CustomPolicyA が 1 つあるとします。CustomPolicyA には CustomPolicyARole があり、その「追加/編集」の Campaign 権限が DENIED に設定されています。

CustomPolicyARole を割り当てられた UserA について考えてみましょう。この場合は、CustomPolicyARole の「追加/編集」の Campaign 権限の DENIAL が、グローバル・ポリシー役割に割り当てられた権限よりも優先されます。そのため、「追加/編集」の Campaign オブジェクトは UserA には表示されません。

カスタム・ポリシーが 2 つある場合の例

グローバル・ポリシーの下に 2 つのカスタム・ポリシーCustomPolicyA および CustomPolicyB があるとします。CustomPolicyA と CustomPolicyB の両方には、それぞれ CustomPolicyARole と CustomPolicyBRole があります。CustomPolicyARole では、「追加/編集」の Campaign 権限が GRANTED に設定されています。CustomPolicyBRole では、「追加/編集」の Campaign 権限が DENIED に設定されています。

UserA には CustomPolicyARole および CustomPolicyBRole の両方が割り当てられています。CustomPolicyARole の「追加/編集」の権限の GRANT が、CustomPolicyBRole の権限の DENIAL より優先されます。そのため、「追加/編集」の Campaign オブジェクトは UserA に表示されます。