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

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

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

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

  • เพิ่มโดเมนลงในเทมเพลตอีเมลในคอนโซล Firebase
  • ยืนยันโดเมนโดยเพิ่มระเบียน DNS ในผู้รับจดทะเบียนโดเมน

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

  1. ในคอนโซล Firebase ให้เปิดหน้าเทมเพลตของส่วน Authentication

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

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

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

ยืนยันโดเมน

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

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

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

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

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

คุณตรวจสอบได้ว่าเปิดใช้การใช้งานแบบหลายผู้เช่าหรือไม่โดยดู URL ที่รวมอยู่ในข้อความ Auth email หาก 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