ข้ามไปที่เนื้อหา

เริ่มต้นใช้งาน

Web login ช่วยให้ผู้ใช้สามารถล็อกอินด้วย IdP บนเว็บไซต์ต่างๆ เช่น คอมมิวนิตี้และแพลตฟอร์มบล็อกเชน ดูรายละเอียดได้ที่ IdP ที่รองรับสำหรับ web login

การใช้ web login API จะช่วยให้คุณสามารถใช้งานการล็อกอิน IdP สำหรับผู้ใช้บนเว็บไซต์ภายนอก (เช่น เว็บไซต์คอมมิวนิตี้ที่ดำเนินการโดยนักพัฒนาเกม) แทนที่จะใช้ในแอป web login API ปัจจุบันรวมเวอร์ชัน web login v1 และ v2 เวอร์ชันก่อนหน้าไว้ด้วยกัน

Warning
  • การเรียกใช้ web login API เวอร์ชัน v2 หรือ v1 ไม่ได้รับการสนับสนุนอีกต่อไป หากต้องการรับการสนับสนุนต่อเนื่อง ให้ใช้ integrated web login API
  • integrated web login API ไม่แยกแยะระหว่างเวอร์ชัน
Note

ในการใช้ web login API คุณต้องทำการตั้งค่าที่เกี่ยวข้องให้เสร็จสมบูรณ์ใน Hive console สำหรับรายละเอียด ดูได้ที่ IdP ที่รองรับสำหรับ web login ในคำแนะนำ console ภายใต้ Authentication > Login Settings


ข้อกำหนดเบื้องต้น

ส่วนนี้อธิบายข้อกำหนดเบื้องต้นตามวิธีการทำงานของ web login

มีสองวิธีหลักในการใช้ web login: ล็อกอินโดยใช้ PlayerID ของเกมเป็น identifier และ ล็อกอินโดยการสร้าง user identifier แยกต่างหาก

Web login ที่ใช้ PlayerID ของเกมเป็น identifier

วิธีการทำงานของ web login ที่ใช้ PlayerID ของเกมเป็น identifier มีดังนี้:

  • สำหรับเว็บไซต์ที่ไม่มีการผสานรวม SDK เช่น blockchain จะใช้ PlayerID เป็น user identifier สำหรับการล็อกอิน
  • เมื่อเชื่อมโยง IdP ครั้งแรก PlayerID จะถูกสร้างขึ้นโดยตรงระหว่าง web login
  • การเชื่อมโยง IdP เริ่มต้นต้องดำเนินการเฉพาะในเกมเท่านั้น มิฉะนั้นอาจเกิดความขัดแย้งของบัญชี
  • เมื่อใช้ XPLA Games Wallet หน้าจอล็อกอินจะแสดงหลังจากการยืนยัน SMS


ข้อกำหนดเบื้องต้นสำหรับ web login ที่ใช้ PlayerID ของเกมเป็น identifier มีดังนี้:

  1. สร้าง AppID ใน Console > App Center
    เพื่อใช้ web login ให้สร้าง AppID ก่อนใน App Center ของ console ดูรายละเอียดได้ที่ ลงทะเบียน AppID

  2. ตั้งค่าการล็อกอินใน Console > Authentication
    หลังจากสร้าง AppID แล้ว ให้เลือก IdP ที่จะใช้สำหรับ web login และลงทะเบียน authentication key ใน Authentication > Login Settings การล็อกอินแบบ guest ไม่รองรับสำหรับ web login
    การตั้งค่าที่จำเป็นสำหรับการลงทะเบียน authentication key มีดังนี้

    • ลงทะเบียนตัวเลือกการสมัครสมาชิก: เมื่อเลือก Hive Web Login เป็น IdP สำหรับ web login คุณสามารถตั้งค่า ตัวเลือกการสมัครสมาชิก ได้
      • หาก เปิดใช้การสมัครสมาชิก ถูกเลือก: สามารถเชื่อมโยง IdP เริ่มต้นผ่าน web login ได้ แต่อาจเกิดความขัดแย้งของบัญชี
      • หาก ปิดใช้การสมัครสมาชิก ถูกเลือก: การเชื่อมโยง IdP เริ่มต้นสามารถทำได้เฉพาะในเกมเท่านั้น
    • ลงทะเบียน Redirect URI: ลงทะเบียนที่อยู่เว็บปลายทางที่จะเปลี่ยนเส้นทางไปหลังจาก web login เสร็จสมบูรณ์ สามารถลงทะเบียนได้สูงสุด 5 ที่อยู่

      Note

      ความขัดแย้งของบัญชีเกิดขึ้นเมื่อ IdP ถูกเชื่อมโยงครั้งแรกผ่าน web login และมีการสร้าง PlayerID จากนั้นจึงพยายามเชื่อมโยง IdP เพิ่มเติมในโปรไฟล์เกมหลังจากล็อกอินด้วย Hive SDK ในกรณีนี้ เนื่องจาก PlayerID ได้ถูกสร้างขึ้นแล้วผ่าน web login ผู้ใช้จะถูกขอให้เลือกบัญชีที่จะใช้

  3. การตั้งค่า IdP console
    ลงทะเบียน Redirect URI เป็นที่อยู่โดเมน web login ใน IdP console ที่คุณจะใช้ กระบวนการนี้เป็นสิ่งที่ใช้ร่วมกันไม่ว่าจะเป็นวิธีการทำงาน web login แบบใด สำหรับรายละเอียด ดูได้ที่ ลงทะเบียน Redirect URI ใน IdP console

