ใช้โดเมนที่กำหนดเองสำหรับอีเมลการตรวจสอบสิทธิ์

หากใช้โดเมนที่กำหนดเองในโปรเจ็กต์ของคุณ ให้พิจารณาใช้โดเมนที่กำหนดเองในอีเมลที่ส่งสำหรับเหตุการณ์การตรวจสอบสิทธิ์ด้วย เช่น การยืนยันอีเมล การเปลี่ยนแปลงที่อยู่ และขั้นตอนการกู้คืนรหัสผ่าน คุณกำหนดค่าโปรเจ็กต์ให้ใช้โดเมนที่กำหนดเองในช่อง From ของอีเมลและลิงก์การดำเนินการได้

เมื่อกำหนดค่าโดเมนที่กำหนดเองสำหรับอีเมลการตรวจสอบสิทธิ์ ผู้ใช้จะเห็นโดเมนเดียวกันสำหรับที่อยู่เว็บและอีเมลการจัดการผู้ใช้

การตั้งค่านี้มี 2 ขั้นตอนกว้างๆ ดังนี้

  • เพิ่มโดเมนลงในเทมเพลตอีเมลในคอนโซล Firebase
  • ยืนยันโดเมนโดยการเพิ่มระเบียน DNS ในรีจิสทรีของโดเมน

การเพิ่มโดเมนลงในเทมเพลตอีเมลของคุณ

  1. ในคอนโซล Firebase ให้เปิดหน้าเทมเพลตของส่วนการตรวจสอบสิทธิ์

  2. ดำเนินการดังนี้สำหรับเทมเพลตอีเมลแต่ละรายการ

    1. คลิกไอคอนแก้ไข ()
    2. คลิกปรับแต่งโดเมน
    3. ป้อนโดเมนที่ต้องการใช้

จากนั้นคุณจะเห็นตารางระเบียน DNS ที่จะเพิ่มลงในผู้รับจดทะเบียนโดเมนเพื่อยืนยันว่าคุณเป็นเจ้าของโดเมน

ยืนยันโดเมน

เพิ่มหรืออัปเดตระเบียน DNS แบบ TXT และ CNAME ที่ระบุในคอนโซล Firebase ขั้นตอนในการดำเนินการนี้ขึ้นอยู่กับผู้รับจดทะเบียน

คุณสามารถมีระเบียน TXT ของ v=spf1... ได้เพียงรายการเดียวสำหรับโดเมนหนึ่งๆ หากคุณต้องระบุอีเมลหลายรายการ ให้รวมอีเมลเหล่านั้นเป็นระเบียนเดียว

การยืนยันโดเมนอาจใช้เวลาถึง 24 ชั่วโมง เมื่อถูกต้องแล้ว หน้าเทมเพลตในคอนโซล Firebase จะแสดงข้อความ "การยืนยันเสร็จสมบูรณ์" สีเขียว จากนั้น คลิกปุ่มใช้โดเมนที่กำหนดเองเพื่อให้การเปลี่ยนแปลงมีผล

โปรเจ็กต์ที่มีกลุ่มผู้ใช้หลายกลุ่ม

หากคุณได้อัปเกรดเป็นการตรวจสอบสิทธิ์ Firebase ด้วย Identity Platform และเปิดใช้ผู้ใช้หลายราย คุณจะต้องอัปเดตข้อมูลเมตาของกลุ่มผู้ใช้เพื่ออนุญาตให้กลุ่มผู้ใช้รับค่าโดเมนที่กำหนดเอง เทมเพลตอีเมล และการตั้งค่า SMTP ที่กำหนดเอง ไม่เช่นนั้น ผู้ใช้จะยังได้รับอีเมลจากโดเมนเริ่มต้น แม้ว่าโดเมนที่กำหนดเองจะได้รับการยืนยันและใช้เรียบร้อยแล้ว

คุณจะตรวจสอบได้ว่ามีการเปิดใช้กลุ่มผู้ใช้หลายกลุ่มหรือไม่ด้วยการตรวจสอบ URL ที่รวมอยู่ในข้อความอีเมลการตรวจสอบสิทธิ์ หาก URL มีพารามิเตอร์ tenant คุณต้องอัปเดตข้อมูลเมตาของกลุ่มผู้ใช้โปรเจ็กต์

โดยเรียกใช้คำสั่งต่อไปนี้

curl -X PATCH -d "{'inheritance':{'emailSendingConfig': true}}" \
  -H "X-Goog-User-Project: PROJECT_ID"                          \
  -H "Authorization: Bearer $(gcloud auth print-access-token)"  \
  -H 'Content-Type:application/json'                            \
  https://identitytoolkit.googleapis.com/v2/projects/PROJECT_ID/tenants/TENANT_ID?updateMask=inheritance.emailSendingConfig