[私のドメイン] を使用したログインプロセスのカスタマイズ

学習の目的

このモジュールを完了すると、次のことができるようになります。
  • [私のドメイン] によってログインプロセスを細かく制御できるようになることを理解する。
  • ログイン名、URL、ログインページをカスタマイズする。

[私のドメイン] を使用した Salesforce 組織の URL のカスタマイズ

ユーザによる Salesforce への標準ログイン操作を微調整したいと思ったことはありませんか? たとえば、ログイン URL に会社名を追加する、ログインページにロゴを表示する、ユーザが Google のログイン情報を使用してログインできようにするといった変更です。[私のドメイン] を使用すれば、こうしたカスタマイズを行えます。

[私のドメイン] の URL

[私のドメイン] とは?

[私のドメイン] とは、Salesforce という宇宙の中に自分の帝国を作るようなものです。Salesforce ドメイン (宇宙) 内にサブドメイン (帝国) を作ることで、Salesforce をパーソナライズできるようにするのが、Salesforce Identity 機能です。

なぜこのようなことをするのでしょうか? Winter '21 より前に作成された Salesforce 組織のユーザは、Salesforce が割り当てたインスタンス URL (https://na30.salesforce.com など) 経由で組織にアクセスします。[私のドメイン] を使用すると、ユーザはパーソナライズされた簡単な方法で Salesforce にアクセスできます。意味のない https://na30.salesforce.com URL ではなく、URL を https://somethingReallycool.my.salesforce.com のようにすることができます。ここで、

  • somethingReallycool は、Salesforce ドメイン内の個人的なサブドメインである [私のドメイン] です。通常は、会社名やブランドを推進するものを示します。
  • my.salesforce.com が Salesforce ドメイン名で、略してドメインと呼びます。[私のドメイン] のログイン URL はすべてこの同じドメインに属します。
メモ

メモ

技術的にはサブドメインを作成していても、[私のドメイン] の作成と呼ばれることがあります。また、[私のドメイン] が「カスタム」ドメインと呼ばれる場合がありますが、「カスタム」は Salesforce では特定の意味を持ちます。カスタムドメイン URL の末尾は、salesforce.com ではなく独自のドメイン名 (mycompany.com など) です。この件については、別の機会にまた説明しましょう。

[私のドメイン] を設けるのは、利便性や組織のログイン操作のブランド設定だけを目的としているのではありません。ログインプロセスを細かく制御して、認証を簡素化することも目的としています。実際 Salesforce では、次の場合に [私のドメイン] を設定する必要があります。

  • 同じブラウザを使用して複数の Salesforce で作業する
  • 外部 ID ベンダを使用したシングルサインオン (SSO) を設定する
  • ユーザがソーシャルアカウントのログイン情報を使用して Salesforce 組織にログインできるように、認証プロバイダ (Google や Facebook など) を設定する
  • Lightning コンポーネントタブ、Lightning ページ、Lightning アプリケーションビルダー、スタンドアロンアプリケーションで Lightning コンポーネントを使用する

[私のドメイン] を使用することは非常に重要であるため、Winter '21 以降に作成されたすべての本番組織と Developer Edition 組織はデフォルトで 1 つ取得します。ただし、まだ取得していないくても心配はいりません。簡単に設定することができます。次の動画で [私のドメイン] を選択してリリースする方法の概要をご覧ください。

私のドメインと Trailhead Playground

動画の Trailhead Playground の部分をご覧になりましたか? Trailhead Playground でハンズオン Challenge を始める場合に最初にするのが Trailhead Playground の作成です。そして、この Playground には [私のドメイン] があります。ブラウザのアドレスバーで、Playground の名前を見てください (実はこれが [私のドメイン] の名前です)。Playground の [私のドメイン] の名前はすべて、先頭がかわいい動物の名前と、一意性を確保するための一定の乱数になっています。[私のドメイン] の名前の末尾は -dev-ed で、[私のドメイン] が Salesforce Developer Edition 組織用であることを意味します。