Web login โดยการสร้าง user identifier แยกต่างหาก

วิธีการทำงานของ web login โดยการสร้าง user identifier แยกต่างหากมีดังนี้:

  • เมื่อเชื่อมโยง IdP ครั้งแรก user identifier จะถูกสร้างขึ้นโดยผลิตภัณฑ์ เพื่อป้องกันความขัดแย้งของบัญชี
  • เนื่องจาก user identifier ถูกสร้างขึ้นโดยผลิตภัณฑ์ จึงสามารถใช้ได้ในหลายที่และไม่เกิดความขัดแย้งของบัญชี ในการเชื่อมโยง PlayerID ที่สร้างขึ้นในเกม ให้ใช้ Server API


ข้อกำหนดเบื้องต้นสำหรับ web login โดยการสร้าง user identifier แยกต่างหากมีดังนี้:

  1. สร้าง AppID ใน App Center
    เพื่อใช้ web login ให้สร้าง AppID ใน App Center ดูคำแนะนำ console ของ App Center ลงทะเบียน AppID

  2. ตั้งค่าการล็อกอินใน Console > Authentication
    หลังจากสร้าง AppID แล้ว ให้เลือก IdP เพื่อรองรับ web login และลงทะเบียน authentication key ใน Authentication > Login Settings การล็อกอินแบบ guest ไม่รองรับสำหรับ web login

    • ลงทะเบียนตัวเลือกการสมัครสมาชิก: เมื่อเลือก Hive Web Login เป็น IdP สำหรับ web login คุณสามารถตั้งค่า ตัวเลือกการสมัครสมาชิก ได้

      • หาก เปิดใช้การสมัครสมาชิก ถูกเลือก: สามารถเชื่อมโยง IdP เริ่มต้นผ่าน web login ได้
      • หาก ปิดใช้การสมัครสมาชิก ถูกเลือก: การเชื่อมโยง IdP เริ่มต้นสามารถทำได้เฉพาะในเกมเท่านั้น
    • ลงทะเบียน Redirect URI: ลงทะเบียนที่อยู่เว็บปลายทางที่จะเปลี่ยนเส้นทางไปหลังจาก web login เสร็จสมบูรณ์ สามารถลงทะเบียนได้สูงสุด 5 ที่อยู่

  3. การตั้งค่า IdP console
    ลงทะเบียน Redirect URI เป็นที่อยู่โดเมน web login ใน IdP console ที่คุณจะใช้ กระบวนการนี้เป็นสิ่งที่ใช้ร่วมกันไม่ว่าจะเป็นวิธีการทำงาน web login แบบใด สำหรับรายละเอียด ดูได้ที่ ลงทะเบียน Redirect URI ใน IdP console

ลงทะเบียน Redirect URI ใน IdP console

หลังจากเลือกประเภท web login และลงทะเบียน authentication key ใน Authentication > Login Settings คุณต้องลงทะเบียน Redirect URI เป็นที่อยู่โดเมน web login โดยตรงใน IdP console เช่น Google หรือ Apple

Google

ไปที่ Google Cloud Console สร้าง OAuth client ID ในโปรเจ็กต์ของคุณ และลงทะเบียน Redirect URI สำหรับรายละเอียด ดูได้ที่ เอกสาร Google Developers

Warning

หาก withhive.com ได้รับการลงทะเบียนโดยอัตโนมัติเป็นโดเมนที่ได้รับอนุมัติในหน้าจอ OAuth consent ของ Google Cloud Console ห้ามเพิ่ม sensitive หรือ restricted scopes Hive ไม่ได้ให้การเป็นเจ้าของโดเมนสำหรับ withhive.com

