Salesforce Flow からの HTTP コールアウトを受け入れるように外部サービスを設定する場合、シームレスな通信を確保するために適切な Salesforce ドメインをホワイトリストに登録することが重要です。Salesforce の送信リクエストは、特に動的 IP アドレスとドメインを利用する Hyperforce インフラストラクチャを採用している場合は、さまざまなドメインから発信される可能性があります。
Salesforce インスタンスが HTTP コールアウトに使用する特定のドメインを特定するには、Apex コードを使用して簡単なテストを実行できます。この方法では、外部サービスにリクエストを送信して発信者の IP アドレスを返すため、コールアウトに関連付けられたドメインを識別できます。方法は次のとおりです。
-
リモートサイトをセットアップする:
- に移動
セットアップ>セキュリティ>リモートサイト設定
Salesforce で。
- URLを使用して新しいリモートサイトを追加する
http://icanhazip.com/
保存します。
2. Apex コードを実行する:
-
Salesforce で開発者コンソールを開きます。
-
次の Apex コードを実行します。
「頂点
HttpRequest 要求 = 新しい HttpRequest();
req.setEndpoint('
メソッドを 'GET' に設定します。
新しい Http() を作成します。
HttpResponse res = http.send(req);
System.debug('コールアウトIP: ' + res.getBody());
「」
- このコードはHTTP GETリクエストを送信します
このサイトについて
、発信者の IP アドレスで応答します。
3. ドメインを識別する:
-
コードを実行した後、出力のデバッグ ログを確認します。
-
返された IP アドレスは、Salesforce がアウトバウンドコールアウトに使用するドメインを特定するのに役立ちます。
ただし、Salesforce のインフラストラクチャでは、時間の経過とともに変化する可能性のあるさまざまな IP アドレスとドメインが使用される可能性があることに注意することが重要です。したがって、中断のないサービスを確保するために、個々の IP アドレスまたはドメインをホワイトリストに登録するのではなく、より広範囲の Salesforce ドメインをホワイトリストに登録することをお勧めします。Salesforce のドキュメントによると、ホワイトリストには次のドメインを追加する必要があります。