ポリシーの決定ポイント policy-desc-pt
ドメインモデル domain-model
このページは、様々な使用例やポリシーの実装のリファレンスとして機能します。 用語の定義については、ドキュメントの 用語集 の部分も参照することをお勧めします。
テナント は、ポリシー を適用する アプリケーション を所有します。クライアントアプリケーション、(Adobeが提供する アプリケーション ID を使用して設定する必要があります。
次に、テナントは各アプリケーションを 1 つ以上のポリシーに関連付けます。これらのポリシーは、自分が作成したもの、または他のユーザーが作成して共有したものです。 ポリシーは複数のテナント間でリンクできます。
件名アクティビティ は、特定の件名の同時実行性モニタリングにレポートされるすべてのストリーム(アプリケーションに関係なく)で構成されます。
特定のサブジェクトに対してストリームを認証する必要がある場合、システムはまず、ストリームを作成したアプリケーションに定義されているすべてのポリシーを確認します。
該当するポリシーごとに、ルールに渡されるすべての 関連するアクティビティ を収集する必要があります。 ポリシー P の 関連アクティビティ には、次の条件を満たす場合にのみストリーム S が含まれます。
ストリーム「S」は、ポリシー「P」をそのポリシーに含むアプリケーションによって開始される。
ドライランの使用例 dry-run-use-cases
以下のチュートリアルでは、一部のユースケースに対してモデルを検証することを目的としています。 基本セットアップから始めて、様々な方法で複雑さを追加していくことで、徐々にそれを行います。
1. 1 人のテナント 1 つのアプリケーション。 1 つのポリシー。 1 つのストリーム onetenant-oneapp-onepolicy-onestream
まず、1 つのテナントから始め、1 つのアプリケーションと 1 つのポリシーを関連付けます。 任意のユーザーに対して最大 1 つのアクティブなストリームが存在できる(最新のストリームの再生が許可されている)というポリシーを仮定します。
ストリームが開始されると、アクティビティはそのストリームのみで構成され、再生できます。
2. 1 人のテナント 1 つのアプリケーション。 1 つのポリシー。 2 つのストリーム。 onetenant-oneapp-onepolicy-twostreams
(同じアプリケーションを使用する同じサブジェクトによる) 2 番目のストリームが開始されると、検証に使用されるアクティビティは s1 と s2 の両方で構成されます。
制限を超えています。ポリシーで、再生が許可されるのは 1 つのストリームのみと規定されているので、最新のストリーム(s2)のみ再生できます。
3. 2 名のテナント。 2 つのアプリケーション。 1 つのポリシー。 2 つのストリーム。 twotenant-twoapp-onepolicy-twostreams
次に、新しいテナントが、アプリケーションに同じポリシーを適用するとします。
2 つのテナントが同じポリシーでリンクされているので、ここでは usecase 2 で説明した状況が適用され、s3 は最新のストリームなので再生できます。
4. 2 名のテナント。 3 つのアプリケーション。 2 つのポリシー。 2 つのストリーム。 twotenants-threeapps-twopolicies-twostreams
ここで、2 番目のテナントが新しいアプリケーションをデプロイし、app2 と app3 の間で共有される新しいポリシーを定義するとします。
このとき、アクティブストリーム s3 と s4 の両方を許可する。 s3 の場合、ポリシー P1 が評価されると、システムは s3 のみを 関連アクティビティ としてカウントします(s4 はポリシー P1)とは関係ないので、違反はありません。
ポリシー P2 は両方のストリームに適用され、関連するアクティビティとして s3 と s4 の両方が含まれます。 このアクティビティは 2 つのストリームの範囲内にあるので、両方のストリームを許可します。
5. 2 名のテナント。 3 つのアプリケーション。 2 つのポリシー。 3 本の小川。 twotenants-threeapps-twopolicies-threestreams
ここで、新しいストリーム初期化の試行が app2 を使用して実行されると仮定します。
s5 は、P1 で開始できます(これにより、新しいストリームが引き継がれます)が、P2 で拒否されるので、開始されません。
app3 でストリームの初期化を試みた場合も同じことが起こります。同じポリシー P2 がストリームのアクセスを拒否します。
次に、ユーザーが app1 を使用して新しいストリームを作成しようとした場合に何が起こるかを確認します。
アプリケーション app1 はポリシー P2 とは関係がないので、ポリシー P1 のみを適用します。これにより、新しいストリームを開始でき、古いストリームを拒否できます(この場合は s3)。