Salesforce からメールを送信するためのメールアドレス検証

公開日: 2023.08.24

Share:

この記事で学べること

  • Salesforceからメールを送信するために必要となるメールアドレス検証に関する機能概要メールを送信するた
  • メールアドレスの検証方法

この記事を読んでいただきたい方

本記事は、下記の条件に合致するSalesforce 組織の管理者様向けの情報となっています。

  • Salesforce 組織でシングルサインオンを利用している
  • Salesforce 組織でメール送信を行う業務がある

Salesforce からメールを送信するためのメールアドレス検証

そのため、現在の Salesforce 組織ではメールアドレスが未検証であるユーザのメールアドレスからは、メールを送信することができない動作となっています。

Spring’23 時点で、この動作はシングルサインオン(SSO)をご利用中の Salesforce 組織には適用されていませんでした。しかし Spring ’24 のリリースでは、 SSO をご利用中の Salesforce 組織にも本動作が適用される予定となっています。

つきまして、本記事では機能説明や Spring ’24 のリリースまでにお客様にご確認いただきたい情報を纏めておりますので、内容のご確認をお願い致します。

メールアドレスの検証とは

メールアドレスの検証とは、Salesforceからユーザへ送信されるメールアドレス検証のためのメールに記載されているURLをユーザ自身がクリックすることで、そのメールアドレスが正しいものであることを確認するための機能です。以下にメールアドレス検証用メールのサンプルをご紹介します。メール本文に記載されているURLをユーザがクリックすることでメールアドレスの検証が完了します。

image.png
  • 備考
    • 送信者/件名/本文はメールアドレス検証用メールの送信方法によって変わります。

このようなメールアドレス検証のための機能が実装されていましたが、その機能に関連してこれまでのメジャーリリースで以下の更新がありました。

  • Spring’22
    • メールアドレス検証を終えていないユーザがメール送信機能を使用した際に、メールアドレスの検証を促すメールが自動で送信される(Spring ‘23 リリースまでの間、ユーザに対して各リリースで 1 回だけ送信)。
  • Spring’23
    • メールアドレス検証を終えていないユーザは、メールアドレスの検証を終えるまで、メール送信ができなくなる
image.png

上記の通り、メールアドレス未検証であるユーザによるメール送信は制限されるという動作が現状の Salesforce 組織の動作となります。この動作は SSO をご利用中の Salesforce 組織に関しては適用範囲外でした。

しかし、Spring '24 のリリースでは本動作が SSO をご利用中の組織にも適用される予定となりました。尚、一部のユーザだけが SSO を利用していたとしても、その組織は SSO を利用中とみなされ、本動作が Spring ’24 で適用される予定です。

image.png

メールアドレスが未検証であるユーザの確認方法

SSO 組織であっても、メールアドレスが未検証のユーザはメール送信ができなくなる予定であることを説明いたしましたが、それでは管理者はどのようにしてメールアドレス未検証のユーザを確認したらいいのでしょう。

まず最初にレポートを利用する方法をご紹介します。

メールアドレスの検証状況はユーザの「ユーザの検証済みメール」項目で確認することができます。[ ID 検証方法] のレポートタイプを使用することで、該当のレポートを作成することができます。「ユーザの検証済みメール」がOFFとなっている場合、そのユーザはメールアドレス未検証です。

image.png

「ユーザの検証済みメール」項目はユーザのリストビューでも確認することができます。

ユーザのリストビューに「ユーザの検証済みメール」項目を追加することで、リストビューからメールアドレスの検証状況を確認することができます。

image.png

またAPI等で「TwoFactorMethodsInfo」オブジェクトを参照することでもメールアドレスの検証状況を確認することができます。TwoFactorMethodsInfo オブジェクトの [HasUserVerifiedEmailAddress] 項目にメールアドレスの検証状況が格納されており、メールアドレスが未検証であるユーザの場合、[HasUserVerifiedEmailAddress] 項目が False になります。

尚、TwoFactorMethodsInfo オブジェクトには全てのユーザ(内部ユーザや外部ユーザ)が含まれます。確認したいユーザを内部ユーザのみに絞り込む場合は、「User」オブジェクトも併用します。確認対象のユーザを内部ユーザに絞り込む場合の例は以下となります。

  • メールアドレス未検証ユーザの抽出
    TwoFactorMethodsInfo オブジェクトから、 「HasUserVerifiedEmailAddress」 が「False」であるレコードを抽出。

  • 内部ユーザの抽出
    Userオブジェクトから、「UserType」が「Standard」であるレコードを抽出。

  • メールアドレス未検証ユーザかつ内部ユーザの抽出
    TwoFactorMethodsInfo オブジェクトのレコードとUserオブジェクトのレコードを、ユーザIDの値を利用して突合し、TwoFactorMethodsInfo オブジェクトから抽出したユーザを、Userオブジェクトから抽出したユーザに含まれるものに絞り込む。

