この文章は Salesforce 機械翻訳システムを使用して翻訳されました。詳細はこちらをご参照ください。
英語に切り替える

Newer Version Available

This content describes an older version of this product. View Latest

EventCondition インターフェース

トランザクションセキュリティポリシーに基づいて、特定のイベントの発生時にアクションを実行するかどうかを実装クラスで指定できるようにします。このインターフェースは、リアルタイムイベントモニタリングで作成された Apex ポリシーでのみ使用されます。

使用方法

evaluate メソッドは、トランザクションセキュリティポリシーで監視されているリアルタイムイベントが発生するとコールされます。通常の実装では、最初にイベントから関心のある項目を選択します。その項目をテストして、監視されている条件を満たすどうか確認します。条件を満たす場合、メソッドは true を返します。

たとえば、ユーザが照会したリードレコード数が 1,000 件を超えたときにトリガされるトランザクションセキュリティポリシーがあるとします。各 API イベントについて、evaluate メソッドは、RowsProcessed 値が 1,000 を超えるかどうかと、QueriedEntities 値に「Lead」が含まれるかどうかをチェックします。該当する場合は、true が返されます。

ポリシー条件インターフェースが正しく機能することを確認するために、テストクラスを用意することをお勧めします。ポリシーを Sandbox から本番組織に移動するか、変更セットと共に移動するか、または他の方法で移動するかに関係なくテストが必要です。たとえば、ポリシーを本番環境に移行する前に、開発環境でポリシーをテストします。

エラーが発生する可能性があるため、カスタムポリシーには DML ステートメントを含めないでください。トランザクションポリシーの評価中に Apex を介してカスタムメールを送信すると、レコードが別のレコードに明示的に関連付けられていなくても、エラーが表示されます。詳細は、『Apex 開発者ガイド』「Apex DML 操作」を参照してください。

EventCondition メソッド

EventCondition のメソッドは次のとおりです。

evaluate(event)

リアルタイムイベントモニタリングで作成されたトランザクションセキュリティポリシーに照らしてイベントを評価します。イベントがポリシーをトリガすると、メソッドは true を返します。

署名

public Boolean evaluate(SObject event)

パラメータ

var1
型: SObject
トランザクションセキュリティポリシーに対して確認するイベント。

戻り値

型: Boolean

ポリシーがトリガされる場合、true が返されます。たとえば、ユーザをシングルログインセッションに限定するポリシーがあるとします。ユーザが再ログインを試みると、ポリシーによりログインがブロックされ、その LoginEvent の Status、PolicyId、および PolicyOutcome 項目が更新されます。また、Salesforce システム管理者にもメール通知が送信されます。evaluate メソッドは、ログインイベントのみを確認し、ユーザの 2 つ目のログインの試みである場合に true を返します。

システムはアクションと通知を実行しますが、evaluate メソッドは実行しません。

EventCondition の実装例

これは、TxnSecurity.EventCondition インターフェースの実装例を示しています。ユーザが取引先オブジェクトを照会すると、トランザクションセキュリティポリシーがトリガされます。

詳細は、「Apex トランザクションセキュリティの高度な実装例」を参照してください。