この Trailhead Playground の creative-raccoon-b6c0h0-dev-ed という [私のドメイン] の名前は、Salesforce lightning.force.com ドメイン内にあるサブドメインです。

Trailhead Playground の名前がブラウザのアドレスバーに表示されます。

Trailhead Playground についての詳細は、「Trailhead Playground Management (Trailhead Playground 管理)」を参照してください。

Developer Edition 組織へのサインアップ

このモジュールでは、組織に [私のドメイン] サブドメインがない場合は作成します。けれども、ここに落とし穴が潜んでいます。サブドメインの中にサブドメインを作成することはできません。ですから Trailhead Playground は使用できません。そこで、Salesforce Developer Edition の本番組織にサインアップします。

  1. 無料の Developer Edition 組織にサインアップします。
  2. フォームに記入します。
    1. [メール] には、有効なメールアドレスを入力します。
    2. [ユーザ名] には、メールアドレス形式の一意のユーザ名を入力します (有効なメールアカウントである必要はなく、yourname@test.com などを使用してください)。
  3. フォームに入力したら [サインアップ] をクリックします。確認メッセージが表示されます。
  4. アクティベーションメールを受信したら (数分かかる場合があります)、そのメールを開いて [Verify Account (アカウントを確認)] をクリックします。
  5. パスワードと確認用の質問を設定して、登録を完了します。ヒント: 後でアクセスしやすいように、自分のユーザ名、パスワード、ログイン URL をメモしてください。
  6. Developer Edition にログインした状態になります。

新しい Developer Edition 組織を Trailhead に接続します。

  1. Trailhead アカウントにログインしていることを確認します。
  2. このページの最下部にある「Challenge」セクションで Playground 名をクリックし、[組織を接続] をクリックします。
  3. ログイン画面で、設定したばかりの Developer Edition のユーザ名とパスワードを入力します。
  4. [アクセスを許可しますか?] 画面で [許可] をクリックします。
  5. [この組織をハンズオンの Challenge 用に保存しますか?] 画面で [はい] をクリックします。保存します。
再び Challenge ページにリダイレクトされ、新しい Developer Edition を使用して、このバッジを獲得できます。

[私のドメイン] の作成

Developer Edition 組織が Winter '21 リリースより前に作成された場合、アドレスバーを見ると、新しい組織ではインスタンス URL (https://na30.lightning.force.com など) が使用されていることがわかります。(新しい Developer Edition 組織を作成したばかりの場合、[私のドメイン] はすでに有効になっています。)

確認したら、そのインスタンス URL を各自のサブドメインに置き換えることができます。 

次のシナリオを考えてみましょう。あなたは Jedeye Technologies 社の Salesforce システム管理者であるとします。最高セキュリティ責任者は、ユーザが Google のログイン情報を使用して組織に安全にログインできるようにするという年次目標を掲げています。この目標に取り組むためには、まず [私のドメイン] で Salesforce サブドメインを作成する必要があります。では、その設定から始めましょう。

この例では、jedeye.tech を使用します。会社名にするのが間違いのない選択です。本番組織用のサブドメインを作成するときは、確定する前に関係者と協力して名前を決定します。適切な役員から承認を得たら、先に進みます。

  1. [設定] から、[クイック検索] ボックスに「私のドメイン」と入力し、[私のドメイン] を選択します。
  2. サブドメインの名前を入力します。面白味のある、一意の名前にします。カスタムドメイン名を入力ここで、[私のドメイン] の名前が jedeye-tech であることがわかります (1)。ドメイン名の残りの部分は Salesforce が指定します (2)。Developer Edition 組織を使用しているため、ドメイン名は -dev-ed.lightning.force.com になります。本番組織には my.salesforce.com サフィックスが追加されます。

    メモ: 「私のドメインのステップ 1」ではなく、「私のドメインの設定」と表示されている場合、組織にはすでにリリース済みの [私のドメイン] があります。これはおそらく、その組織が Winter '21 以降に作成されたためです。本番組織で [私のドメイン] の名前を変更するには、[私のドメインの設定] で [編集] をクリックします。ただし、Developer Edition 組織では [私のドメイン] の名前は変更できないため、「リリース後: [私のドメイン] のポリシーの設定」に進んでください。

  3. [使用可能か調べる] をクリックします。Salesforce が、この [私のドメイン] がすでに使用されているかどうかをチェックします。[私のドメイン] の利用規約の同意とカスタムドメインの登録
  4. 選択可能の表示が出たら (3)、[ドメインの登録] をクリックします (4)。
  5. プロセスが完了したことを知らせるメールが届くまで待ちます。バックグラウンドで Salesforce が組織の [私のドメイン] を用意し、ドメイン名レジストリを更新します。

