หน้านี้เป็นเอกสารอ้างอิงเกี่ยวกับปลายทางและอินเทอร์เฟซที่ 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 Fragment (ขั้นตอนแบบโดยนัย) โดยขึ้นอยู่กับขั้นตอน OAuth ที่ใช้
| พารามิเตอร์ | คำอธิบาย |
|---|---|
code |
(ต้องระบุสำหรับขั้นตอนรหัสการให้สิทธิ์) รหัสการให้สิทธิ์ที่บริการของคุณสร้างขึ้น |
state |
(ต้องระบุ) ค่าสถานะที่ไม่ได้แก้ไขซึ่งได้รับจาก Google ในตอนแรก |
access_token |
(ต้องระบุสำหรับขั้นตอนการให้สิทธิ์โดยนัย) โทเค็นเพื่อการเข้าถึงที่ใช้ได้นานซึ่งบริการของคุณสร้างขึ้น |
token_type |
(ต้องระบุสำหรับ Implicit Flow) ต้องเป็น bearer |
การตอบกลับข้อผิดพลาด
หากคำขอไปยัง URI เปลี่ยนเส้นทาง OAuth มีรูปแบบไม่ถูกต้อง คุณจะได้รับข้อผิดพลาด HTTP 400 Bad Request เนื้อหาการตอบกลับจะมีออบเจ็กต์ 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 (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 ที่กำหนดเองหรือลิงก์ทั่วไป HTTPS ดูข้อมูลเพิ่มเติมได้ที่คู่มือการใช้งาน iOS
- รูปแบบ:
<return_url>?code=AUTHORIZATION_CODE&state=STATE_STRING