*さらにUserオブジェクトの [IsActive] 項目を使用することで有効化されているユーザのみに絞り込むこともできます。

レポートやリストビュー、TwoFactorMethodsInfoオブジェクトを使用してメールアドレス未検証のユーザを確認することができたら、それらのユーザに対してメールアドレス検証用のメールを送信する方法を検討します。

メールアドレス検証用のメール方法

メールアドレスを検証するためには、Salesforce 組織から送信される検証用メールに記載されているURLをユーザがクリックする必要があります。Salesforce 組織からユーザに対して検証用メールを送信する方法は以下の通りです。

  • 管理者による検証用メールの送信
    (1)ユーザレコードを個別に開き、検証用メールを送信
    (2)Apex メソッドを使用して、検証用メールを送信

  • ユーザ自身による検証用メールの送信
    (3)[高度なユーザの詳細] ページから、検証用メールを送信

上記の通り、

*メールアドレス変更やパスワードリセットを実施した時にユーザに送信されるメールのURLをクリックすることでも、メールアドレスは検証されますが、本記事ではメールアドレス検証のみを目的としたメール送信方法をご紹介します。

(1)管理者がユーザレコードを個別に開き、検証用メールを送信


メールアドレス未検証のユーザのユーザレコードを確認すると、メール項目に「検証」と表示されています。

「検証」をクリックします。

image.png

対象のユーザは検証用メールを受信します。メールに記載されているURLをクリックして、メールアドレスの検証を進めます。

(有効期限は72時間です)

image.png

ユーザのユーザレコードを確認すると、メール項目に表示されていた「検証」が「検証済み」に変わります。

image.png

(2)管理者がApex メソッドを使用して、検証用メールを送信

Apexメソッド「System.UserManagement.sendAsyncEmailConfirmation」を使用することで、管理者が一括で検証用メールをユーザに送信することができます。

image.png

[使用手順]

  • 検証用メールを送信する対象ユーザ(ユーザID)のリストを準備する
  • Apexメソッド sendAsyncEmailConfirmation の userId パラメータに対象ユーザのユーザIDを指定する
    実行例:System.UserManagement.sendAsyncEmailConfirmation(<userId>, null, null, null);

[多数のユーザに展開する場合の推奨フロー]

  • Sandbox組織で事前に動作検証を行う (機能評価)
  • 本番組織で動作確認のために少数のユーザに対して検証を行う (パイロット実施/フィードバック収集/手順の確立)
  • 検証用メール送信対象のユーザに対して実施内容を事前に告知する(主旨、送信日時、メールの内容、対応手順等)
  • 本番組織で段階的にユーザに展開する (一括で実施しない)
  • リストビューやレポートを用いて、対象ユーザのメールアドレスが検証済みになっていることを確認する
  • 検証を行わなかったユーザに対してフォローアップを行う

[留意点]

メールサービスでは同時に大量のメールを受信した場合にスパムと認識してメールをブロックするものがあります。

お客様にてご利用いただいているメールサービスにおける制限を事前にご確認いただき、もし対象ユーザ数が多い場合は、検証用メールを一度に送信するユーザ数や頻度を慎重にご検討ください。

(3)対象ユーザ自身が[高度なユーザの詳細] ページを開き、検証用メールを送信

メールアドレス検証用メールの送信は、対象ユーザ自身が行うことも可能です。

画面右上のユーザアイコンから「設定」をクリックします。

image.png

「高度なユーザの詳細」ページで、「メール」項目に表示されている「検証」をクリックします。

image.png

ユーザは検証用メールを受信します。メールに記載されているURLをクリックして、メールアドレスの検証を進めます。(有効期限は72時間です)

image.png

「高度なユーザの詳細」ページで「メール」項目を確認すると、メール項目に表示されていた「検証」が「検証済み」に変わります。

image.png

まとめ

  • メールアドレス検証を終えていないユーザは、メールアドレスの検証を終えるまで、Salesforce 組織からメールを送信することができません。
  • この動作は Spring’24 のリリースで、を使用している組織にも適用される予定です。
  • メールアドレス未検証、かつSalesforce組織上でメール送信を行う必要があるユーザについては、メールアドレスの検証を

参考情報

公開日: 2023.08.24

Share:

このカテゴリの人気記事

Salesforce活用に役立つメルマガ登録

  • 私は、個人情報保護基本方針プライバシーに関する声明個人情報利用についての通知に同意します。 特に、プライバシーに関する声明で定めるとおり、情報のホスティングと処理を目的として私の個人データをアメリカ合衆国を含む国外に転送することを許可します。詳細私は、海外では日本の法律と同等のデータ保護法が整備されていない可能性があることも理解しています。詳細はこちらでご確認ください

  • 私は、Salesforce の製品、サービス、イベントに関するマーケティング情報の受け取りを希望します。私は、当該マーケティング情報の受け取りを私がいつでも停止できることを理解しています。