เกี่ยวกับการยืนยันอีเมล

เอกสารนี้อธิบายการใช้ Credential Manager เพื่อรับอีเมลที่ได้รับการยืนยันด้วยการเข้ารหัสลับจากอุปกรณ์ของผู้ใช้ กระบวนการนี้ช่วยให้ผู้ใช้แอปไม่ต้องยืนยันอีเมลด้วยรหัสผ่านแบบใช้ครั้งเดียว (OTP) หรือ Magic Link

เอกสารนี้อธิบายถึงหัวข้อต่อไปนี้

คู่มือนี้จะถือว่าคุณคุ้นเคยกับแนวคิดต่อไปนี้แล้ว

ความเข้ากันได้กับ Android

ฟีเจอร์นี้ใช้ได้ในอุปกรณ์เคลื่อนที่ แท็บเล็ต และอุปกรณ์แบบพับได้ที่ใช้ Android 9 (ระดับ API 28) ขึ้นไป เวอร์ชันขั้นต่ำของบริการ Google Play (GMS) ที่จำเป็นคือ 25.49.x

ประสบการณ์ของผู้ใช้

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

ขั้นตอนการยืนยัน

ประสบการณ์ของผู้ใช้ในการแชร์อีเมลที่ยืนยันแล้วจะเป็นดังนี้

  1. ผู้ใช้โฟกัสที่ช่องป้อนข้อมูลหรือแตะปุ่มที่เรียกใช้ Credential Manager API คุณยังเรียกใช้ API ในการโหลดหน้าจอของแอปได้ด้วย ทั้งนี้ขึ้นอยู่กับการออกแบบหน้าจอ
  2. Bottom Sheet จะปรากฏขึ้นเพื่อแสดงข้อมูลที่จะแชร์กับแอป หากไม่มีข้อมูลในอุปกรณ์นั้น ผู้ใช้จะเห็นข้อความแสดงข้อผิดพลาดทั่วไป
  3. หลังจากผู้ใช้แตะยอมรับและดำเนินการต่อ ให้แสดงข้อความว่าสำเร็จหรือล้มเหลว
  4. หมายเหตุ: หากอีเมลยืนยันที่คุณได้รับไม่ตรงกับที่คาดไว้ ให้แจ้งผู้ใช้เกี่ยวกับความไม่ตรงกันดังกล่าว และขอให้ผู้ใช้ลองอีกครั้งด้วยข้อมูลเข้าสู่ระบบอื่น หรือระบุวิธีการยืนยันอื่น เช่น ผ่าน OTP
  5. (ไม่บังคับ, แนะนำ) หากผู้ใช้ลงชื่อสมัครใช้บริการของคุณ คุณควรแจ้งให้ผู้ใช้สร้างพาสคีย์เพื่อให้ลงชื่อเข้าใช้ในภายหลังได้ง่ายขึ้น
  6. หมายเหตุ: กระบวนการยืนยันอีเมลจะไม่ทริกเกอร์การสร้างพาสคีย์โดยอัตโนมัติ อย่างไรก็ตาม ขอแนะนำอย่างยิ่งให้ระบุขั้นตอนการสร้างพาสคีย์ พาสคีย์ช่วยให้ผู้ใช้ลงชื่อเข้าใช้ได้ง่ายและปลอดภัยยิ่งขึ้น ทั้งยังช่วยลดความจำเป็นในการโต้ตอบด้วยชื่อผู้ใช้และรหัสผ่านแบบเดิม

รวมขั้นตอนหลักและขั้นตอนสำรอง

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

  • ตัวเลือกการยืนยันหลัก: ช่องอีเมลหรือปุ่มเพื่อเรียกใช้ขั้นตอน Credential Manager API สำหรับการยืนยันอย่างรวดเร็ว
  • ตัวเลือกการยืนยันอื่นๆ: ลิงก์หรือปุ่มสำหรับให้ผู้ใช้ "ยืนยันด้วยวิธีอื่น" หรือ "ตัวเลือกอื่นๆ" สำหรับการป้อนอีเมลด้วยตนเองในกรณีที่เกิดข้อผิดพลาด เช่น ไม่มีข้อมูลในอุปกรณ์ หรืออีเมลที่ดึงมาไม่ตรงกับอีเมลที่คาดไว้ ซึ่งจะช่วยให้ผู้ใช้ลองยืนยันด้วยข้อมูลเข้าสู่ระบบอื่นหรือโดยการระบุ OTP ด้วยตนเองได้

กรณีการใช้งาน

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

ลงชื่อสมัครใช้

ผู้ใช้จะสร้างบัญชีด้วยอีเมลที่ยืนยันแล้วได้ทันทีโดยไม่ต้องมีขั้นตอนการยืนยันแยกต่างหาก แสดงข้อความแจ้งให้ผู้ใช้เพิ่มพาสคีย์ (ไม่บังคับ) หากผู้ใช้เลือกเพิ่มพาสคีย์ ให้เรียกใช้ขั้นตอนการสร้างพาสคีย์

รูปภาพแสดง UI ของเอกสารรับรองดิจิทัลใน Credential Manager
รูปที่ 1 การยืนยันอีเมลระหว่างการลงชื่อสมัครใช้

การกู้คืนบัญชี

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

รูปภาพแสดง UI ของเอกสารรับรองดิจิทัลใน Credential Manager
รูปที่ 2 การยืนยันอีเมลระหว่างการกู้คืนบัญชี

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

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

รูปภาพแสดง UI ของเอกสารรับรองดิจิทัลใน Credential Manager
รูปที่ 3 การยืนยันอีเมลระหว่างการตรวจสอบสิทธิ์อีกครั้ง

บัญชีที่รองรับ

