Apex を使用するトランザクションセキュリティポリシーの作成
[設定] を使用して、Apex を使用する拡張トランザクションセキュリティポリシーを作成します。既存の Apex クラスを指定するか、空のクラスを作成してからコーディングすることができます。Apex クラスは TxnSecurity.EventCondition インターフェースを実装する必要があります。
| 使用可能なインターフェース: Salesforce Classic および Lightning Experience |
| 使用可能なエディション: Enterprise Edition、Performance Edition、Unlimited Edition、および Developer Edition Salesforce Shield または Salesforce Event Monitoring アドオンサブスクリプションが必要です。 |
| 必要なユーザ権限 | |||
|---|---|---|---|
| イベントを参照および管理する | 「データ漏洩検出イベントの表示」 | ||
| トランザクションセキュリティポリシーを作成、編集、管理する | 「アプリケーションのカスタマイズ」 | ||
同じイベント種別に複数のポリシーを作成できますが、ポリシーとそのアクションは重複しないようにすることをお勧めします。特定のイベントが発生したときにそのイベントの同じアクションを持つ複数のポリシーが実行される場合、実行順序は不確定です。
- [設定] の [クイック検索] ボックスに「トランザクションセキュリティ」と入力し、[トランザクションセキュリティポリシー] を選択します。
- [新規] をクリックし、[Apex] を選択します。
- [次へ] をクリックします。
-
どのイベントに対してポリシーを作成するかを選択します。
たとえば、組織で API コールを追跡する場合は [API イベント] を選択します。ユーザがいつレポートを表示またはエクスポートしたかを監視する場合は [レポートイベント] を選択します。使用可能なイベントの完全なリストについては、「拡張トランザクションセキュリティポリシーの適用」を参照してください。
- ポリシーを実装する Apex クラスを選択します。まだクラスを作成していない場合は、[新しい空の Apex クラス] を選択します。
- [次へ] をクリックします。
-
ポリシーがトリガされたときに実行するアクションを選択します。
使用可能なアクションは、イベント種別によって異なります。詳細は、「トランザクションセキュリティアクションとは?」を参照してください。
-
通知先と通知方法を選択します。
選択するユーザには「すべてのデータの編集」権限と「設定の参照」権限が必要です。
-
ポリシーの名前と説明を入力します。
ポリシー名は、アンダースコアと英数字のみを使用でき、組織内で一意にする必要があります。最初は文字であること、スペースは使用しない、最後にアンダースコアを使用しない、2 つ続けてアンダースコアを使用しないという制約があります。
-
必要に応じて、ポリシーを有効化します。
Apex クラスを作成する場合は、最初にコードをクラスに追加する必要があるため、まだポリシーを有効化しないでください。
-
[完了] をクリックします。
新しいポリシーが [ポリシー] テーブルに表示されます。Apex クラスを作成する場合は、その名前がポリシーの名前になり、EventCondition 文字列が追加され、MyApexClassEventCondition のようになります。クラスが [Apex 条件] 列にリストされます。
-
編集する Apex クラスの名前をクリックします。
Apex クラスを作成する場合は、実装コードを追加する必要があります。開始できるように、Salesforce が次の基本コードを追加します。
1global class MyApexClassEventCondition implements TxnSecurity.EventCondition { 2 3 public boolean evaluate(SObject event) { 4 return false; 5 } 6 7}
Apex を使用するトランザクションセキュリティポリシーを削除しても、実装クラスは削除されません。この Apex クラスを個別に削除することも、別のポリシーで再利用することもできます。