PI の閲覧を制限 restricting-pii-view
概要 overview
一部の顧客は、マーケティングユーザーがデータレコードにアクセスできるようにする必要がありますが、名、姓、メールアドレスなどの個人を特定できる情報(PII)は表示したくありません。 Adobe Campaign は、プライバシーを保護し、一般のキャンペーンオペレーターによるデータの乱用を防止するための方法を提案します。
実装 implementation
任意の要素または属性に適用できる新しい属性がスキーマに追加され、既存の属性 visibleIf を補完します。 この属性は accessibleIf です。 現在のユーザーコンテキストに関連する XTK 式を含む場合、例えば HasNamedRight や $(login) を利用できます。
この使用法を示す受信者スキーマ拡張のサンプルを以下に示します。
<srcSchema desc="Recipient table (profiles" entitySchema="xtk:srcSchema" extendedSchema="nms:recipient"
img="nms:recipient.png" label="Recipients" labelSingular="Recipient"
name="recipient" namespace="sec" xtkschema="xtk:srcSchema">
<element desc="Recipient table (profiles" img="nms:recipient.png" label="Recipients"
labelSingular="Recipient" name="recipient">
<attribute name="firstName" accessibleIf="$(login)=='admin'"/>
<attribute name="lastName" visibleIf="$(login)=='admin'"/>
<attribute name="email" accessibleIf="$(login)=='admin'"/>
</element>
</srcSchema>
主なプロパティは次のとおりです。
- visibleIf:メタデータからフィールドが非表示になります。したがって、スキーマ表示、列選択、式ビルダー内でフィールドにアクセスすることはできません。 ただし、フィールド名を式に手動で入力した場合は、値が表示され、データは非表示にはなりません。
- accessibleIf:結果のクエリからデータを非表示にします(空の値に置き換えます)。 visibleIf が空の場合、accessibleIf と同じ式を取得します。
Campaign でこの属性を使用した場合の結果は次のとおりです。
- コンソールの汎用クエリエディターを使用してデータを表示することはありません。
- 概要リストとレコードリスト(コンソール)にはデータが表示されません。
- 詳細表示では、データは読み取り専用になります。
- データは、フィルター内でのみ使用できます(つまり、二分法を使用して値を推測することは可能です)。
- 制限付きフィールドを使用して作成された式も制限されます。lower(@email)は @email と同様にアクセス可能になります。
- ワークフローでは、制限付きの列をトランジションの追加の列としてターゲット母集団に追加できますが、Adobe Campaign ユーザーはアクセスできません。
- ターゲット母集団をグループ(リスト)に保存する場合、保存されるフィールドの特性はデータのソースと同じです。
- デフォルトでは、JS コードからデータにアクセスできません。
IMPORTANT
重要なパラメーター(複合キーのパラメーターなど)に accessibleIf 属性を使用すると、非表示のデータが原因でデータの読み取りが許可されていないユーザーにエラーが発生する可能性があります。 これにより、クエリのエラーや予期しない動作が発生する場合があります。 中断を防ぐために、必須のパラメーターに確実にアクセスできるようにします。
推奨事項 recommendations
各配信で、メールアドレスが broadLog テーブルと forecastLog テーブルにコピーされます。そのため、これらのフィールドも保護する必要があります。
以下に、これを実装するログテーブル拡張のサンプルを示します。
<srcSchema entitySchema="xtk:srcSchema" extendedSchema="nms:broadLogRcp" img="nms:broadLog.png"
label="Recipient delivery logs" labelSingular="Recipient delivery log"
name="broadLogRcp" namespace="sec" xtkschema="xtk:srcSchema">
<element img="nms:broadLog.png" label="Recipient delivery logs" labelSingular="Recipient delivery log"
name="broadLogRcp">
<attribute accessibleIf="$(login)=='admin'" name="address"/>
</element>
</srcSchema>
<srcSchema desc="Delivery messages being prepared." entitySchema="xtk:srcSchema"
extendedSchema="nms:tmpBroadcast" img="" label="Messages being prepared"
labelSingular="Message" name="tmpBroadcast" namespace="sec" xtkschema="xtk:srcSchema">
<element desc="Delivery messages being prepared." label="Messages being prepared"
labelSingular="Message" name="tmpBroadcast">
<attribute accessibleIf="$(login)=='admin'" name="address"/>
</element>
</srcSchema>
<srcSchema entitySchema="xtk:srcSchema" extendedSchema="nms:excludeLogRcp" img="nms:excludeLog.png"
label="Recipient exclusion logs" labelSingular="Recipient exclusion log"
name="excludeLogRcp" namespace="sec" xtkschema="xtk:srcSchema">
<element img="nms:excludeLog.png" label="Recipient exclusion logs" labelSingular="Recipient exclusion log"
name="excludeLogRcp">
<attribute accessibleIf="$(login)=='admin'" name="address"/>
</element>
</srcSchema>
NOTE
この制限は、技術者以外のユーザーに適用されます。関連する権限を持つテクニカルユーザーは、データを取得できます。 したがって、この方法は 100% 安全ではありません。
recommendation-more-help
601d79c3-e613-4db3-889a-ae959cd9e3e1