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

ログインフローの作成

クラウドフローデザイナを使用して、ログインフローを構築します。ログインフローを使用して、Salesforce にアクセスする前にビジネスプロセスを実行するようユーザに指示します。
使用可能なインターフェース: Salesforce Classic および Lightning Experience の両方
使用可能なエディション: Enterprise Edition、Performance Edition、Unlimited Edition、および Developer Edition

必要なユーザ権限
クラウドフローデザイナでフローを開く、編集または作成する 「Force.com Flow の管理」

たとえば、ログイン時にユーザから詳細を収集するフォームを挿入できます。ユーザを他の情報 (サービスの利用規約など) のページに移動できます。ログインフローの一般的な用途は、カスタム 2 要素認証 (2FA) プロセスを実装してセキュリティを強化することです。

クラウドフローデザイナを使用して、ログインフロー画面を作成します。次に、[設定] から Salesforce の標準ログインページに画面を埋め込みます。認証プロセスの間、ユーザはログインフロー画面に移動します。ユーザは認証に成功してログインフローを完了すると、Salesforce にリダイレクトされます。必要に応じて、ログインプロセスでユーザを直ちにログアウトすることもできます。

2FA のログインフローを作成する場合、Apex メソッドを使用して、セッションコンテキストの取得、ユーザの IP アドレスの抽出、信頼済み IP 範囲からの要求であるかどうかの確認が行われます。信頼済み IP 範囲内からの要求である場合は、フローがスキップされ、ユーザが組織にログインします。要求が IP 範囲外である場合、次の作業を行うフローが呼び出されます。
  • 時間ベースのワンタイムパスワード (TOTP) などの追加ログイン情報を使用してログインするようユーザに指示する
  • ユーザを強制的にログアウトする
  • その他のオプションを含むページにユーザを移動する

独自のログインフローの構築

独自のログインフローを構築するには、次のプロセスに従います。

  1. クラウドフローデザイナおよび Apex を使用してフローを作成します。
    たとえば、ユーザが信頼済み IP 範囲外からログインしている場合のみ認証の第 2 要素を必要とするカスタム IP ベースの 2FA フローを設計できます。

    信頼済み IP 範囲を検索または設定するには、[設定] から、[クイック検索] ボックスに「ネットワークアクセス」と入力し、[ネットワークアクセス] を選択します。

    メモ

    ユーザプロファイルで直接ログイン IP 範囲を設定しないでください。プロファイルで IP 範囲を設定すると、範囲外の場合にそのプロファイルのすべてのユーザのアクセスが制限されます。そのため、これらのすべてのユーザがログインフロープロセスを開始できなくなります。

    メモ

    フローに次の要素を含めます。

    1. Apex プラグインを定義する新しい Apex クラス。このプラグインは、Process.Plugin から実装し、タイムベースのワンタイムパスワード (TOTP) 方式およびサービスにアクセスするために Auth.SessionManagement クラスを使用します。Salesforce によって生成された TOTP に対して、ユーザによって提供される TOTP を検証するために、プラグインの Apex クラスは、クイックレスポンス (QR) コードを使用して時間ベースのキーを生成します。
    2. QR コードをスキャンするための画面要素。
    3. トークンが有効な場合および無効な場合に処理するための決定要素。

    次の入力変数を使用して、開始時のフローの入力を行います。

    名前 値の説明
    LoginFlow_LoginType ログイン種別 (Application、OAuth、SAML など)
    LoginFlow_IpAddress ユーザの現在の IP アドレス
    LoginFlow_LoginIpAddress 認証後に変更可能な、ログイン中に使用されるユーザの IP アドレス
    LoginFlow_UserAgent ユーザのブラウザによって提供されるユーザエージェント文字列
    LoginFlow_Platform ユーザのオペレーティングシステム
    LoginFlow_Application 認証を要求するために使用されるアプリケーション
    LoginFlow_Community このログインフローがコミュニティに適用される場合の現在のコミュニティ
    LoginFlow_SessionLevel 現在のセッションセキュリティレベル (STANDARD または HIGH_ASSURANCE)
    LoginFlow_UserId ユーザの 18 文字の ID
    次の変数を使用して、フローの完了後のユーザの移動先を指定します。

    こ��らの値を読み込むには、UI 画面をログインフローに追加する必要があります。これらの値は UI 画面の更新後にログインフローで読み込まれます。ユーザがボタンをクリックしても値は読み込まれません。

    メモ

    名前 説明
    LoginFlow_FinishLocation 文字列型。ログインフローの完了後に組織のどこにユーザを移動するのかを指定します。文字列は相対パスまたは有効な Salesforce URL である必要があります。ログインプロセスでは、ユーザを組織外にリダイレクトできません。
    LoginFlow_ForceLogout ブール型。ユーザを直ちにログアウトし、そのユーザのログインフローを強制的に終了する場合はこの変数を true に設定します。
  2. フローを保存します。
  3. フローを有効化します。
  4. ログインフローの [設定] ページから、ログインフローとしてフローを指定し、プロファイルに接続します。