การยืนยันอีเมลผ่าน Credential Manager รองรับเฉพาะการยืนยันบัญชี Google สำหรับผู้ใช้ทั่วไปเท่านั้น ระบบไม่รองรับบัญชี Workspace และบัญชีที่มีการควบคุมดูแล

บัญชี Google สำหรับผู้ใช้ทั่วไปสามารถสร้างได้ด้วยอีเมลจากผู้ให้บริการรายใดก็ได้ ไม่จำเป็นต้องเป็น @gmail.com อย่างไรก็ตาม Google จะยืนยันบัญชีเหล่านี้แตกต่างกัน ดังนี้

  • สำหรับบัญชี @gmail.com: Google เป็นแหล่งที่มาที่เชื่อถือได้ และอีเมลเป็นที่ทราบกันดีว่าได้รับการยืนยันแล้ว
  • สำหรับบัญชีที่ไม่ใช่ @gmail.com: Google ไม่ใช่แหล่งข้อมูลที่เชื่อถือได้สำหรับอีเมลเหล่านี้ในระยะยาว แม้ว่า Google จะยืนยันอีเมลเมื่อสร้างบัญชี แต่การเป็นเจ้าของอีเมลนั้นอาจเปลี่ยนแปลงได้เมื่อเวลาผ่านไป ดังนั้น สำหรับอีเมลที่ไม่ใช่ @gmail.com คุณควรพิจารณาขั้นตอนการยืนยันเพิ่มเติม เช่น การส่ง OTP เพื่อให้แน่ใจว่าผู้ใช้ยังคงมีสิทธิ์เข้าถึงบัญชีอีเมล

ดูข้อมูลเพิ่มเติมเกี่ยวกับความหมายของการยืนยันได้ที่เอกสารรับรองดิจิทัล

หมายเหตุ: นอกเหนือจากข้อมูลอีเมลของผู้ใช้แล้ว คุณยังขอช่องอื่นๆ ที่ยังไม่ได้รับการยืนยันได้ เช่น ชื่อ นามสกุล ชื่อ และรูปโปรไฟล์ของบัญชี Google ของผู้ใช้ อย่างไรก็ตาม Google จะยืนยันเฉพาะอีเมลเท่านั้น

สำหรับการยืนยันหมายเลขโทรศัพท์ โปรดดูหัวข้อยืนยันหมายเลขโทรศัพท์ด้วยข้อมูลเข้าสู่ระบบดิจิทัล สำหรับโซลูชัน Firebase โปรดดูการยืนยันหมายเลขโทรศัพท์ของ Firebase

ความถูกต้องและความใหม่

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

ระบบจะสร้างลายเซ็น Key Binding (kb) ณ เวลาที่แชร์โดยรวม Nonce ไว้ด้วย เพื่อช่วยรับรองความถูกต้อง

หากอุปกรณ์ออฟไลน์หรือมีการนำบัญชีออก กระบวนการจะล้มเหลวแทนที่จะให้ VC ที่หมดอายุหรือ VC สำหรับบัญชี Google ที่ไม่ได้ใช้งาน

ความสามารถในการส่งอีเมล

แม้ว่ากระบวนการนี้จะยืนยันความถูกต้องตามกฎหมายของบัญชี แต่ก็ไม่ได้รับประกันการส่งไปยังกล่องจดหมาย (เช่น อีเมลอาจถูกเปลี่ยนเส้นทางไปยังจดหมายขยะ) OTP ยังคงเป็นวิธีที่แน่นอนในการยืนยันความสามารถในการส่งอีเมล

การเปรียบเทียบกับฟีเจอร์ลงชื่อเข้าใช้ด้วย Google

แม้ว่าทั้งโซลูชันข้อมูลเข้าสู่ระบบดิจิทัลและลงชื่อเข้าใช้ด้วย Google จะมีอีเมลที่ยืนยันแล้ว แต่โฟลว์ผู้ใช้และกรณีการใช้งานจะแตกต่างกัน ดังนี้

  • กรณีการใช้งาน: ขั้นตอนการยืนยันอีเมลของ Credential Manager ไม่ได้ใช้เฉพาะในกรณีการใช้งานการลงชื่อสมัครใช้หรือการลงชื่อเข้าใช้เท่านั้น แต่สามารถใช้ในกรณีการใช้งานใดก็ได้ที่เกี่ยวข้องกับการดึงข้อมูลอีเมลที่ยืนยันแล้ว ซึ่งอาจรวมถึงการกู้คืนบัญชีด้วย
  • การลงทะเบียน: ขั้นตอนของ Credential Manager ไม่จำเป็นต้องลงทะเบียนกับ Google ซึ่งต่างจากการลงชื่อเข้าใช้ด้วย Google
  • การรองรับแพลตฟอร์ม: ขั้นตอนของ Credential Manager เป็นโซลูชันสำหรับ Android เท่านั้น

  • ขอบเขต: Digital Credentials API มีไว้เพื่อดึงข้อมูลแอตทริบิวต์ข้อมูลระบุตัวตนที่ยืนยันแล้วเท่านั้น ซึ่งต่างจากฟีเจอร์ลงชื่อเข้าใช้ด้วย Google ที่สามารถใช้ OAuth 2.0 เพื่อขอสิทธิ์เข้าถึงข้อมูลผู้ใช้ (เช่น ปฏิทินหรือไดรฟ์ผ่านขอบเขต) และไม่สามารถใช้เพื่อขอขอบเขตการให้สิทธิ์เพิ่มเติมได้

ขั้นตอนถัดไป

หากต้องการใช้ฟีเจอร์นี้ในแอป โปรดดูคู่มือการติดตั้งใช้งาน