Facebook

ไปที่ Meta for Developers เพิ่มการตั้งค่าการล็อกอิน Facebook ในแอปของคุณ และลงทะเบียน Redirect URI สำหรับรายละเอียด ดูได้ที่ เอกสาร Meta Developers

Apple

ไปที่ Apple Developer Console สร้าง Services IDs และลงทะเบียน Return URLs ในการตั้งค่า Sign in with Apple สำหรับรายละเอียด ดูได้ที่ เอกสาร Apple Developer


วิธีการใช้ web login API

หลังจากทำตามข้อกำหนดเบื้องต้นข้างต้นเสร็จสิ้นแล้ว คุณสามารถใช้งาน web login ได้โดยการเรียก API ต่อไปนี้:


การใช้งาน web login API จะแตกต่างกันขึ้นอยู่กับวัตถุประสงค์ของ 'Web Login AppID'

เมื่อวัตถุประสงค์ของ 'Web Login AppID' เป็น 'Community' หรือ 'Website'

หากคุณเลือกวัตถุประสงค์ของ 'Web Login AppID' เป็น Community หรือ Website ใน Hive console ที่ App Center > AppID Management > Register Web Login AppID นักพัฒนาเกมจะใช้ Web Login API ดังนี้

  1. เรียกหน้าล็อกอิน
  2. ใช้ค่าตอบกลับของ การยืนยันผู้ใช้และการเรียกข้อมูลผู้ใช้ API โดยเฉพาะ IdP identifiers (idp_index, idp_user_id) เป็น user account identifiers และเก็บไว้ใน database ของนักพัฒนา

เหตุผลที่ใช้วิธีข้างต้นก็เพราะว่า หากคุณล็อกอินเข้า IdP ครั้งแรกบนคอมมิวนิตี้หรือเว็บไซต์แทนที่จะเป็นในเกม PlayerID ซึ่งเป็น user identifier ที่ใช้ในเกมจะไม่ถูกสร้างขึ้น การใช้ IdP identifier เป็น user account identifier แทน PlayerID จะช่วยป้องกัน ความขัดแย้งของบัญชี ได้

อย่างไรก็ตาม เมื่อผู้ใช้เข้าถึงแอปเกมและล็อกอิน PlayerID ซึ่งเป็น game user identifier จะถูกสร้างขึ้น ดังนั้นจึงสามารถใช้เป็น user account identifier ได้ โดยแยกแยะจาก PlayerID ในค่าตอบกลับของ การยืนยันและการเรียกข้อมูลผู้ใช้ API ใน user_info หรือ PlayerID ในค่าตอบกลับของ การเรียกข้อมูลผู้ใช้โดย Authentication API API

Note

ความขัดแย้งของบัญชีเกิดขึ้นในสถานการณ์ดังต่อไปนี้

  1. ล็อกอินด้วย web login เพื่อสร้าง IdP และ PlayerID เริ่มต้น
  2. หลังจากล็อกอินเข้าเกมโดยใช้ Hive SDK เชื่อมต่อการรวม IdP เพิ่มเติมในโปรไฟล์เกม
  3. เกิดความขัดแย้งของบัญชีเนื่องจาก PlayerID ได้ถูกสร้างขึ้นแล้วด้วย web login ทำให้ผู้ใช้ถูกขอให้เลือกบัญชี

วัตถุประสงค์ของการใช้ 'Web Login AppID' เป็น 'Blockchain'

ใน Hive console เมื่อเลือก 'Blockchain' เป็นวัตถุประสงค์ของ 'Web Login AppID' ใน App Center > AppID Management > Web Login AppID Registration นักพัฒนาเกมจะใช้ Web Login API ดังนี้

  1. การเรียก หน้าล็อกอิน API
  2. การเรียก การยืนยันการล็อกอินและการเรียกข้อมูลผู้ใช้ API และค่าตอบกลับ PlayerID ช่วยให้สามารถระบุบัญชีผู้ใช้ได้ (ไม่จำเป็นต้องได้รับและจัดการ identifier แยกต่างหาก เช่น IdP identifier)

ในกรณีของบล็อกเชน การเรียก หน้าล็อกอิน API และ การยืนยันการล็อกอินและการเรียกข้อมูลผู้ใช้ API จะสร้าง PlayerID ขึ้นมา จึงไม่จำเป็นต้องใช้ IdP identifier แยกต่างหากเหมือนคอมมิวนิตี้หรือเว็บไซต์