คู่มือนี้จะช่วยให้คุณเข้าใจการเปลี่ยนแปลงที่จำเป็นและขั้นตอน ย้ายไลบรารี JavaScript จาก Google Sign-In ก่อนหน้านี้เรียบร้อยแล้ว ไลบรารีแพลตฟอร์มเป็นไลบรารี Google Identity Services เวอร์ชันใหม่กว่าสำหรับ การตรวจสอบสิทธิ์
หากลูกค้าของคุณกำลังใช้ไลบรารีของไคลเอ็นต์ Google API สำหรับ JavaScript หรืออื่นๆ ไลบรารีก่อนหน้านี้สำหรับการให้สิทธิ์ โปรดดูย้ายข้อมูลไปยัง Google Identity บริการเพื่อดูข้อมูลเพิ่มเติม
การตรวจสอบสิทธิ์และการให้สิทธิ์
การตรวจสอบสิทธิ์จะกำหนดว่าผู้อื่นเป็นใคร และโดยทั่วไปจะเรียกว่า ลงชื่อสมัครใช้หรือลงชื่อเข้าใช้ของผู้ใช้ การให้สิทธิ์เป็นขั้นตอนการให้อนุญาตหรือ ปฏิเสธการเข้าถึงข้อมูลหรือทรัพยากร ตัวอย่างเช่น แอปของคุณส่งคำขอ ความยินยอมของผู้ใช้ในการเข้าถึง Google ไดรฟ์ของผู้ใช้
เช่นเดียวกับไลบรารีแพลตฟอร์ม Google Sign-In ก่อนหน้านี้ Google Identity ไลบรารีบริการสร้างมาเพื่อรองรับทั้งการตรวจสอบสิทธิ์และการให้สิทธิ์ กระบวนการ
อย่างไรก็ตาม ไลบรารีเวอร์ชันใหม่กว่าจะแยกกระบวนการทั้งสองออกเพื่อลดความซับซ้อน สำหรับนักพัฒนาซอฟต์แวร์ ในการผสานรวมบัญชี Google กับแอปของคุณ
หากกรณีการใช้งานของคุณเกี่ยวข้องกับการตรวจสอบสิทธิ์เท่านั้น โปรดอ่านหน้านี้ต่อ
หากกรณีการใช้งานของคุณมีการให้สิทธิ์ โปรดอ่านวิธีการทำงานของการให้สิทธิ์ผู้ใช้ และย้ายข้อมูลไปยัง Google Identity Services เพื่อให้มั่นใจว่าแอปพลิเคชันของคุณ โดยใช้ API ใหม่ที่ได้รับการปรับปรุง
มีอะไรเปลี่ยนแปลงบ้าง
สําหรับผู้ใช้ ไลบรารีใหม่ของ Google Identity Services นำเสนอ ปรับปรุงความสามารถในการใช้งาน ไฮไลต์มีดังนี้
- ขั้นตอนการลงชื่อเข้าใช้ด้วย One Tap และการลงชื่อเข้าใช้โดยอัตโนมัติแบบใหม่ที่มีความราบรื่นสูงและใช้งานแต่ละคนน้อยลง ก้าว
- ปุ่มลงชื่อเข้าใช้ที่รีเฟรชใหม่ที่ปรับตามผู้ใช้
- การสร้างแบรนด์ที่สอดคล้องกันและพฤติกรรมการลงชื่อเข้าใช้แบบเดียวกันทั่วทั้งอินเทอร์เน็ตช่วยให้ ความเข้าใจและความไว้วางใจ
- เข้าถึงเนื้อหาได้อย่างรวดเร็ว ผู้ใช้สามารถลงชื่อสมัครใช้และลงชื่อเข้าใช้ได้จากทุกที่ บนเว็บไซต์ของคุณ โดยไม่ต้องไปที่หน้าล็อกอินหรือหน้าบัญชีก่อน
สำหรับนักพัฒนาซอฟต์แวร์ เรามุ่งเน้นที่การลดความซับซ้อน ปรับปรุงการรักษาความปลอดภัย การผสานรวมให้รวดเร็วที่สุด การปรับปรุงบางส่วนเหล่านี้ ได้แก่
- ตัวเลือกในการเพิ่มการลงชื่อเข้าใช้ของผู้ใช้ลงในเนื้อหาคงที่ของเว็บไซต์โดยใช้เพียง HTML
- การแยกการตรวจสอบสิทธิ์การลงชื่อเข้าใช้ออกจากการให้สิทธิ์และการแชร์ ข้อมูลผู้ใช้ ไม่จำเป็นต้องมีความซับซ้อนของการผสานรวม OAuth 2.0 อีกต่อไป ให้ผู้ใช้ลงชื่อเข้าใช้ในเว็บไซต์
- ระบบจะยังคงรองรับทั้งโหมดป๊อปอัปและโหมดเปลี่ยนเส้นทาง แต่ OAuth ของ Google โครงสร้างพื้นฐาน 2.0 จะเปลี่ยนเส้นทางไปยังปลายทางการเข้าสู่ระบบของเซิร์ฟเวอร์แบ็กเอนด์
- ซึ่งรวมความสามารถจาก Google Identity ก่อนหน้านี้ และไลบรารี JavaScript ของ Google API เข้าเป็นไลบรารีใหม่
- สำหรับการตอบกลับการลงชื่อเข้าใช้ ตอนนี้คุณจะได้ตัดสินใจว่าจะใช้หรือไม่ใช้ Promiseและการชี้นำผ่านฟังก์ชันรูปแบบ Getter ถูกนำออกเพื่อความง่าย
ตัวอย่างการย้ายข้อมูลการลงชื่อเข้าใช้
หากคุณย้ายข้อมูลจากปุ่ม Google Sign-In ที่มีอยู่และเป็นเพียง ที่สนใจที่จะให้ผู้ใช้ลงชื่อเข้าใช้เว็บไซต์ของคุณ การเปลี่ยนแปลงที่ตรงไปตรงมาที่สุดคือ เพื่ออัปเดตเป็นปุ่มใหม่ที่ปรับเปลี่ยนในแบบของคุณ ซึ่งสามารถทำได้ด้วยการสลับ ไลบรารี JavaScript และการอัปเดตฐานของโค้ดให้ใช้ออบเจ็กต์การลงชื่อเข้าใช้ใหม่
ไลบรารีและการกำหนดค่า
ไลบรารีแพลตฟอร์ม Google Sign-In ก่อนหน้า: apis.google.com/js/platform.js
,
และไลบรารีไคลเอ็นต์ Google APIs สำหรับ JavaScript: gapi.client
ไม่
ซึ่งจำเป็นสำหรับการตรวจสอบสิทธิ์และการให้สิทธิ์ผู้ใช้ คือ
แทนที่ด้วยไลบรารี JavaScript ของบริการ Google Identity ใหม่รายการเดียว ดังนี้
accounts.google.com/gsi/client
โมดูล JavaScript 3 รายการก่อนหน้านี้: api
, client
และ platform
ใช้สำหรับ
การลงชื่อเข้าใช้ทั้งหมดโหลดจาก apis.google.com
เพื่อช่วยคุณระบุตำแหน่ง
ซึ่งอาจรวมไลบรารีก่อนหน้านี้ไว้ในเว็บไซต์ ดังนี้
- ปุ่มลงชื่อเข้าใช้เริ่มต้นจะโหลด
apis.google.com/js/platform.js
- กราฟิกปุ่มที่กำหนดเองโหลด
apis.google.com/js/api:client.js
และ - การใช้งาน
gapi.client
โดยตรงโหลดapis.google.com/js/api.js
ในกรณีส่วนใหญ่ คุณสามารถใช้รหัสไคลเอ็นต์ของเว็บแอปพลิเคชันที่มีอยู่ต่อไปได้ ข้อมูลเข้าสู่ระบบ ในการย้ายข้อมูล เราขอแนะนำให้คุณตรวจสอบ นโยบาย OAuth 2.0 และใช้คอนโซล Google API เพื่อยืนยัน และอัปเดตการตั้งค่าไคลเอ็นต์ต่อไปนี้ ถ้าจำเป็น
- แอปทดสอบและแอปเวอร์ชันที่ใช้งานจริงของคุณใช้โปรเจ็กต์ที่แยกจากกัน และ รหัสลูกค้า
- ประเภทรหัสไคลเอ็นต์ OAuth 2.0 คือ "เว็บแอปพลิเคชัน" และ
- HTTPS ใช้สำหรับต้นทางของ JavaScript ที่ได้รับอนุญาตและ URI การเปลี่ยนเส้นทาง
ระบุโค้ดที่พบปัญหาและทดสอบ
คุกกี้การแก้ไขข้อบกพร่องจะช่วยค้นหาโค้ดที่ได้รับผลกระทบและทดสอบหลังการเลิกใช้งาน พฤติกรรมของคุณ
ในแอปที่มีขนาดใหญ่หรือซับซ้อน อาจเป็นเรื่องยากที่จะหาโค้ดทั้งหมดที่ได้รับผลกระทบจาก
การเลิกใช้งานโมดูล gapi.auth2
เพื่อบันทึกการใช้งาน เร็วๆ นี้
ที่เลิกใช้งานไปแล้วในคอนโซล ให้ตั้งค่าของ G_AUTH2_MIGRATION
กับ informational
(ไม่บังคับ) เพิ่มโคลอนตามด้วยค่าคีย์เพื่อ
และบันทึกไปยังพื้นที่เก็บข้อมูลเซสชันด้วย หลังจากลงชื่อเข้าใช้และได้รับการ
การตรวจสอบข้อมูลเข้าสู่ระบบหรือส่งบันทึกที่รวบรวมไว้ไปยังแบ็กเอนด์เพื่อการวิเคราะห์ในภายหลัง สำหรับ
เช่น informational:showauth2use
จะบันทึกต้นทางและ URL ลงในพื้นที่เก็บข้อมูลของเซสชัน
คีย์ชื่อ showauth2use
หากต้องการยืนยันลักษณะการทำงานของแอปเมื่อโมดูล gapi.auth2
ไม่โหลดอีกต่อไป ให้ตั้งค่า
ของคุกกี้ G_AUTH2_MIGRATION
ให้เป็น enforced
วิธีนี้ช่วยให้คุณทดสอบ
ลักษณะการใช้งานหลังการเลิกใช้งานก่อนวันที่บังคับใช้
ค่าคุกกี้ G_AUTH2_MIGRATION
ที่เป็นไปได้มีดังนี้
enforced
ไม่ต้องโหลดโมดูลgapi.auth2
informational
บันทึกการใช้ความสามารถที่เลิกใช้งานแล้วลงในคอนโซล JS บันทึกด้วย ไปยังพื้นที่เก็บข้อมูลเซสชันเมื่อตั้งค่าชื่อคีย์ที่ไม่บังคับไว้ ดังนี้informational:key-name
เราขอแนะนำให้ตั้งค่าคุกกี้นี้ในเครื่องก่อนเพื่อลดผลกระทบต่อผู้ใช้ ระหว่างการพัฒนาและทดสอบ ก่อนใช้งานในสภาพแวดล้อมการใช้งานจริง
HTML และ JavaScript
ในสถานการณ์การลงชื่อเข้าใช้แบบตรวจสอบสิทธิ์เท่านั้น ตัวอย่างโค้ดและการแสดงผล ปุ่ม Google Sign-In ที่มีอยู่จะปรากฏขึ้น เลือกจากป๊อปอัปหรือเปลี่ยนเส้นทาง เพื่อดูความแตกต่างของวิธีจัดการการตอบกลับการตรวจสอบสิทธิ์โดย JavaScript Callback หรือโดยการเปลี่ยนเส้นทางที่ปลอดภัยไปยังการเข้าสู่ระบบเซิร์ฟเวอร์แบ็กเอนด์ ปลายทาง
วิธีก่อนหน้านี้
โหมดป๊อปอัป
แสดงปุ่ม Google Sign-In และใช้ Callback เพื่อจัดการการลงชื่อเข้าใช้ จากเบราว์เซอร์ของผู้ใช้โดยตรง
<html>
<body>
<script src="https://apis.google.com/js/platform.js" async defer></script>
<meta name="google-signin-client_id" content="YOUR_CLIENT_ID">
<div class="g-signin2" data-onsuccess="handleCredentialResponse"></div>
</body>
</html>
โหมดเปลี่ยนเส้นทาง
แสดงผลปุ่ม Google Sign-In ซึ่งลงท้ายด้วยการเรียก AJAX จาก ไปยังปลายทางการเข้าสู่ระบบเซิร์ฟเวอร์แบ็กเอนด์ของคุณ
<html>
<body>
<script src="https://apis.google.com/js/platform.js" async defer></script>
<meta name="google-signin-client_id" content="YOUR_CLIENT_ID">
<div class="g-signin2" data-onsuccess="handleCredentialResponse"></div>
<script>
function handleCredentialResponse(googleUser) {
...
var xhr = new XMLHttpRequest();
xhr.open('POST', 'https://yourbackend.example.com/tokensignin');
xhr.setRequestHeader('Content-Type', 'application/x-www-form-urlencoded');
xhr.onload = function() {
console.log('Signed in as: ' + xhr.responseText);
};
xhr.send('idtoken=' + id_token);
}
</script>
</body>
</html>
แสดงผลแล้ว
แอตทริบิวต์ภาพใหม่ช่วยลดความซับซ้อนในการสร้างแอตทริบิวต์ที่กำหนดเอง
ช่วยลดการโทรหา gapi.signin2.render()
และความจำเป็นใน
ให้คุณโฮสต์และดูแลรักษารูปภาพและเนื้อหาภาพในเว็บไซต์
ข้อความบนปุ่มอัปเดตสถานะการลงชื่อเข้าใช้ของผู้ใช้
ด้วยวิธีใหม่
หากต้องการใช้ไลบรารีใหม่ในสถานการณ์การลงชื่อเข้าใช้เฉพาะการตรวจสอบสิทธิ์เท่านั้น ให้เลือก จากโหมดป๊อปอัปหรือโหมดเปลี่ยนเส้นทาง และใช้ตัวอย่างโค้ดเพื่อแทนที่ ที่มีอยู่ในหน้าการเข้าสู่ระบบของคุณ
โหมดป๊อปอัป
ใช้ Callback เพื่อจัดการการลงชื่อเข้าใช้โดยตรงจากเบราว์เซอร์ของผู้ใช้
<html>
<body>
<script src="https://accounts.google.com/gsi/client" async defer></script>
<div id="g_id_onload"
data-client_id="YOUR_CLIENT_ID"
data-callback="handleCredentialResponse">
</div>
<div class="g_id_signin" data-type="standard"></div>
</body>
</html>
โหมดเปลี่ยนเส้นทาง
Google จะเรียกปลายทางการเข้าสู่ระบบของคุณตามที่ระบุไว้โดย data-login_url
ก่อนหน้านี้ คุณต้องรับผิดชอบต่อการดำเนินการ POST และ
ชื่อพารามิเตอร์ ไลบรารีใหม่จะโพสต์โทเค็นรหัสไปยังปลายทางของคุณใน
พารามิเตอร์ credential
สุดท้าย ให้ยืนยันโทเค็นรหัสในแบ็กเอนด์
เซิร์ฟเวอร์
<html>
<body>
<script src="https://accounts.google.com/gsi/client" async defer></script>
<div id="g_id_onload"
data-client_id="YOUR_CLIENT_ID"
data-ux_mode="redirect"
data-login_uri="https://www.example.com/your_login_endpoint">
</div>
<div class="g_id_signin" data-type="standard"></div>
</body>
</html>
แสดงผลแล้ว
ใช้ visual-attributes เพื่อปรับแต่งปุ่มลงชื่อเข้าใช้ด้วย Google ขนาด รูปร่าง สี แสดงป๊อปอัป One Tap พร้อมกับ ปุ่มเพื่อปรับปรุงอัตราการลงชื่อเข้าใช้
สถานะการลงชื่อเข้าใช้ของผู้ใช้ไม่อัปเดตข้อความบนปุ่มจาก "ลงชื่อเข้าใช้" ถึง "ลงชื่อเข้าใช้แล้ว" หลังจากให้ความยินยอมหรือในการกลับมาเข้าชมใหม่ โฆษณาที่ปรับให้เหมาะกับแต่ละบุคคล ประกอบด้วยชื่อ อีเมล และรูปโปรไฟล์ของผู้ใช้
ในตัวอย่างเฉพาะการตรวจสอบสิทธิ์นี้ accounts.google.com/gsi/client
ใหม่
ไลบรารี คลาส g_id_signin
และออบเจ็กต์ g_id_onload
แทนที่รายการก่อนหน้า
ไลบรารี apis.google.com/js/platform.js
และออบเจ็กต์ g-signin2
รายการ
นอกจากการแสดงผลปุ่มที่ปรับเปลี่ยนในแบบของคุณแล้ว โค้ดตัวอย่างยัง จะแสดงป๊อปอัป One Tap ใหม่ เมื่อใดก็ตามที่คุณแสดงปุ่มที่ปรับเปลี่ยนในแบบของคุณ ขอแนะนำให้คุณแสดงป๊อปอัป One Tap ด้วยเพื่อย่อผู้ใช้ ความติดขัดระหว่างการลงชื่อสมัครใช้และการลงชื่อเข้าใช้
แม้ว่าเราจะไม่แนะนำเพราะความติดขัดในการลงชื่อเข้าใช้ที่เพิ่มขึ้น แต่
ปุ่มในแบบของคุณสามารถแสดงเพียงอย่างเดียว โดยไม่ต้องแสดง
กล่องโต้ตอบ One Tap โดยตั้งค่าแอตทริบิวต์ data-auto_prompt
เป็น false
API ของ HTML และ JavaScript
ตัวอย่างก่อนหน้านี้แสดงวิธีใช้ HTML API ใหม่เพื่อเพิ่มการลงชื่อเข้าใช้ เว็บไซต์ของคุณ อีกทางเลือกหนึ่งคือ คุณสามารถใช้ฟังก์ชันเทียบเท่า JavaScript API หรือผสมผสาน HTML และ JavaScript API ในผลิตภัณฑ์ ของคุณ
เพื่อดูตัวเลือกการกำหนดค่าปุ่มแบบอินเทอร์แอกทีฟ เช่น ประเภท Callback และ แอตทริบิวต์ เช่น สี ขนาด รูปร่าง ข้อความ และธีม ดูการชำระเงินโค้ด เท่านั้น ซึ่งสามารถใช้เพื่อเปรียบเทียบตัวเลือกต่างๆ และสร้าง ข้อมูลโค้ด HTML สำหรับใช้ในเว็บไซต์ของคุณ
ลงชื่อเข้าใช้จากหน้าเว็บใดก็ได้ด้วย One Tap
One Tap เป็นวิธีใหม่ที่มีความราบรื่นสูงสำหรับผู้ใช้ในการลงชื่อสมัครใช้หรือลงชื่อเข้าใช้เว็บไซต์ของคุณ ซึ่งช่วยให้คุณอนุญาตให้ผู้ใช้ลงชื่อเข้าใช้จากหน้าใดก็ได้ในเว็บไซต์โดยตรง ช่วยให้ผู้ใช้ไม่ต้องไปยังหน้าเข้าสู่ระบบเฉพาะ กล่าวอีกอย่างหนึ่ง ซึ่งช่วยลดอุปสรรคในการลงชื่อสมัครใช้และการลงชื่อเข้าใช้ โดยการให้ความยืดหยุ่นแก่ผู้ใช้ ลงชื่อสมัครใช้และลงชื่อเข้าใช้จากหน้าเว็บอื่นๆ นอกเหนือจากหน้าเข้าสู่ระบบของคุณ
เราขอแนะนำให้คุณเพิ่ม g_id_onload
ในการเปิดใช้การลงชื่อเข้าใช้จากหน้าใดก็ได้
ส่วนหัว ส่วนท้าย หรือออบเจ็กต์อื่นๆ ที่ใช้ร่วมกันทั้งเว็บไซต์
เราขอแนะนำให้เพิ่ม g_id_signin
ด้วย ซึ่งจะแสดงการลงชื่อเข้าใช้ที่ปรับเปลี่ยนในแบบของคุณ
เฉพาะในหน้าการเข้าสู่ระบบหรือบัญชีการจัดการบัญชีผู้ใช้ของคุณเท่านั้น ให้ตัวเลือกแก่ผู้ใช้
สำหรับการลงชื่อสมัครใช้หรือลงชื่อเข้าใช้ด้วยการแสดงปุ่มร่วมกับสมาพันธ์อื่นๆ
ปุ่มผู้ให้บริการข้อมูลประจำตัว และช่องป้อนชื่อผู้ใช้และรหัสผ่าน
การตอบกลับของโทเค็น
ผู้ใช้ต้องทำความเข้าใจหรือใช้งาน OAuth 2.0 ในการลงชื่อเข้าใช้ของผู้ใช้ รหัสการให้สิทธิ์ โทเค็นเพื่อการเข้าถึง หรือโทเค็นการรีเฟรช แทน JSON Web Token (JWT) โทเค็นรหัสใช้เพื่อแชร์สถานะการลงชื่อเข้าใช้และโปรไฟล์ผู้ใช้ เพื่อ เพื่อให้ง่ายขึ้น คุณไม่จำเป็นต้องใช้ "getter" อีกต่อไป ภาพถ่ายไฮเปอร์เรียลลิสติก วิธีการของตัวเข้าถึงในการทำงานกับข้อมูลโปรไฟล์ผู้ใช้
ระบบจะส่งข้อมูลเข้าสู่ระบบโทเค็น JWT ID ที่ Google รับรองและปลอดภัยในกรณีต่อไปนี้
- ไปยังเครื่องจัดการ Callback JavaScript บนเบราว์เซอร์ของผู้ใช้ในโหมดป๊อปอัป หรือ
- ไปยังเซิร์ฟเวอร์แบ็กเอนด์ของคุณผ่าน Google เปลี่ยนเส้นทางไปยังปลายทางการเข้าสู่ระบบเมื่อ
ตั้งค่าปุ่ม "ลงชื่อเข้าใช้ด้วย Google"
ux_mode
เป็นredirect
ในทั้ง 2 กรณี ให้อัปเดตเครื่องจัดการ Callback ที่มีอยู่โดยนำรายการต่อไปนี้ออก
- สายที่โทรหา
googleUser.getBasicProfile()
- การอ้างอิงถึง
BasicProfile
และการเรียกไปยังgetId()
ที่เกี่ยวข้องgetName()
,getGivenName()
,getFamilyName()
,getImageUrl()
getEmail()
เมธอด และ - การใช้ออบเจ็กต์
AuthResponse
ให้ใช้การอ้างอิงโดยตรงไปยังช่องย่อย credential
ใน JWT ใหม่แทน
CredentialResponse
เพื่อทำงานกับข้อมูลโปรไฟล์ผู้ใช้
นอกจากนี้ และสำหรับโหมดการเปลี่ยนเส้นทางเท่านั้น โปรดตรวจสอบว่าได้ป้องกันคำขอข้ามเว็บไซต์ Forgery (CSRF) และ ยืนยันโทเค็น Google ID ในเซิร์ฟเวอร์แบ็กเอนด์ของคุณ
เพื่อให้เข้าใจวิธีที่ผู้ใช้โต้ตอบกับเว็บไซต์ของคุณได้ดีขึ้น
ช่อง select_by
ในข้อมูลเข้าสู่ระบบใช้เพื่อระบุผู้ใช้ได้
ผลความยินยอมและขั้นตอนการลงชื่อเข้าใช้ที่เฉพาะเจาะจงที่ใช้
ความยินยอมของผู้ใช้และการเพิกถอนสิทธิ์
เมื่อผู้ใช้ลงชื่อเข้าใช้เว็บไซต์เป็นครั้งแรก Google จะแจ้งให้ผู้ใช้ให้ความยินยอม เพื่อแชร์โปรไฟล์บัญชีกับแอปของคุณ หลังจากที่ให้ความยินยอมแล้วเท่านั้น โปรไฟล์ผู้ใช้ที่แชร์ไปยังแอปของคุณในเพย์โหลดข้อมูลเข้าสู่ระบบของโทเค็นรหัส การเพิกถอนการเข้าถึงโปรไฟล์นี้เทียบเท่ากับการเพิกถอนโทเค็นเพื่อการเข้าถึงใน ไลบรารีการลงชื่อเข้าใช้ก่อนหน้า
ผู้ใช้อาจเพิกถอนสิทธิ์และยกเลิกการเชื่อมต่อแอปของคุณจากบัญชี Google ได้
โดยไปที่ https://myaccount.google.com/permissions
อีกทางเลือกหนึ่งคืออาจยกเลิกการเชื่อมต่อจากแอปโดยตรงด้วยการเรียกใช้ API
ซึ่งคุณนำไปใช้ วิธี disconnect
ก่อนหน้านี้คือ
แทนที่ด้วยเมธอด revoke
ที่ใหม่กว่า
แนวทางปฏิบัติแนะนำเมื่อผู้ใช้ลบบัญชีบนแพลตฟอร์ม
revoke
เพื่อยกเลิกการเชื่อมต่อแอปของคุณจากบัญชี Google
ก่อนหน้านี้ คุณสามารถใช้ auth2.signOut()
เพื่อช่วยจัดการการออกจากระบบของผู้ใช้
จากแอปของคุณ การใช้งาน auth2.signOut()
ทั้งหมดควรถูกนำออกและแอปของคุณ
ควรจัดการสถานะเซสชันและสถานะการลงชื่อเข้าใช้ของผู้ใช้โดยตรง
สถานะเซสชันและ Listener
ไลบรารีใหม่จะไม่รักษาสถานะการลงชื่อเข้าใช้หรือสถานะเซสชันสำหรับเว็บของคุณ แอป
สถานะการลงชื่อเข้าใช้บัญชี Google และสถานะเซสชันของแอปและ สถานะลงชื่อเข้าใช้นั้นแตกต่างกันและมีแนวคิดที่แยกกัน
สถานะการลงชื่อเข้าใช้บัญชี Google ของผู้ใช้และแอปของคุณจะเป็นอิสระจากกัน อื่นๆ ยกเว้นในขณะที่ลงชื่อเข้าใช้ เมื่อคุณทราบว่าผู้ใช้ได้ ตรวจสอบสิทธิ์เรียบร้อยแล้ว และลงชื่อเข้าใช้บัญชี Google ของตน
เมื่อฟีเจอร์ลงชื่อเข้าใช้ด้วย Google, One Tap หรือการลงชื่อเข้าใช้โดยอัตโนมัติจะรวมอยู่ใน ผู้ใช้เว็บไซต์ต้องลงชื่อเข้าใช้บัญชี Google ของตนก่อนเพื่อทำสิ่งต่อไปนี้
- ให้ความยินยอมในการแชร์โปรไฟล์ผู้ใช้เมื่อลงชื่อสมัครใช้ครั้งแรก หรือ เมื่อลงชื่อเข้าใช้เว็บไซต์
- และหลังจากลงชื่อเข้าใช้เมื่อคุณกลับมาเข้าชมเว็บไซต์อีกครั้ง
ผู้ใช้อาจยังลงชื่อเข้าใช้ ออกจากระบบ หรือเปลี่ยนไปใช้บัญชี Google อื่น ขณะที่ยังคงเซสชันการลงชื่อเข้าใช้ที่มีความเคลื่อนไหวอยู่ในเว็บไซต์ของคุณ
ขณะนี้คุณมีหน้าที่รับผิดชอบในการจัดการสถานะที่ลงชื่อเข้าใช้โดยตรงสำหรับผู้ใช้ของ เว็บแอปของคุณ ก่อนหน้านี้ Google Sign-In ช่วยตรวจสอบ สถานะเซสชัน
นำการอ้างอิงถึง auth2.attachClickHandler()
และข้อมูลที่ลงทะเบียนไว้ออก
Callback Handler
ก่อนหน้านี้ Listener สามารถใช้เพื่อแชร์การเปลี่ยนแปลงในสถานะลงชื่อเข้าใช้สำหรับ บัญชี Google ของผู้ใช้ ระบบไม่รองรับ Listener อีกต่อไป
นำการอ้างอิงถึง listen()
, auth2.currentUser
และ
auth2.isSignedIn
คุกกี้
ฟีเจอร์ลงชื่อเข้าใช้ด้วย Google ใช้คุกกี้แบบจำกัด คำอธิบายเกี่ยวกับคุกกี้เหล่านี้ ติดตาม ดูวิธีที่ Google ใช้คุกกี้ เพื่อดูข้อมูลเพิ่มเติมเกี่ยวกับคุกกี้ประเภทอื่นๆ ที่ Google ใช้
คุกกี้ G_ENABLED_IDPS
ที่กำหนดโดยไลบรารี Google Sign-In Platform ก่อนหน้านี้
ไม่ได้ใช้งานอีกต่อไป
ไลบรารี Google Identity Services ใหม่อาจตั้งค่าข้ามโดเมนเหล่านี้ (ไม่บังคับ) คุกกี้ตามตัวเลือกการกำหนดค่าของคุณ:
g_state
จะจัดเก็บสถานะการออกจากระบบของผู้ใช้และได้รับการตั้งค่าเมื่อใช้ One Tap ป๊อปอัปหรือการลงชื่อเข้าใช้อัตโนมัติg_csrf_token
เป็นคุกกี้การส่งซ้ำซึ่งใช้เพื่อป้องกันการโจมตี CSRF และได้รับการตั้งค่าเมื่อมีการเรียกใช้ปลายทางการเข้าสู่ระบบ ค่าสำหรับ URI การเข้าสู่ระบบของคุณ สามารถกำหนดอย่างชัดเจนหรืออาจตั้งค่าเริ่มต้นเป็น URI ของหน้าปัจจุบัน บัญชี อาจมีการเรียกปลายทางการเข้าสู่ระบบภายใต้เงื่อนไขเหล่านี้เมื่อใช้HTML API ที่มี
data-ux_mode=redirect
หรือเมื่อdata-login_uri
คือ ตั้งค่า หรือJavaScript API ด้วย
ux_mode=redirect
และตำแหน่งที่ตั้ง ไม่ได้ใช้google.accounts.id.prompt()
เพื่อแสดง One Tap หรือ ลงชื่อเข้าใช้อัตโนมัติ
หากคุณมีบริการที่จัดการคุกกี้ อย่าลืมเพิ่มคุกกี้ใหม่ 2 คุกกี้ และลบคุกกี้ก่อนหน้าเมื่อการย้ายข้อมูลเสร็จสมบูรณ์
หากคุณจัดการโดเมนหรือโดเมนย่อยหลายรายการ โปรดดูหัวข้อ Display One Tap บน
โดเมนย่อยสำหรับคำแนะนำเพิ่มเติมเกี่ยวกับการทำงานกับคุกกี้ g_state
การอ้างอิงการย้ายข้อมูลออบเจ็กต์สำหรับการลงชื่อเข้าใช้ของผู้ใช้
เก่า | ใหม่ | หมายเหตุ |
---|---|---|
ไลบรารี JavaScript | ||
apis.google.com/js/platform.js | accounts.google.com/gsi/client | แทนที่ไฟล์เก่าด้วยใหม่ |
apis.google.com/js/api.js | accounts.google.com/gsi/client | แทนที่ไฟล์เก่าด้วยใหม่ |
GoogleAuth และวิธีที่เกี่ยวข้อง: | ||
GoogleAuth.attachClickHandler() | IdConfiguration.callback สำหรับ data-callback สำหรับ JS และ HTML | แทนที่ไฟล์เก่าด้วยใหม่ |
GoogleAuth.currentUser.get() | CredentialResponse | ใช้ CredentialResponse แทน ไม่จำเป็นอีกต่อไป |
GoogleAuth.currentUser.listen() | นำออก ไม่มีข้อมูลสถานะการลงชื่อเข้าใช้ปัจจุบันของผู้ใช้ใน Google ผู้ใช้ต้องลงชื่อเข้าใช้ Google เพื่อขอความยินยอมและช่วงเวลาลงชื่อเข้าใช้ select_by ใน CredentialResponse สามารถใช้เพื่อระบุผลลัพธ์ของ ความยินยอมของผู้ใช้ ตลอดจนวิธีการลงชื่อเข้าใช้ที่ใช้ | |
GoogleAuth.disconnect() | google.accounts.id.revoke | แทนที่ไฟล์เก่าด้วยใหม่ การเพิกถอนอาจเกิดขึ้นจาก https://myaccount.google.com/permissions เช่นกัน |
GoogleAuth.grantOfflineAccess() | นำออก โทเค็นรหัสได้มาแทนที่โทเค็นเพื่อการเข้าถึงและขอบเขต OAuth 2.0 แล้ว | |
GoogleAuth.isSignedIn.get() | นำออก ไม่มีข้อมูลสถานะการลงชื่อเข้าใช้ปัจจุบันของผู้ใช้ใน Google ผู้ใช้ต้องลงชื่อเข้าใช้ Google เพื่อขอความยินยอมและช่วงเวลาลงชื่อเข้าใช้ | |
GoogleAuth.isSignedIn.listen() | นำออก ไม่มีข้อมูลสถานะการลงชื่อเข้าใช้ปัจจุบันของผู้ใช้ใน Google ผู้ใช้ต้องลงชื่อเข้าใช้ Google เพื่อขอความยินยอมและช่วงเวลาลงชื่อเข้าใช้ | |
GoogleAuth.signIn() | นำออก HTML DOM กำลังโหลด g_id_signin องค์ประกอบ หรือการเรียก JS ถึง google.accounts.id.renderButton ทำให้ผู้ใช้ลงชื่อเข้าใช้บัญชี Google | |
GoogleAuth.signOut() | นำออก สถานะการลงชื่อเข้าใช้ของผู้ใช้สําหรับแอปของคุณและบัญชี Google ได้แก่ เป็นอิสระจากกัน Google ไม่ได้จัดการสถานะเซสชันสำหรับแอปของคุณ | |
GoogleAuth.then() | นำออก เลิกใช้งาน GoogleAuth แล้ว | |
GoogleUser และวิธีการที่เกี่ยวข้อง: | ||
GoogleUser.disconnect() | google.accounts.id.revoke | แทนที่ไฟล์เก่าด้วยใหม่ การเพิกถอนอาจเกิดขึ้นจาก https://myaccount.google.com/permissions เช่นกัน |
GoogleUser.getAuthResponse() | ||
GoogleUser.getBasicProfile() | CredentialResponse | ใช้ credential และช่องย่อยโดยตรงแทนเมธอด BasicProfile |
GoogleUser.getGrantedScopes() | นำออก โทเค็นรหัสได้มาแทนที่โทเค็นเพื่อการเข้าถึงและขอบเขต OAuth 2.0 แล้ว | |
GoogleUser.getHostedDomain() | CredentialResponse | โปรดใช้ credential.hd โดยตรงแทน |
GoogleUser.getId() | CredentialResponse | โปรดใช้ credential.sub โดยตรงแทน |
GoogleUser.grantOfflineAccess() | นำออก โทเค็นรหัสได้มาแทนที่โทเค็นเพื่อการเข้าถึงและขอบเขต OAuth 2.0 แล้ว | |
GoogleUser.grant() | นำออก โทเค็นรหัสได้มาแทนที่โทเค็นเพื่อการเข้าถึงและขอบเขต OAuth 2.0 แล้ว | |
GoogleUser.hasGrantedScopes() | นำออก โทเค็นรหัสได้มาแทนที่โทเค็นเพื่อการเข้าถึงและขอบเขต OAuth 2.0 แล้ว | |
GoogleUser.isSignedIn() | นำออก ไม่มีข้อมูลสถานะการลงชื่อเข้าใช้ปัจจุบันของผู้ใช้ใน Google ผู้ใช้ต้องลงชื่อเข้าใช้ Google เพื่อขอความยินยอมและช่วงเวลาลงชื่อเข้าใช้ | |
GoogleUser.reloadAuthResponse() | นำออก โทเค็นรหัสได้มาแทนที่โทเค็นเพื่อการเข้าถึงและขอบเขต OAuth 2.0 แล้ว | |
gapi.auth2 และวิธีการที่เกี่ยวข้อง: | ||
ออบเจ็กต์ gapi.auth2.AuthorizeConfig | นำออก โทเค็นรหัสได้มาแทนที่โทเค็นเพื่อการเข้าถึงและขอบเขต OAuth 2.0 แล้ว | |
ออบเจ็กต์ gapi.auth2.AuthorizeResponse | นำออก โทเค็นรหัสได้มาแทนที่โทเค็นเพื่อการเข้าถึงและขอบเขต OAuth 2.0 แล้ว | |
ออบเจ็กต์ gapi.auth2.AuthResponse | นำออก โทเค็นรหัสได้มาแทนที่โทเค็นเพื่อการเข้าถึงและขอบเขต OAuth 2.0 แล้ว | |
gapi.auth2.authorize() | นำออก โทเค็นรหัสได้มาแทนที่โทเค็นเพื่อการเข้าถึงและขอบเขต OAuth 2.0 แล้ว | |
gapi.auth2.ClientConfig() | นำออก โทเค็นรหัสได้มาแทนที่โทเค็นเพื่อการเข้าถึงและขอบเขต OAuth 2.0 แล้ว | |
gapi.auth2.getAuthInstance() | นำออก โทเค็นรหัสได้มาแทนที่โทเค็นเพื่อการเข้าถึงและขอบเขต OAuth 2.0 แล้ว | |
gapi.auth2.init() | นำออก โทเค็นรหัสได้มาแทนที่โทเค็นเพื่อการเข้าถึงและขอบเขต OAuth 2.0 แล้ว | |
ออบเจ็กต์ gapi.auth2.OfflineAccessOptions | นำออก โทเค็นรหัสได้มาแทนที่โทเค็นเพื่อการเข้าถึงและขอบเขต OAuth 2.0 แล้ว | |
ออบเจ็กต์ gapi.auth2.SignInOptions | นำออก โทเค็นรหัสได้มาแทนที่โทเค็นเพื่อการเข้าถึงและขอบเขต OAuth 2.0 แล้ว | |
gapi.signin2 และวิธีการที่เกี่ยวข้อง: | ||
gapi.signin2.render() | นำออก HTML DOM กำลังโหลด g_id_signin องค์ประกอบ หรือการเรียก JS ถึง google.accounts.id.renderButton ทำให้ผู้ใช้ลงชื่อเข้าใช้บัญชี Google |