Google 致力于为黑人社区推动种族平等。查看具体举措

ตรวจสอบสิทธิ์กับ Firebase โดยไม่ระบุชื่อโดยใช้ Unity

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

ก่อนจะเริ่ม

  1. ก่อนที่คุณจะสามารถใช้ Firebase Authentication คุณต้องเพิ่ม Firebase Unity SDK (โดยเฉพาะ FirebaseAuth.unitypackage ) ให้กับโปรเจ็กต์ Unity ของคุณ

    ดูคำแนะนำโดยละเอียดสำหรับขั้นตอนการตั้งค่าเริ่มต้นเหล่านี้ใน เพิ่ม Firebase ให้กับโครงการ Unity ของคุณ

  2. หากคุณยังไม่ได้เชื่อมต่อแอปกับโปรเจ็กต์ Firebase ให้ดำเนินการจาก คอนโซล Firebase
  3. เปิดใช้งานการตรวจสอบแบบไม่ระบุชื่อ:
    1. ใน คอนโซล Firebase ให้เปิดส่วนการ ตรวจสอบสิทธิ์
    2. ในหน้า วิธีการลงชื่อเข้าใช้ ให้เปิดใช้งานวิธีการลงชื่อเข้าใช้แบบ ไม่ระบุชื่อ
    3. ไม่บังคับ : หากคุณได้อัปเกรดโปรเจ็กต์ของคุณเป็น Firebase Authentication ด้วย Identity Platform คุณสามารถเปิดใช้การล้างข้อมูลอัตโนมัติได้ เมื่อคุณเปิดใช้งานการตั้งค่านี้ บัญชีที่ไม่ระบุตัวตนที่เก่ากว่า 30 วันจะถูกลบโดยอัตโนมัติ ในโครงการที่เปิดใช้งานการล้างข้อมูลอัตโนมัติ การรับรองความถูกต้องแบบไม่ระบุตัวตนจะไม่นับรวมในขีดจำกัดการใช้งานหรือโควตาการเรียกเก็บเงินอีกต่อไป โปรดดู ที่ การล้างข้อมูลอัตโนมัติ

ตรวจสอบสิทธิ์ด้วย Firebase โดยไม่เปิดเผยตัวตน

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

คลาส FirebaseAuth เป็นเกตเวย์สำหรับการเรียก API ทั้งหมด สามารถเข้าถึงได้ผ่าน FirebaseAuth.DefaultInstance
Firebase.Auth.FirebaseAuth auth = Firebase.Auth.FirebaseAuth.DefaultInstance;
1. โทร Firebase.Auth.FirebaseAuth.SignInAnonymouslyAsync
auth.SignInAnonymouslyAsync().ContinueWith(task => {
  if (task.IsCanceled) {
    Debug.LogError("SignInAnonymouslyAsync was canceled.");
    return;
  }
  if (task.IsFaulted) {
    Debug.LogError("SignInAnonymouslyAsync encountered an error: " + task.Exception);
    return;
  }

  Firebase.Auth.FirebaseUser newUser = task.Result;
  Debug.LogFormat("User signed in successfully: {0} ({1})",
      newUser.DisplayName, newUser.UserId);
});

แปลงบัญชีที่ไม่ระบุตัวตนเป็นบัญชีถาวร

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

  1. เมื่อผู้ใช้ลงทะเบียน ให้ทำตามขั้นตอนการลงชื่อเข้าใช้สำหรับผู้ให้บริการการตรวจสอบสิทธิ์ของผู้ใช้ให้สมบูรณ์ แต่ไม่รวมการเรียกวิธีการใดวิธีหนึ่ง ตัวอย่างเช่น รับโทเค็น Google ID ของผู้ใช้ โทเค็นการเข้าถึง Facebook หรือที่อยู่อีเมลและรหัสผ่าน
  2. รับสำหรับผู้ให้บริการตรวจสอบสิทธิ์ใหม่:

  3. ส่งอ็อบเจ็กต์ไปยังวิธีการลงชื่อเข้าใช้ของผู้ใช้:

หากการโทรสำเร็จ บัญชีใหม่ของผู้ใช้จะสามารถเข้าถึงข้อมูล Firebase ของบัญชีที่ไม่ระบุตัวตนได้

ทำความสะอาดอัตโนมัติ

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

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

หากคุณต้องการดูจำนวนผู้ใช้ที่จะได้รับผลกระทบก่อนที่คุณจะเปิดใช้งานคุณลักษณะนี้ และคุณได้อัปเกรดโปรเจ็กต์ของคุณเป็น Firebase Authentication ด้วย Identity Platform คุณสามารถกรองโดย is_anon ใน Cloud Logging

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

ขณะนี้ผู้ใช้สามารถตรวจสอบสิทธิ์กับ Firebase ได้แล้ว คุณสามารถควบคุมการเข้าถึงข้อมูลในฐานข้อมูล Firebase โดยใช้กฎ ของ Firebase