หน้านี้เป็นเอกสารอ้างอิงเกี่ยวกับปลายทางและอินเทอร์เฟซที่ Google นำเสนอ ซึ่งแอปของคุณใช้ในระหว่างกระบวนการการลิงก์บัญชีที่ใช้ OAuth
ข้อกำหนดเบื้องต้นและมาตรฐาน
หากต้องการโต้ตอบกับปลายทางของ Google เหล่านี้ให้สำเร็จ การผสานรวมของคุณต้อง เป็นไปตามมาตรฐานต่อไปนี้
- OAuth 2.0: เป็นไปตาม RFC 6749
- โทเค็นเว็บ JSON (JWT): เป็นไปตาม RFC 7519 (สำหรับการลิงก์ที่คล่องตัวและ RISC)
- โทเค็นเหตุการณ์ความปลอดภัย: เป็นไปตาม RFC 8417 (สำหรับ RISC)
- HTTPS: คำขอทั้งหมดต้องดำเนินการผ่านการเชื่อมต่อ HTTPS ที่ปลอดภัย
URI การเปลี่ยนเส้นทาง OAuth
ปลายทางที่บริการของคุณเปลี่ยนเส้นทางเบราว์เซอร์ของผู้ใช้หลังจาก การตรวจสอบสิทธิ์และความยินยอมสำเร็จ YOUR_PROJECT_ID เส้นทาง
พารามิเตอร์คือรหัสที่คุณกำหนดค่าในระหว่างการลงทะเบียน
- URL:
https://oauth-redirect.googleusercontent.com/r/YOUR_PROJECT_ID URL แซนด์บ็อกซ์:
https://oauth-redirect-sandbox.googleusercontent.com/r/YOUR_PROJECT_IDวิธี:
GET(ใช้การเปลี่ยนเส้นทางของเบราว์เซอร์)
พารามิเตอร์คำขอ
เมื่อเปลี่ยนเส้นทางผู้ใช้กลับไปที่ Google คุณต้องต่อท้ายพารามิเตอร์กับ URL พารามิเตอร์เหล่านี้จะจัดรูปแบบเป็นสตริงการค้นหา (ขั้นตอนการใช้รหัสการให้สิทธิ์) หรือเป็นส่วนย่อย URL (ขั้นตอนการให้สิทธิ์โดยนัย) โดยขึ้นอยู่กับขั้นตอน OAuth ที่ใช้
| พารามิเตอร์ | คำอธิบาย |
|---|---|
code
|
(ต้องระบุสำหรับขั้นตอนรหัสการให้สิทธิ์) รหัสการให้สิทธิ์ ที่บริการของคุณสร้างขึ้น |
state
|
(ต้องระบุ) ค่าสถานะที่ไม่ได้แก้ไขซึ่งได้รับจาก Google ในตอนแรก |
access_token
|
(ต้องระบุสำหรับโฟลว์โดยนัย) โทเค็นเพื่อการเข้าถึงที่มีอายุยาวนาน ซึ่งบริการของคุณสร้างขึ้น |
token_type
|
(ต้องระบุสำหรับโฟลว์โดยนัย) ต้องเป็น
bearer |
การตอบกลับข้อผิดพลาด
หากคำขอไปยัง URI การเปลี่ยนเส้นทาง OAuth มีรูปแบบไม่ถูกต้อง คุณจะได้รับข้อผิดพลาด HTTP 400 คำขอไม่ถูกต้อง เนื้อหาการตอบกลับจะมีออบเจ็กต์ JSON ที่มีโครงสร้างดังต่อไปนี้
| ช่อง | คำอธิบาย |
|---|---|
sendPostBody |
กำหนดว่า JS ควรเปลี่ยนเส้นทางไปยัง redirectUri ด้วย POST หรือไม่ โดยปกติแล้ว false ในสถานการณ์นี้ |
errorMessage |
ข้อความแสดงข้อผิดพลาดที่จะแสดงต่อไคลเอ็นต์เมื่อเปลี่ยนเส้นทางไม่สำเร็จ สำหรับส่วนที่ขาดหายไป นี่คือ "A URI fragment or query string must be set." |
การตอบกลับข้อผิดพลาดของ OAuth 2.0
หากผู้ใช้ปฏิเสธที่จะให้ความยินยอมหรือบริการของคุณพบข้อผิดพลาด บริการของคุณ
ต้องเปลี่ยนเส้นทางผู้ใช้กลับไปยัง URI เปลี่ยนเส้นทาง OAuth พร้อมด้วยพารามิเตอร์ข้อผิดพลาด OAuth 2.0 มาตรฐาน (เช่น error=access_denied) Google จะ
ประมวลผลพารามิเตอร์เหล่านี้และแสดงหน้าจอข้อผิดพลาดที่เหมาะสมต่อผู้ใช้
RISC API (ไม่บังคับ)
บริการของคุณใช้เพื่อแจ้งให้ Google ทราบล่วงหน้าเมื่อผู้ใช้ยกเลิกการลิงก์บัญชีในแพลตฟอร์มของคุณโดยใช้โปรโตคอล RISC เพื่อให้มั่นใจว่าทั้ง 2 แพลตฟอร์มจะซิงค์กันอยู่เสมอ
- URL:
https://risc.googleapis.com/v1/events:publish - วิธีการ:
POST - การตรวจสอบสิทธิ์: ต้องใช้โทเค็นบัญชีบริการของ Google ที่มีสิทธิ์ที่เหมาะสม
- Content-Type:
application/json
การอ้างสิทธิ์โทเค็นเหตุการณ์ด้านความปลอดภัย
โทเค็นเหตุการณ์ด้านความปลอดภัยที่คุณใช้เพื่อแจ้งให้ Google ทราบถึงเหตุการณ์การเพิกถอนโทเค็น ต้องเป็นไปตามข้อกำหนดในตารางต่อไปนี้
| อ้างสิทธิ์ | คำอธิบาย |
|---|---|
iss |
การอ้างสิทธิ์ของผู้ออกใบรับรอง: นี่คือ URL ที่คุณโฮสต์และแชร์กับ Google ระหว่างการลงทะเบียน |
aud |
การอ้างสิทธิ์ของกลุ่มเป้าหมาย: ระบุว่า Google เป็นผู้รับ JWT ต้องตั้งค่าเป็น google_account_linking |
jti |
การอ้างสิทธิ์รหัส JWT: นี่คือรหัสที่ไม่ซ้ำกันซึ่งคุณสร้างขึ้นสำหรับการดำเนินการด้านความปลอดภัยทุกรายการ |
iat |
การอ้างสิทธิ์ที่ออกให้: นี่คือค่า NumericDate ที่แสดงเวลาที่สร้างโทเค็นการดำเนินการด้านความปลอดภัยนี้ |
toe |
เวลาของการอ้างสิทธิ์ในเหตุการณ์: นี่คือค่าที่ไม่บังคับ NumericDate ซึ่งแสดงเวลาที่เพิกถอนโทเค็น |
exp |
การอ้างสิทธิ์เวลาหมดอายุ: อย่ารวมฟิลด์นี้ เนื่องจากกิจกรรมที่ทําให้เกิดการแจ้งเตือนนี้เกิดขึ้นแล้ว |
events |
การอ้างสิทธิ์เหตุการณ์ด้านความปลอดภัย: นี่คือออบเจ็กต์ JSON และต้องมีเหตุการณ์การเพิกถอนโทเค็นรายการเดียวเท่านั้นซึ่งมีช่องต่อไปนี้
|
ดูข้อมูลเพิ่มเติมเกี่ยวกับประเภทและรูปแบบฟิลด์ได้ที่ JSON Web Token (JWT)
อินเทอร์เฟซ "Flip-Back" ของ App Flip
สำหรับ App Flip แอปบนอุปกรณ์เคลื่อนที่ต้องส่งคืนรหัสการให้สิทธิ์หรือโทเค็นเพื่อเข้าถึง ไปยังแอป Google
Android (ผลลัพธ์ของ Intent)
แอปของคุณเปิดขึ้นโดยใช้ Intent หลังจากได้รับความยินยอมแล้ว ระบบจะดำเนินการให้เสร็จสิ้นและส่งคืน ผลลัพธ์ไปยัง Google ดูข้อมูลเพิ่มเติมได้ที่คู่มือการใช้งาน Android
- การดำเนินการ:
com.google.android.gms.auth.CODE_AVAILABLE - พิเศษ:
code,state,access_token,token_type
iOS (URL Scheme ที่กำหนดเองและ Universal Link)
แอปของคุณจะเปิด Google โดยใช้ทั้ง URL Scheme ที่กำหนดเองหรือ Universal Link HTTPS ดูข้อมูลเพิ่มเติมได้ที่คู่มือการใช้งาน iOS
- รูปแบบ:
<return_url>?code=AUTHORIZATION_CODE&state=STATE_STRING