カスタムワンタイムパスワードプロバイダーに接続するための前提条件を完了
カスタムプロバイダーを介してワンタイムパスワード (OTP) を送信するために、Salesforce はプロバイダーでホストされている API をコールします。この API にアクセスするには、Salesforce がプロバイダーに対して認証済みコールを発信できる必要があります。まず、プロバイダーから認証ログイン情報を取得し、プロバイダーのコールアウトエンドポイントを Salesforce に登録します。開発を簡略化して保護するには、提供者のログイン情報とコールアウトエンドポイントを 1 つの定義に保存する指定ログイン情報を作成することを検討してください。
必要なエディション
| 使用可能なインターフェース: Salesforce Classic (一部の組織で使用可能) および Lightning Experience の両方 |
| 使用可能なエディション: Professional Edition、Enterprise Edition、Unlimited Edition、Developer Edition |
| 必要なユーザー権限 | |
|---|---|
| リモートサイトの設定を定義する | 「アプリケーションのカスタマイズ」または「すべてのデータの編集」 |
| 外部ログイン情報を表示する | 「設定・定義の参照」 |
| 外部ログイン情報を作成、編集、または削除する | 「指定ログイン情報の管理」または「アプリケーションのカスタマイズ」 |
プロバイダーからの認証ログイン情報の取得
Telesign や Twilio などのカスタムプロバイダーを介してワンタイムパスワード (OTP) を送信するために、Salesforce はカスタム OTP 配信 Apex ハンドラーを使用して、プロバイダーでホストされている API をコールします。この API にアクセスするには、プロバイダーからのログイン情報を使用して認証する必要があります。
リモートサイト設定へのプロバイダーのメッセージング API エンドポイントの追加
カスタム OTP 配信ハンドラーがプロバイダーのメッセージング API に HTTP POST 要求を送信できるようにするには、リモートサイト設定でプロバイダーのメッセージングエンドポイントを登録します。
(省略可能) 指定ログイン情報の作成
Apex開発を合理化して保護するには、指定ログイン情報を作成します。指定ログイン情報は、プロバイダーのメッセージングエンドポイントとその認証ログイン情報を 1 つの定義に保存します。指定ログイン情報の作成方法は、プロバイダーが使用する認証プロトコルによって異なります。
- 指定ログイン情報を作成するには、まず外部ログイン情報を作成してから、指定ログイン情報にリンクします。「Create Named Credentials and External Credentials (指定ログイン情報と外部ログイン情報の作成)」およびプロバイダーで使用する認証プロトコルの手順を参照してください。
-
指定ログイン情報を使用して Apex コールアウトを実行するには、自動プロセス ユーザーを使用します。これは、すべての Salesforce 組織に付属するユーザーアカウントです。このユーザーがコールアウトできることを確認します。
- 権限セットを作成します。
- 権限セットの外部ログイン情報プリンシパルを有効にします。
- 権限セットを使用したユーザーの外部ログイン情報の有効化
-
この権限セットを自動プロセス・ユーザーに割り当てるには、Apex開発者コンソールで次のコードを実行します。
insert new PermissionSetAssignment( AssigneeId = [SELECT Id FROM User WHERE alias = 'autoproc'].Id, PermissionSetId = '<your permission set ID>' );
自動化プロセスユーザーは、指定ログイン情報を使用してコールアウトを実行できるようになりました。
この記事で問題は解決されましたか?
ご意見をお待ちしております。