[私のドメイン] のテストとリリース

アクティベーションメールは届きましたか? 「Salesforce ドメインのテスト準備完了」というような件名のメールを探します。組織の [私のドメイン] の設定を終了してユーザにロールアウトしましょう。

新しい [私のドメイン] へのリンクが記載されたメールメッセージ

  1. 受信したメールのリンクをクリックして、私のドメインウィザードに戻ります。
  2. このリンクをクリックすると、Salesforce 組織に移動します。ブラウザのアドレスバーの URL に、新しい [私のドメイン] の名前が表示されます。カスタムドメイン URLこの時点でこの URL を使用しているのは、あなただけです。ユーザにサブドメインをロールアウトする前に、組織内のすべてのリンクがサブドメイン URL につながることを確認する必要があります。

    つながりませんか? Salesforce のシステム管理者がカスタムボタンや Visualforce ページを追加するなどして組織をカスタマイズすると、組織がハードコード化された参照が含まれることがあります。ハードコード化された参照とは、インスタンス名を含むリンクです (https://na99.salesforce.com など)。組織はカスタマイズしていないため、組織に不完全な URL がないことはわかっています。作業を続けましょう。けれども、本番組織に [私のドメイン] を設定する場合は、不完全な URL の詳細を確認することができます。Salesforce ヘルプの KB 記事「ハードコード化された参照の更新」を検索してください。

  3. [ログイン] をクリックして、[私のドメイン] の設定を続けます。組織にサインアップしたときに使用したユーザ名とパスワードを入力します。
  4. リンクのテストを完了したとします。いよいよ次は、組織のすべてのユーザが使用できる [私のドメイン] を作成します。
  5. [ユーザにリリース] をクリックして、[OK] をクリックします。[私のドメイン] をリリースすると、組織全体に新しい URL がロールアウトされます。これで、すべてのユーザのブラウザのアドレスバーに [私のドメイン] の URL が表示されます。
    メモ: このステップは、特にこのモジュールの最中に中断された場合などに見過ごされることが少なくありません。中断していた場合は、まず [私のドメイン] に戻ります。[設定] から、[クイック検索] ボックスに「私のドメイン」と入力し、[私のドメイン] を選択します。私のドメインウィザードの中断したステップが表示されます。まだステップ 3 にいる場合は、[ユーザにリリース] をクリックします。
  6. [OK] をクリックします。

[私のドメイン] がリリースされ、ページには他の設定オプションが表示されます。設定を続けましょう。次はログインポリシーを設定します。

リリース後: [私のドメイン] のポリシーの設定

全ユーザに [私のドメイン] をリリースすると、[私のドメイン] の [設定] ページに新しいセクションが表示されることに気が付きましたか? このセクションを [私のドメインの設定] といい、[私のドメイン] の使用をある程度細かく制御できます。詳しく見てみましょう。
  1. [私のドメイン] ページが表示されない場合は、[設定] から、[クイック検索] ボックスに「私のドメイン」と入力し、[私のドメイン] を選択します。
  2. [私のドメインの設定] で、[編集] をクリックします。ユーザが、[私のドメイン] ではなく、従来の URL からログインしようとした場合にどのように対処するかを制御するログインポリシーを設定します。[私のドメイン] のログイン設定
  3. ここでは、デフォルトの設定のままにしますが、オプションを説明しておきます。
    [ログインが必要] では、ユーザに [私のドメイン] のログインページを使用してログインすることを義務付けます。ユーザが https://login.salesforce.com/ という汎用 URL を使用してログインすることはできません。
    [リダイレクトポリシー] では、次の 3 つから選択できます。つまり誰かが https://na30.salesforce.com のようなブックマークを選択すると、その人を [私のドメイン] 相当にリダイレクトします。
    • ドメイン内の同じページにリダイレクト。ユーザは従来どおり URL からログインすることも、[私のドメイン] のログイン URL を使用してログインすることもできます。このオプションは便利ですが、以前と何も変わっていないように思えます。
    • ドメイン内の同じページに警告付きでリダイレクト。ユーザがログインしたときに、[私のドメイン] のログイン URL を使用するように伝えますが、そのまま組織にリダイレクトします。このオプションは、[私のドメイン] をリリース後、ユーザが組織の新しいログイン URL に移行するまでの数日間使用する場合に適しています。
    • リダイレクトしない。ユーザが組織にアクセスするときに [私のドメイン] のログイン URL を使用することを義務付けます。サポートはありません。ユーザが [私のドメイン] のログイン URL の使用に移行したと想定します。まだ移行していない場合、インスタンス URL を使用、または login.salesforce.com からログインしようとすると、エラーが発生します。
  4. [[私のドメイン] の名前を変更] では、たとえば会社の名前やブランドが変更された場合に [私のドメイン] の名前を変更できます。

ログインページのカスタマイズおよびリリース

[私のドメイン] を作成し、ログインポリシーを設定しました。これで、ログインページをカスタマイズする準備が整いました。ログインページにブランドを設定して、ユーザがブラウザバーの URL を目を凝らして見なくてもあなたのサイトであることがわかるようにします。

ログインページにブランド設定して、会社のロゴを追加したり、背景を変更したり、右側を独自の写真やメッセージに変更したりできます。この領域は、ユーザがログイン時に確認できるようにお知らせを表示するのに便利です。
カスタムログインページ
  1. [私のドメイン] ページが表示されない場合は、[設定] から、[クイック検索] ボックスに「私のドメイン」と入力し、[私のドメイン] を選択します。
  2. [認証設定] で [編集] をクリックします。要求されたら、新しいタブで [認証設定] を開くことを許可します。ログインページの設定
  3. ロゴファイルとして、会社のロゴの画像をアップロードします。ロゴはログインページの左上に表示されます。画像には、最大 100 KB の .jpg、.gif、.png ファイルを使用できます。最大画像サイズは、250 (高さ) × 125 (幅) ピクセルです。
  4. [背景色] で、ログインページの背景色を変更します。16 進数の色コードを入力するか、カラーピッカー カラーピッカーから色を選択 をクリックします。
  5. ログインページの右側のコンテンツを更新します。コンテンツは、ページの約半分の大きさに調整されるように設計されています。本番組織で、SSL 暗号化と https:// プレフィックスを使用した URL でホストされるファイルの URL を入力します。ここでは、当社のストック写真 (https://mydomain-sample.herokuapp.com) の URL を入力します。
  6. この時点では [ログインページ種別] を変更しないでください。このオプションは、ユーザのログイン方法を変更するときに関わってきます。
  7. [保存] をクリックします。
  8. ログアウトしてから、もう一度ログインを試みます。新しいログインページが表示されます。
サンプルログインページ

無事完了!

おめでとうございます。[私のドメイン] を使用して組織の URL をカスタマイズしました。ログインページをカスタマイズして会社のブランドを反映させることができました。ユーザが Google のログイン情報を使用してログインできるようにするという年次目標に近づき、最高セキュリティ責任者も喜ぶものと思われます。

リソース