การให้สิทธิ์สำหรับเว็บ

เว็บแอปต้องได้รับโทเค็นเพื่อการเข้าถึงจึงจะเรียกใช้ Google API ได้อย่างปลอดภัย

ไลบรารี JavaScript ของ Google Identity Services รองรับทั้งการตรวจสอบสิทธิ์สำหรับการลงชื่อเข้าใช้ของผู้ใช้และการให้สิทธิ์เพื่อรับโทเค็นเพื่อการเข้าถึงเพื่อใช้กับ Google API ไลบรารีนี้มีจุดประสงค์เพื่อใช้ในเบราว์เซอร์เท่านั้น

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

คำแนะนำเหล่านี้จะครอบคลุมหัวข้อการให้สิทธิ์และการแชร์ข้อมูล

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

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

ไลบรารีนี้ไม่ได้มีไว้สำหรับใช้กับเฟรมเวิร์ก JavaScript ฝั่งเซิร์ฟเวอร์ เช่น Node.js แต่ให้ใช้ไลบรารีไคลเอ็นต์ Node.js ของ Google แทน

มีอะไรเปลี่ยนแปลงบ้าง

สำหรับผู้ใช้ ไลบรารี Google Identity Services จะปรับปรุงความสามารถในการใช้งานมากมายจากไลบรารี JavaScript รุ่นก่อนหน้า ได้แก่

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

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

  • การตรวจสอบสิทธิ์ของผู้ใช้สำหรับการลงชื่อเข้าใช้และการให้สิทธิ์ที่ใช้เพื่อรับโทเค็นการเข้าถึงเพื่อเรียก Google API เป็นออบเจ็กต์และเมธอดของ JavaScript 2 ชุดที่แยกจากกันและแตกต่างกัน ซึ่งช่วยลดความซับซ้อนและรายละเอียดที่ต้องใช้ในการตรวจสอบสิทธิ์หรือการให้สิทธิ์
  • ตอนนี้ไลบรารี JavaScript รายการเดียวรองรับทั้ง 2 รายการต่อไปนี้
    • ขั้นตอนโดยนัยของ OAuth 2.0 ที่ใช้รับโทเค็นเพื่อการเข้าถึงสำหรับใช้ในเบราว์เซอร์
    • ขั้นตอนรหัสการให้สิทธิ์ OAuth 2.0 หรือที่เรียกว่าการเข้าถึงแบบออฟไลน์ และเริ่มส่งรหัสการให้สิทธิ์ไปยังแพลตฟอร์มแบ็กเอนด์อย่างปลอดภัย ซึ่งคุณจะแลกเปลี่ยนกับโทเค็นเพื่อการเข้าถึงและรีเฟรชโทเค็นได้ ก่อนหน้านี้ ขั้นตอนเหล่านี้ใช้ได้โดยใช้ไลบรารีหลายรายการและผ่านการเรียกโดยตรงไปยังปลายทาง OAuth 2.0 เท่านั้น ไลบรารีเดียวช่วยลดเวลาและความพยายามในการผสานรวม แทนที่จะรวมและเรียนรู้ไลบรารีหลายรายการและแนวคิด OAuth 2.0 คุณอาจมุ่งเน้นไปที่อินเทอร์เฟซแบบรวมเพียงอินเทอร์เฟซเดียว
  • เราได้นำฟังก์ชันรูปแบบ Getter ออกโดยอ้อมเพื่อให้อ่านง่ายขึ้น
  • เมื่อจัดการการตอบกลับการให้สิทธิ์ คุณเลือกได้ว่าจะใช้คำมั่นสัญญาเพื่อดำเนินการตามคำขอหรือไม่ แทนการตัดสินใจดังกล่าว
  • อัปเดตไลบรารีของไคลเอ็นต์ Google API สำหรับ JavaScript ตามการเปลี่ยนแปลงต่อไปนี้
    • ระบบจะไม่โหลดโมดูล gapi.auth2 รวมถึงออบเจ็กต์และวิธีการที่เกี่ยวข้องไว้ให้คุณโดยอัตโนมัติในเบื้องหลังอีกต่อไป และจะมีการแทนที่ด้วยออบเจ็กต์และเมธอดไลบรารีของ Google Identity Services ที่ชัดเจนยิ่งขึ้น
    • ระบบนำการรีเฟรชโทเค็นเพื่อการเข้าถึงที่หมดอายุแล้วโดยอัตโนมัติออกเพื่อปรับปรุงความปลอดภัยและการรับรู้ของผู้ใช้ หลังจากที่โทเค็นเพื่อการเข้าถึงหมดอายุ แอปของคุณต้องจัดการกับการตอบกลับข้อผิดพลาดของ Google API, คำขอ และรับโทเค็นเพื่อการเข้าถึงใหม่ที่ถูกต้อง
    • ระบบไม่รองรับการแยกระหว่างการตรวจสอบสิทธิ์และช่วงเวลาการให้สิทธิ์ที่ชัดเจน เราจึงไม่รองรับการให้ผู้ใช้ลงชื่อเข้าใช้แอปของคุณและบัญชี Google พร้อมกันในขณะที่ออกโทเค็นเพื่อการเข้าถึงอีกต่อไป ก่อนหน้านี้ การขอโทเค็นเพื่อการเข้าถึงเป็นการให้ผู้ใช้ลงชื่อเข้าใช้บัญชี Google ของตนและแสดงผลข้อมูลเข้าสู่ระบบของโทเค็นรหัส JWT เพื่อการตรวจสอบสิทธิ์ผู้ใช้
  • เพื่อเพิ่มความปลอดภัยและความเป็นส่วนตัวของผู้ใช้ ข้อมูลเข้าสู่ระบบที่ออกให้สำหรับการให้สิทธิ์ผู้ใช้จะเป็นไปตามหลักของสิทธิ์ขั้นต่ำ โดยการรวมเฉพาะโทเค็นเพื่อการเข้าถึงและข้อมูลที่จำเป็นในการจัดการข้อมูลนั้น