การตรวจสอบสิทธิ์และการให้สิทธิ์ใน Google Data Protocol

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

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

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

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

โดยทั่วไปแล้ว บริการตรวจสอบสิทธิ์และบริการให้สิทธิ์มักเรียกรวมกันว่า auth

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

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

หากแอปพลิเคชันเป็นแกดเจ็ต (สำหรับใช้ใน iGoogle หรือคอนเทนเนอร์ OpenSocial อื่นๆ) โปรดดูส่วนการตรวจสอบสิทธิ์สำหรับแกดเจ็ต

หมายเหตุ: เอกสารนี้มีวัตถุประสงค์เพื่อแสดงภาพรวมของวิธีการตรวจสอบสิทธิ์แต่ละวิธี ดูข้อมูลโดยละเอียดเกี่ยวกับแต่ละวิธีได้ในเอกสารประกอบฉบับเต็มของ Google Account Authentication APIs

ดูกลุ่ม Google Accounts API เพื่อพูดคุยเกี่ยวกับการใช้ Google Accounts API

OAuth - การให้สิทธิ์สำหรับเว็บและแอปพลิเคชันที่ติดตั้ง

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

Google รองรับ OAuth 2 เวอร์ชันสำหรับการรับสิทธิ์เข้าถึงข้อมูล Google ของผู้ใช้ ได้แก่ OAuth 1.0 และ OAuth 2.0 ซึ่งทั้ง 2 เวอร์ชันนี้ให้สิทธิ์เข้าถึงทั้งเว็บแอปพลิเคชันและแอปพลิเคชันที่ติดตั้ง

OAuth 2.0 สำหรับเว็บและแอปพลิเคชันที่ติดตั้ง

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

OAuth 1.0 สำหรับเว็บแอปพลิเคชัน

เว็บแอปพลิเคชันที่ต้องการสิทธิ์เข้าถึงข้อมูลที่เชื่อมโยงกับบัญชี Google หรือบัญชี Google Apps สามารถใช้การติดตั้งใช้งาน OAuth API ของ Google ได้ ดูข้อมูลทั้งหมดเกี่ยวกับการใช้ OAuth สำหรับแอปพลิเคชันบนเว็บ รวมถึงตัวอย่างได้ที่คู่มือ OAuth สำหรับเว็บแอป หรือดูภาพรวมในเอกสารนี้

OAuth 1.0 สำหรับแอปพลิเคชันที่ติดตั้ง

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

การใช้ OAuth กับเว็บแอปพลิเคชัน

Google Data API ทั้งหมดรองรับ OAuth ซึ่งเป็นมาตรฐานแบบเปิดสำหรับการให้สิทธิ์การใช้ข้อมูลในเว็บแอปพลิเคชัน เว็บแอปพลิเคชันทั้งหมดที่ส่งคำขอ OAuth ต้องอัปโหลดใบรับรองความปลอดภัยและลงทะเบียนกับ Google ดูข้อมูลเพิ่มเติมได้ที่การลงทะเบียนสำหรับแอปพลิเคชันบนเว็บ

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

กระบวนการให้สิทธิ์ OAuth

กระบวนการให้สิทธิ์ OAuth เกี่ยวข้องกับการโต้ตอบหลายครั้งระหว่างเว็บแอปพลิเคชันของคุณ เซิร์ฟเวอร์การให้สิทธิ์ของ Google และผู้ใช้ปลายทาง

กระบวนการในระดับพื้นฐานมีดังนี้

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

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

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

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

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

การเตรียมพร้อมสำหรับ OAuth

ก่อนที่จะตั้งค่าแอปพลิเคชันให้ใช้บริการการให้สิทธิ์ของ Google ด้วย OAuth คุณต้องทำตามขั้นตอนต่อไปนี้

การตัดสินใจว่าจะลงทะเบียนเว็บแอปพลิเคชันหรือไม่

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

แอปพลิเคชันต้องลงนามในคำขอ OAuth แต่ละรายการที่ส่ง หากเลือกใช้ลายเซ็น RSA-SHA1 เพื่อลงชื่อคำขอ คุณต้องอัปโหลดใบรับรองความปลอดภัยเป็นส่วนหนึ่งของกระบวนการลงทะเบียน

หรือจะใช้ลายเซ็น HMAC-SHA1 เพื่อลงนามคำขอของคุณก็ได้ ไม่จำเป็นต้องมี ใบรับรองสำหรับลายเซ็น HMAC-SHA1 แต่ Google จะสร้างค่า consumer secret OAuth ซึ่งจะแสดงในหน้าลงทะเบียนของโดเมน หลังจากที่คุณลงทะเบียนแล้ว

ดูข้อมูลเพิ่มเติมเกี่ยวกับกระบวนการลงทะเบียนได้ที่การลงทะเบียนสำหรับ เว็บแอปพลิเคชัน

การกําหนดขอบเขตของข้อมูลที่แอปพลิเคชันจะเข้าถึง

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

โดยทั่วไป คุณควรร้องขอโทเค็นสำหรับขอบเขตที่แคบที่สุดซึ่งรวมถึงข้อมูลที่คุณต้องการ เช่น หากแอปพลิเคชันของคุณต้องเข้าถึงฟีด "ปฏิทินทั้งหมด" ของผู้ใช้ คุณควรขอโทเค็นสำหรับขอบเขต http://www.google.com/calendar/feeds/default/allcalendars/full

การตั้งค่ากลไกเพื่อจัดการโทเค็น OAuth

เมื่อได้รับโทเค็นเพื่อเข้าถึง OAuth สำหรับข้อมูลของผู้ใช้ คุณต้องใช้โทเค็นเพื่อเข้าถึงนั้นสำหรับการโต้ตอบในอนาคตทั้งหมดกับบริการของ Google ที่ระบุในนามของผู้ใช้

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

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

การตั้งค่ากลไกเพื่อขอสิทธิ์เข้าถึงบริการของ Google

คำขอแต่ละรายการไปยังบริการของ Google ต้องได้รับการลงนามและต้องมี โทเค็นเพื่อการเข้าถึง OAuth ที่ถูกต้อง โดยทั่วไป คำขอแต่ละรายการจะอยู่ในรูปแบบคำขอ HTTP GET โดยมีโทเค็นการเข้าถึงและลายเซ็นรวมอยู่ในส่วนหัว คำขอ ที่เขียนข้อมูลใหม่ควรใช้ HTTP POST

ดูข้อมูลเพิ่มเติมเกี่ยวกับรูปแบบคำขอที่เหมาะสมสำหรับ Google Data API แต่ละรายการได้ที่เอกสารประกอบของ API นั้นๆ

การติดตั้งใช้งาน OpenID (ไม่บังคับ)

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

การทำงานกับโทเค็น OAuth

หากต้องการใช้ OAuth แอปพลิเคชันต้องสร้างการเรียกคำขอโทเค็นที่มีรูปแบบถูกต้องและลงนามแล้ว และจัดการการตอบกลับสำหรับลำดับต่อไปนี้

  1. รับโทเค็นคำขอที่ไม่ได้รับอนุญาต (OAuthGetRequestToken)
  2. ให้สิทธิ์โทเค็นคำขอ (OAuthAuthorizeToken)
  3. แลกเปลี่ยนโทเค็นคำขอที่ได้รับอนุญาตเป็นโทเค็นเพื่อการเข้าถึง (OAuthGetAccessToken)

คำขอ OAuth ทั้งหมดต้องลงนาม ไม่ว่าแอปพลิเคชันของคุณจะ ลงทะเบียนหรือไม่ก็ตาม ดูข้อมูลเพิ่มเติมได้ที่การลงนามคำขอ OAuth

คุณทดลองขอและรับโทเค็นการให้สิทธิ์ได้ใน OAuth Playground

ดูเอกสารประกอบแบบละเอียดได้ที่ข้อมูลอ้างอิงเกี่ยวกับ OAuth API

การตั้งค่า URL เรียกกลับ

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

เช่น เมื่อรองรับหลายภาษา คุณสามารถใส่พารามิเตอร์การค้นหา ที่ระบุเวอร์ชันของแอปพลิเคชันที่ผู้ใช้กำลังดู ได้ ค่า oauth_callback ของ "http://www.yoursite.com/Retrievetoken?Lang=de จะทําให้เกิดการเปลี่ยนเส้นทาง "http://www.yoursite.com/Retrievetoken?Lang=de&oauth_token=DQAADKEDE" การแยกวิเคราะห์โทเค็นและพารามิเตอร์ภาษาจะช่วยให้มั่นใจได้ว่าระบบจะเปลี่ยนเส้นทางผู้ใช้กลับไปยังเว็บไซต์เวอร์ชันที่ถูกต้อง

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

การระบุแอปพลิเคชันของคุณต่อผู้ใช้

โดยปกติแล้ว Google จะแสดงชื่อแอปพลิเคชันเมื่อขอสิทธิ์เข้าถึง ความยินยอมจากผู้ใช้ (ดูตัวอย่าง)

หากไม่ได้ลงทะเบียนแอปพลิเคชัน ให้ใช้พารามิเตอร์ xoauth_displayname ในคำขอ OAuthGetRequestToken เพื่อระบุชื่อแอปพลิเคชัน หากไม่ได้ระบุพารามิเตอร์ดังกล่าว Google จะแสดงชื่อโดเมนของ URL ที่ระบุโดยพารามิเตอร์ oauth_callback หากไม่ได้ระบุ URL เรียกกลับ Google จะแสดงสตริง "anonymous"

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

หมายเหตุ: หากต้องการตั้งค่าพารามิเตอร์ xoauth_displayname ใน OAuth Playground ให้เลือกช่อง "ขั้นสูง" ก่อนที่จะดึงโทเค็นคำขอ

การทำงานกับโดเมน Google Apps

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

ข้อมูลเพิ่มเติมเกี่ยวกับ OAuth

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

กลับไปด้านบน

การใช้ OAuth กับแอปพลิเคชันที่ติดตั้ง

Google Data API ทั้งหมดรองรับ OAuth ซึ่งเป็นมาตรฐานแบบเปิดสำหรับการให้สิทธิ์การใช้ข้อมูลในแอปพลิเคชัน แอปพลิเคชันที่ติดตั้งไม่จำเป็นต้องลงทะเบียนกับ Google เพื่อใช้ OAuth

กระบวนการให้สิทธิ์ OAuth

กระบวนการให้สิทธิ์ OAuth เกี่ยวข้องกับการโต้ตอบหลายครั้งระหว่างแอปพลิเคชันของคุณ เซิร์ฟเวอร์การให้สิทธิ์ของ Google และผู้ใช้ปลายทาง

กระบวนการในระดับพื้นฐานมีดังนี้

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

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

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

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

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

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

การเตรียมพร้อมสำหรับ OAuth

ก่อนที่จะตั้งค่าแอปพลิเคชันให้ใช้บริการการให้สิทธิ์ของ Google ด้วย OAuth คุณต้องทำตามขั้นตอนต่อไปนี้

การกําหนดขอบเขตของข้อมูลที่แอปพลิเคชันจะเข้าถึง

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

โดยทั่วไป คุณควรร้องขอโทเค็นสำหรับขอบเขตที่แคบที่สุดซึ่งรวมถึงข้อมูลที่คุณต้องการ เช่น หากแอปพลิเคชันของคุณต้องเข้าถึงฟีด "ปฏิทินทั้งหมด" ของผู้ใช้ คุณควรขอโทเค็นสำหรับขอบเขต http://www.google.com/calendar/feeds/default/allcalendars/full

การตั้งค่ากลไกเพื่อจัดการโทเค็น OAuth

เมื่อได้รับโทเค็นเพื่อเข้าถึง OAuth สำหรับข้อมูลของผู้ใช้ คุณต้องใช้โทเค็นเพื่อเข้าถึงนั้นสำหรับการโต้ตอบในอนาคตทั้งหมดกับบริการของ Google ที่ระบุในนามของผู้ใช้

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

หากแอปพลิเคชันรองรับบัญชีผู้ใช้หลายบัญชี คุณต้องติดตามว่าโทเค็นแต่ละรายการเชื่อมโยงกับบัญชีใด

การตั้งค่ากลไกเพื่อขอสิทธิ์เข้าถึงบริการของ Google

คำขอแต่ละรายการไปยังบริการของ Google ต้องได้รับการลงนามและต้องมี โทเค็นเพื่อการเข้าถึง OAuth ที่ถูกต้อง โดยทั่วไป คำขอแต่ละรายการจะอยู่ในรูปแบบคำขอ HTTP GET โดยมีโทเค็นการเข้าถึงและลายเซ็นรวมอยู่ในส่วนหัว คำขอ ที่เขียนข้อมูลใหม่ควรใช้ HTTP POST

ดูข้อมูลเพิ่มเติมเกี่ยวกับรูปแบบคำขอที่เหมาะสมสำหรับ Google Data API แต่ละรายการได้ที่เอกสารประกอบของ API นั้นๆ

การทำงานกับโทเค็น OAuth

หากต้องการใช้ OAuth แอปพลิเคชันต้องสร้างการเรียกคำขอโทเค็นที่มีรูปแบบถูกต้องและลงนามแล้ว และจัดการการตอบกลับสำหรับลำดับต่อไปนี้

  1. รับโทเค็นคำขอที่ไม่ได้รับอนุญาต (OAuthGetRequestToken)
  2. ให้สิทธิ์โทเค็นคำขอ (OAuthAuthorizeToken)
  3. แลกเปลี่ยนโทเค็นคำขอที่ได้รับอนุญาตเป็นโทเค็นเพื่อการเข้าถึง (OAuthGetAccessToken)

คำขอ OAuth ทั้งหมดต้องลงนาม ไม่ว่าแอปพลิเคชันของคุณจะ ลงทะเบียนหรือไม่ก็ตาม ดูข้อมูลเพิ่มเติมได้ที่การลงนามคำขอ OAuth แอปพลิเคชันที่ติดตั้งควรทำตามวิธีการสำหรับ แอปพลิเคชันที่ไม่ได้ลงทะเบียน

คุณทดลองขอและรับโทเค็นการให้สิทธิ์ได้ใน OAuth Playground

ดูเอกสารประกอบแบบละเอียดได้ที่ข้อมูลอ้างอิงเกี่ยวกับ OAuth API

การระบุแอปพลิเคชันของคุณต่อผู้ใช้

โดยปกติแล้ว Google จะแสดงชื่อแอปพลิเคชันเมื่อขอสิทธิ์เข้าถึง ความยินยอมจากผู้ใช้ (ดูตัวอย่าง)

ใช้พารามิเตอร์ xoauth_displayname ในคำขอ OAuthGetRequestToken เพื่อระบุชื่อแอปพลิเคชัน หากไม่ได้ระบุพารามิเตอร์ดังกล่าว Google จะแสดงชื่อโดเมนของ URL ที่ระบุโดยพารามิเตอร์ oauth_callback หากไม่ได้ระบุ URL เรียกกลับ Google จะแสดงสตริง "anonymous"

หมายเหตุ: หากต้องการตั้งค่าพารามิเตอร์ xoauth_displayname ใน OAuth Playground ให้เลือกช่อง "ขั้นสูง" ก่อนที่จะดึงโทเค็นคำขอ

การเปิดเว็บเบราว์เซอร์

ในกระบวนการให้สิทธิ์ OAuth แอปพลิเคชันของคุณต้องส่งOAuthAuthorizeTokenคำขอ จากนั้นผู้ใช้ต้องเข้าสู่ระบบหน้าเว็บของ Google และให้สิทธิ์คำขอเข้าถึงของแอปพลิเคชัน

  • ควรใช้โหมดตรวจหาอัตโนมัติกับแอปพลิเคชันส่วนใหญ่
  • ควรใช้โหมดอุปกรณ์กับแอปพลิเคชันที่ไม่สามารถเปิดตัวเว็บเบราว์เซอร์แบบเต็มได้
  • ควรใช้โหมดการพัฒนาในช่วงแรกของการพัฒนาเท่านั้น

โหมดตรวจหาอัตโนมัติ

หากเป็นไปได้ แอปพลิเคชันควรเปิดหน้าต่างเบราว์เซอร์และส่งคำขอ OAuthAuthorizeToken เพื่อเปิดหน้า Google เมื่อ Google แสดงโทเค็นที่ได้รับอนุญาต แอปพลิเคชันของคุณควรตรวจหาโทเค็นนี้และกลับมา โฟกัสจากเว็บเบราว์เซอร์

โหมดนี้กำหนดให้คุณต้องระบุ URL การเรียกกลับซึ่งระบบจะเปลี่ยนเส้นทางผู้ใช้ไป หลังจากที่ผู้ใช้ให้สิทธิ์คำขอเข้าถึงของคุณ URL นี้ต้องระบุเป็นพารามิเตอร์ oauth_callback ของคำขอ OAuthGetRequestToken และเป็นพารามิเตอร์ verifier ของคำขอ OAuthGetAccessToken

เพื่อปรับปรุงประสบการณ์ของผู้ใช้ แอปพลิเคชันควรพยายาม ตรวจหาโดยอัตโนมัติเมื่อระบบเปลี่ยนเส้นทางผู้ใช้ไปยัง URL นี้ และนำแอปพลิเคชัน มาไว้ที่เบื้องหน้าทันทีพร้อมส่งคำขอ OAuthGetAccessToken เพื่อดำเนินการตามกระบวนการ OAuth ให้เสร็จสมบูรณ์

ดูข้อมูลเพิ่มเติมและแนวทางปฏิบัติแนะนำได้ที่การตรวจหาการอนุมัติโดยอัตโนมัติ

หากแอปพลิเคชันตรวจหาโดยอัตโนมัติไม่ได้เมื่อระบบเปลี่ยนเส้นทางผู้ใช้ไปยัง URL เรียกกลับ หรือไม่สามารถนำแอปพลิเคชันมาไว้เบื้องหน้าได้ URL เรียกกลับควรแสดงหน้าเว็บที่อธิบายวิธีนำแอปพลิเคชันมาไว้เบื้องหน้าและวิธีเริ่มต้นคำขอ OAuthGetAccessToken จากภายในแอปพลิเคชัน

โหมดอุปกรณ์

หากแอปพลิเคชันเปิดเว็บเบราว์เซอร์แบบเต็มไม่ได้ อุปกรณ์ Rich Client ก็ให้สิทธิ์ โดยไม่ต้องใช้เว็บเบราว์เซอร์ได้เช่นกัน

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

โหมดนักพัฒนาซอฟต์แวร์

เราขอแนะนำให้ใช้โหมดนี้ในระหว่างการพัฒนาแอปพลิเคชันในช่วงแรกเท่านั้น

เช่นเดียวกับในโหมดตรวจหาอัตโนมัติ แอปพลิเคชันของคุณต้องเปิดเบราว์เซอร์ และ ผู้ใช้ต้องให้สิทธิ์คำขอของคุณ อย่างไรก็ตาม คุณสามารถตั้งค่าพารามิเตอร์ oauth_callback เป็น "oob" (นอกแบนด์) แทนการสร้างหน้าเว็บสำหรับ URL เรียกกลับได้

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

ผู้ใช้ต้องกลับไปที่แอปพลิเคชันของคุณและป้อนหมายเลขยืนยัน ก่อนที่คุณจะส่งOAuthGetAccessTokenคำขอได้

ข้อมูลเพิ่มเติมเกี่ยวกับ OAuth

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

กลับไปด้านบน

การใช้ AuthSub สำหรับการให้สิทธิ์

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

กระบวนการให้สิทธิ์ AuthSub

การให้สิทธิ์ด้วย AuthSub เกี่ยวข้องกับลำดับการโต้ตอบระหว่าง 3 ฝ่าย ได้แก่ เว็บแอปพลิเคชัน บริการของ Google และผู้ใช้ แผนภาพนี้แสดงลำดับดังนี้

กระบวนการให้สิทธิ์

  1. เมื่อเว็บแอปพลิเคชันต้องการเข้าถึงบริการของ Google ของผู้ใช้ แอปพลิเคชันจะทำการเรียก AuthSub ไปยังบริการพร็อกซีการให้สิทธิ์ของ Google
  2. บริการให้สิทธิ์จะตอบกลับโดยแสดงหน้าคำขอเข้าถึง หน้านี้ซึ่ง Google จัดการจะแจ้งให้ผู้ใช้ให้/ปฏิเสธสิทธิ์เข้าถึงบริการของ Google ระบบอาจขอให้ผู้ใช้เข้าสู่ระบบบัญชีก่อน
  3. ผู้ใช้จะเป็นผู้เลือกว่าจะให้สิทธิ์เข้าถึงเว็บแอปพลิเคชันหรือไม่ หากผู้ใช้ปฏิเสธการเข้าถึง ระบบจะนำผู้ใช้ไปยังหน้า Google แทนที่จะนำกลับไปยังเว็บแอปพลิเคชัน
  4. หากผู้ใช้ให้สิทธิ์เข้าถึง บริการการให้สิทธิ์จะเปลี่ยนเส้นทางผู้ใช้กลับไปยังเว็บแอปพลิเคชัน การเปลี่ยนเส้นทางมีโทเค็นการให้สิทธิ์ที่ใช้ได้ 1 ครั้ง ซึ่งสามารถแลกเปลี่ยนเป็นโทเค็นที่ใช้ได้นาน
  5. เว็บแอปพลิเคชันจะติดต่อบริการของ Google พร้อมคำขอ โดยใช้โทเค็นการให้สิทธิ์เพื่อทำหน้าที่เป็นตัวแทนของผู้ใช้
  6. หากบริการของ Google รู้จักโทเค็น ระบบจะแสดงข้อมูลที่ขอ

การทำงานกับ AuthSub

การรวม AuthSub เข้ากับเว็บแอปพลิเคชันต้องดำเนินการต่อไปนี้

  1. เลือกว่าจะลงทะเบียนเว็บแอปพลิเคชันหรือไม่

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

    หากลงทะเบียน คุณจะระบุใบรับรองและคีย์ความปลอดภัยได้ด้วย เว็บแอปพลิเคชันที่ลงทะเบียนซึ่งมีใบรับรองในไฟล์จะรับโทเค็นที่ปลอดภัยเพื่อใช้เมื่อขอข้อมูลจากบริการของ Google ได้ (นอกจากนี้ ยังใช้โทเค็นที่ไม่ปลอดภัยได้หากจำเป็น)

  2. ตัดสินใจว่าจะใช้โทเค็นประเภทใดและจะจัดการโทเค็นอย่างไร

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

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

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

  3. กำหนดขอบเขตที่บริการของ Google ต้องใช้เพื่อเข้าถึง

    บริการของ Google แต่ละรายการจะกำหนดระดับและประเภทการเข้าถึงที่จะอนุญาต การเข้าถึงนี้แสดงเป็นค่าขอบเขต ขอบเขตของบริการอาจเป็น URL อย่างง่ายที่ระบุทั้งบริการ หรืออาจระบุการเข้าถึงที่จำกัดมากขึ้น บริการบางอย่างจำกัดการเข้าถึงอย่างมาก เช่น อนุญาตให้เข้าถึงข้อมูลแบบจำกัดได้ในระดับอ่านอย่างเดียว หากต้องการดูขอบเขตที่อนุญาตสำหรับบริการของ Google ที่คุณต้องการเข้าถึง โปรดดูเอกสารประกอบของบริการนั้น คุณควรขอโทเค็นที่มีขอบเขตที่แคบที่สุดเท่าที่จะเป็นไปได้ เช่น หากพยายามเข้าถึงฟีเจอร์ฟีด Atom ของ Gmail ให้ใช้ขอบเขต "http://www.google.com/calendar/feeds/" ไม่ใช่ "http://www.google.com/calendar/" บริการของ Google มีข้อจำกัดมากกว่าเมื่อมีการขอขอบเขตขนาดใหญ่

  4. ตั้งค่ากลไกเพื่อขอและรับโทเค็นการให้สิทธิ์

    กลไกต้องสร้างการเรียก AuthSubRequest ที่มีรูปแบบถูกต้อง รวมถึงระบุค่า URL ของ next และ scope ที่เหมาะสม (กำหนดในขั้นตอนที่ 3) หากคุณใช้โทเค็นที่ปลอดภัยและ/หรือจัดการโทเค็นเซสชัน คำขอต้องมีค่าสำหรับตัวแปรเหล่านี้ด้วย

    URL ถัดไปสามารถมีพารามิเตอร์การค้นหาได้ เช่น เมื่อรองรับหลายภาษา ให้ใส่พารามิเตอร์การค้นหาที่ระบุเวอร์ชันของเว็บแอปพลิเคชันที่ผู้ใช้กำลังดู ค่า next เป็น http://www.yoursite.com/Retrievetoken?Lang=de จะทําให้เกิดการเปลี่ยนเส้นทาง http://www.yoursite.com/Retrievetoken?Lang=de&token=DQAADKEDE การแยกวิเคราะห์โทเค็นและพารามิเตอร์ Lang จะช่วยให้มั่นใจได้ว่าระบบจะเปลี่ยนเส้นทางผู้ใช้กลับไปยังเว็บไซต์เวอร์ชันที่ถูกต้อง

    ในบางกรณี การใช้พารามิเตอร์ hd จะช่วยปรับปรุงประสบการณ์ของผู้ใช้เมื่อระบบขอให้สิทธิ์เข้าถึงในเว็บไซต์บัญชี Google ในกรณีส่วนใหญ่ กระบวนการนี้เป็นเพียงการเข้าสู่ระบบบัญชีและเลือกว่าจะให้สิทธิ์เข้าถึงหรือไม่ อย่างไรก็ตาม ผู้ใช้ที่มีบัญชี Google มากกว่า 1 บัญชี (บัญชี Gmail ปกติและ/หรือบัญชี Google Apps ที่โฮสต์อย่างน้อย 1 บัญชี) อาจต้องทำตามกระบวนการ "การเข้าสู่ระบบแบบสากล" เพิ่มเติมเพื่อระบุบัญชีที่ต้องการเข้าถึง หากแอปพลิเคชันของคุณออกแบบมาสำหรับโดเมนที่มีการจัดการโดเมนใดโดเมนหนึ่ง คุณสามารถข้ามขั้นตอนเพิ่มเติมเหล่านี้ได้โดยใช้พารามิเตอร์นี้เพื่อระบุโดเมนดังกล่าว นอกจากนี้ คุณยังใช้พารามิเตอร์ hd ได้หากแอปพลิเคชันเข้าถึงบริการที่ไม่มีในบัญชีที่โฮสต์ โดยการตั้งค่าเป็น "default" จะจำกัดการให้สิทธิ์เฉพาะบัญชีปกติเท่านั้น เมื่อตั้งค่า hd แล้ว Google จะเลือกบัญชีที่ถูกต้องสำหรับการให้สิทธิ์โดยอัตโนมัติ

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

  5. ตั้งค่ากลไกเพื่อขอโทเค็นเซสชันและจัดเก็บหรือเพิกถอนโทเค็นดังกล่าวหากเกี่ยวข้อง

    คุณอาจต้องสร้างกลไกเพื่อรับและเพิกถอนโทเค็นเซสชัน (AuthSubSessionToken และ AuthSubRevokeToken) ทั้งนี้ขึ้นอยู่กับการตัดสินใจเกี่ยวกับการจัดการโทเค็นในขั้นตอนที่ 2 หากต้องการทดสอบกลไกเซสชันและการเพิกถอน ให้ใช้ AuthSubTokenInfo ซึ่งจะระบุว่าโทเค็นที่ระบุนั้นถูกต้องหรือไม่ หากจัดเก็บโทเค็น แอปพลิเคชันต้องติดตามทั้งรหัสผู้ใช้และบริการ (ขอบเขต) ที่โทเค็นครอบคลุม

  6. ตั้งค่ากลไกเพื่อขอสิทธิ์เข้าถึงบริการของ Google

    โปรดดูเอกสารประกอบสำหรับบริการของ Google เพื่อดูข้อมูลเกี่ยวกับ รูปแบบคำขอที่เหมาะสม คำขอทั้งหมดที่ส่งไปยังบริการของ Google ต้องมีโทเค็นการให้สิทธิ์ที่ถูกต้อง โดยทั่วไป คำขอไปยังบริการของ Google จะอยู่ในรูปแบบ HTTP GET (หรือ POST หากเขียนข้อมูลใหม่) โดยมีการอ้างอิงโทเค็นในส่วนหัวของคำขอ

    ส่วนหัวของคำขอควรมีรูปแบบดังนี้

    Authorization: AuthSub token="token"

    โดย token คือโทเค็นการให้สิทธิ์แบบใช้ครั้งเดียวหรือแบบเซสชันที่ได้รับจาก Google เพื่อตอบสนองต่อคำขอ AuthSub หากโทเค็นมีความปลอดภัย โทเค็นนั้นจะต้องมีลายเซ็นดิจิทัล ดูวิธีการและตัวอย่างได้ที่ "การลงนามคำขอ"

    ตัวอย่างด้านล่างแสดงส่วนหัวของคำขอสำหรับการเรียกใช้บริการฟีด Google ปฏิทิน คำขอนี้มีโทเค็นที่ไม่ปลอดภัย

    GET /calendar/feeds/default/private/full HTTP/1.1
    Content-Type: application/x-www-form-urlencoded
    Authorization: AuthSub token="GD32CMCL25aZ-v____8B"
    User-Agent: Java/1.5.0_06
    Host: www.google.com
    Accept: text/html, image/gif, image/jpeg, *; q=.2, */*; q=.2
    Connection: keep-alive

ข้อมูลเพิ่มเติมเกี่ยวกับ AuthSub

ดูข้อมูลเกี่ยวกับ AuthSub รวมถึงการลงทะเบียนแอปพลิเคชันกับ Google และคำอธิบายโดยละเอียดเกี่ยวกับการแลกเปลี่ยนโทเค็นแบบครั้งเดียวเป็นโทเค็นเซสชันได้ที่แหล่งข้อมูลเพิ่มเติมต่อไปนี้

กลับไปด้านบน

การใช้ ClientLogin สำหรับการให้สิทธิ์

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

การตรวจสอบสิทธิ์สำหรับแอปพลิเคชันที่ติดตั้ง: ClientLogin

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

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

กระบวนการให้สิทธิ์ ClientLogin

การให้สิทธิ์ด้วย ClientLogin เกี่ยวข้องกับลำดับการโต้ตอบระหว่าง 3 เอนทิตี ได้แก่ แอปพลิเคชันที่ติดตั้ง บริการของ Google และผู้ใช้ แผนภาพนี้แสดงลำดับดังนี้

กระบวนการให้สิทธิ์

  1. เมื่อแอปพลิเคชันของบุคคลที่สามต้องการเข้าถึงบริการของ Google ของผู้ใช้ แอปพลิเคชันจะดึงชื่อเข้าสู่ระบบและรหัสผ่านของผู้ใช้
  2. จากนั้นแอปพลิเคชันของบุคคลที่สามจะเรียกใช้ ClientLogin ไปยังบริการการให้สิทธิ์ของ Google
  3. หากบริการให้สิทธิ์ของ Google เห็นว่าจำเป็นต้องมีการตรวจสอบเพิ่มเติม บริการจะแสดงการตอบกลับที่ล้มเหลวพร้อมโทเค็น CAPTCHA และคำท้าในรูปแบบ URL สำหรับรูปภาพ CAPTCHA
  4. หากได้รับคำถาม CAPTCHA แอปพลิเคชันของบุคคลที่สามจะแสดงรูปภาพ CAPTCHA ต่อผู้ใช้และขอคำตอบจากผู้ใช้
  5. หากได้รับแจ้ง ผู้ใช้จะส่งคำตอบสำหรับคำถาม CAPTCHA
  6. แอปพลิเคชันของบุคคลที่สามจะทำการเรียก ClientLogin ใหม่ โดยครั้งนี้จะรวมคำตอบและโทเค็น CAPTCHA (ได้รับพร้อมกับการตอบกลับที่ล้มเหลว)
  7. เมื่อพยายามเข้าสู่ระบบสำเร็จ (มีหรือไม่มีการทดสอบ CAPTCHA) บริการการให้สิทธิ์ของ Google จะแสดงโทเค็นไปยังแอปพลิเคชัน
  8. แอปพลิเคชันจะติดต่อบริการของ Google พร้อมคำขอเข้าถึงข้อมูล โดยอ้างอิงโทเค็นที่ได้รับจากบริการให้สิทธิ์ของ Google
  9. หากบริการของ Google รู้จักโทเค็น ระบบจะให้สิทธิ์เข้าถึงข้อมูลที่ขอ

การใช้ ClientLogin

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

การรวม ClientLogin เข้ากับแอปพลิเคชันของคุณต้องดำเนินการต่อไปนี้

  1. สร้างองค์ประกอบ UI เพื่อบันทึกข้อมูลการเข้าสู่ระบบจากผู้ใช้

    UI ต้องขอชื่อผู้ใช้ (อีเมลรวมถึงโดเมน) และรหัสผ่าน นอกจากนี้ UI ควรแสดงรูปภาพ CAPTCHA ได้ โดยใช้ URL ที่ได้รับจาก Google หากจำเป็น และขอคำตอบที่ถูกต้องจากผู้ใช้ ในอุดมคติ UI ของคุณ จะมีลิงก์ไปยังหน้าเข้าสู่ระบบบัญชี Google ("https://www.google.com/accounts/Login") ในกรณีที่ผู้ใช้ต้องลงชื่อสมัครใช้บัญชีใหม่หรือดำเนินการบำรุงรักษาบัญชีอื่นๆ

  2. เขียนโค้ดเพื่อสร้างคำขอ HTTPS POST ClientLogin ที่มีรูปแบบถูกต้องและส่งคำขอ

    โค้ดนี้ต้องมีตรรกะในการจัดการคำท้า CAPTCHA และมีทั้งพารามิเตอร์ logintoken และ logincaptcha นอกจากนี้ แอปพลิเคชันควรตรวจหาได้ด้วยเมื่อผู้ใช้ละเว้นข้อมูลที่จำเป็น หรือป้อนข้อมูลที่ไม่ถูกต้องซ้ำหลังจากเข้าสู่ระบบไม่สำเร็จ และแสดงข้อผิดพลาดโดยไม่ต้องส่งคำขอที่ไม่จำเป็น

  3. จัดการการตอบกลับจาก Google

    การตอบกลับคำขอเข้าสู่ระบบมี 4 รูปแบบดังนี้

    • สำเร็จ (HTTP 200)
    • ล้มเหลว (HTTP 403) พร้อมรหัสข้อผิดพลาดที่อธิบาย
    • คำขอไม่ถูกต้อง ซึ่งโดยทั่วไปเกิดจากคำขอที่มีรูปแบบไม่ถูกต้อง
    • ไม่ผ่านการทดสอบ CAPTCHA

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

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

    การตอบกลับที่ล้มเหลวพร้อมคำท้า CAPTCHA หมายความว่า Google ได้ตัดสินใจแล้วไม่ว่าด้วยเหตุผลใดก็ตามว่าควรใช้ มาตรการรักษาความปลอดภัยเพิ่มเติม การตอบกลับนี้มาพร้อมกับ URL ของรูปภาพ CAPTCHA และโทเค็นที่แสดงถึง ภารกิจ CAPTCHA ที่เฉพาะเจาะจง

  4. จัดการคำถาม CAPTCHA จาก Google

    หากต้องการจัดการกับคำท้า แอปพลิเคชันต้องแสดงรูปภาพ CAPTCHA และขอคำตอบจากผู้ใช้ หากต้องการแสดงรูปภาพ CAPTCHA ให้ใช้ค่าของ CaptchaUrl ที่ส่งคืนพร้อมกับการตอบกลับที่ล้มเหลว โดยนำหน้าด้วย URL ของบัญชี Google ซึ่งก็คือ "http://www.google.com/accounts/" เมื่อผู้ใช้ตอบคำถามแล้ว แอปพลิเคชันควรส่งคำขอเข้าสู่ระบบอีกครั้ง โดยครั้งนี้ให้รวมโทเค็น CAPTCHA (logintoken) และคำตอบของผู้ใช้ (logincaptcha) ด้วย Google จะตรวจสอบคำตอบของผู้ใช้ก่อนที่จะ อนุญาตให้เข้าถึงบัญชี

    เรามีทางเลือกสำหรับนักพัฒนาแอปที่ไม่ต้องการจัดการกระบวนการรับและส่งการตอบกลับ CAPTCHA ของผู้ใช้ ในการตอบสนองต่อภาพทดสอบ CAPTCHA แอปพลิเคชันสามารถนำผู้ใช้ไปยังหน้าที่ Google โฮสต์ไว้ได้ที่ "https://www.google.com/accounts/DisplayUnlockCaptcha" เมื่อผู้ใช้ตอบคำถามท้าทายได้สำเร็จ เซิร์ฟเวอร์ของ Google จะเชื่อถือ คอมพิวเตอร์ที่ใช้งาน จากนั้นแอปพลิเคชันจะส่งคำขอเข้าสู่ระบบเดิมอีกครั้งเพื่อรับโทเค็นการให้สิทธิ์

  5. หมายเหตุ: Google จะไม่ตรวจสอบความพยายามในการเข้าสู่ระบบก่อนที่จะออกคำถาม CAPTCHA ซึ่งหมายความว่าการพยายามเข้าสู่ระบบอาจ ไม่สำเร็จแม้หลังจากผ่านคำท้า CAPTCHA แล้ว

* CAPTCHA เป็นเครื่องหมายการค้าของมหาวิทยาลัยคาร์เนกีเมลลอน

กลับไปด้านบน

การตรวจสอบสิทธิ์สำหรับแกดเจ็ต

พร็อกซี OAuth

หากสร้างแกดเจ็ตโดยใช้ Gadgets API มาตรฐาน คุณจะใช้ประโยชน์จากฟีเจอร์ของแพลตฟอร์มแกดเจ็ตที่เรียกว่า OAuth Proxy เพื่อเข้าถึง Google Data API ได้ OAuth (อธิบายไว้ข้างต้น) เป็นมาตรฐานการตรวจสอบสิทธิ์ที่อนุญาตให้ผู้ใช้เข้าถึงข้อมูลส่วนตัวในบริการโฮสติ้งแกดเจ็ต เช่น iGoogle, MySpace หรือ Orkut หรือแชร์ข้อมูลกับเว็บไซต์หรือแกดเจ็ตอื่น พร็อกซี OAuth ออกแบบมาเพื่อช่วยให้นักพัฒนาแกดเจ็ตพัฒนาได้ง่ายขึ้นด้วยการซ่อนรายละเอียดการตรวจสอบสิทธิ์ของ OAuth หลายอย่าง พร็อกซีนี้อิงตามโปรเจ็กต์โอเพนซอร์สที่ชื่อ Shindig ซึ่งเป็นการใช้งานข้อกำหนดของแกดเจ็ต

หมายเหตุ: ระบบรองรับพร็อกซี OAuth เฉพาะสำหรับแกดเจ็ตที่ใช้ gadgets.* API และทำงานในคอนเทนเนอร์ OpenSocial โดยไม่รองรับ API ของแกดเจ็ตเดิม

ขั้นตอนการตรวจสอบสิทธิ์

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

  1. แกดเจ็ตจะโหลดเป็นครั้งแรกและพยายามเข้าถึงข้อมูลของผู้ใช้โดยใช้ Google Data API อย่างใดอย่างหนึ่ง
  2. คำขอล้มเหลวเนื่องจากผู้ใช้ไม่ได้ให้สิทธิ์เข้าถึง ออบเจ็กต์การตอบกลับมี URL (ใน response.oauthApprovalUrl) สำหรับหน้าการอนุมัติ OAuth แกดเจ็ตควรมีวิธีเปิดหน้าต่างใหม่ด้วย URL นั้น
  3. ในหน้าการอนุมัติ ผู้ใช้จะเลือกให้หรือปฏิเสธการเข้าถึงแกดเจ็ตของคุณ หากสำเร็จ ระบบจะนำผู้ใช้ไปยังoauth_callbackหน้าที่คุณระบุ โปรดใช้ http://oauth.gmodules.com/gadgets/oauthcallback เพื่อให้ผู้ใช้ได้รับประสบการณ์ที่ดีที่สุด
  4. จากนั้นผู้ใช้จะปิดหน้าต่างป๊อปอัป หากต้องการแจ้งให้แกดเจ็ตทราบว่าผู้ใช้ได้อนุมัติแล้ว คุณสามารถใช้ตัวแฮนเดิลป๊อปอัปเพื่อตรวจหาการปิดหน้าต่างการอนุมัติได้ หรือแกดเจ็ตอาจแสดงลิงก์ (เช่น "ฉันอนุมัติการเข้าถึงแล้ว") ให้ผู้ใช้คลิกหลังจากปิดหน้าต่างนี้
  5. แกดเจ็ตจะพยายามเข้าถึง Google Data API เป็นครั้งที่ 2 โดยการขอข้อมูลของผู้ใช้อีกครั้ง การดำเนินการนี้สำเร็จ
  6. ระบบจะตรวจสอบสิทธิ์แกดเจ็ตของคุณและแกดเจ็ตจะเริ่มทำงานได้ตามปกติ

การตั้งค่าแกดเจ็ต

หากต้องการเข้าถึง Google Data API อย่างน้อย 1 รายการ คุณต้องบอกแกดเจ็ตให้ใช้ OAuth เป็นวิธีการตรวจสอบสิทธิ์ก่อน เพิ่มองค์ประกอบ <OAuth> ในส่วน <ModulePrefs> ของ XML ของแกดเจ็ต

<ModulePrefs>
...
<OAuth>
  <Service name="google">
    <Access url="https://www.google.com/accounts/OAuthGetAccessToken" method="GET" />
    <Request url="https://www.google.com/accounts/OAuthGetRequestToken?
                  scope=http://www.blogger.com/feeds/%20http://www.google.com/calendar/feeds/" method="GET" />
    <Authorization url="https://www.google.com/accounts/OAuthAuthorizeToken?
                        oauth_callback=http://oauth.gmodules.com/gadgets/oauthcallback" />
  </Service>
</OAuth>
...
</ModulePrefs>

ในส่วนนี้ ให้เปลี่ยนเฉพาะพารามิเตอร์การค้นหาต่อไปนี้

scope
พารามิเตอร์ที่จำเป็นใน URL ของคำขอ แกดเจ็ตจะเข้าถึงข้อมูลจาก scope ที่ใช้ในพารามิเตอร์นี้ได้ ในตัวอย่างนี้ แกดเจ็ตจะเข้าถึงข้อมูล Blogger และปฏิทินได้ แกดเจ็ตสามารถขอข้อมูลสำหรับขอบเขตเดียวหรือหลายขอบเขตได้ ดังตัวอย่างนี้
oauth_callback
พารามิเตอร์ที่ไม่บังคับใน URL การให้สิทธิ์ หน้าการอนุมัติ OAuth จะเปลี่ยนเส้นทางไปยัง URL นี้หลังจากที่ผู้ใช้ได้อนุมัติการเข้าถึงข้อมูลแล้ว คุณควรตั้งค่าพารามิเตอร์นี้เป็น http://oauth.gmodules.com/gadgets/oauthcallback เพื่อมอบประสบการณ์การใช้งานที่ดีที่สุดเมื่อผู้ใช้ติดตั้งแกดเจ็ต หน้านั้นมีข้อมูลโค้ด JavaScript ที่จะปิดหน้าต่างป๊อปอัปโดยอัตโนมัติ หรือคุณจะตั้งค่าพารามิเตอร์นี้ให้ชี้ไปยังหน้า "ที่ได้รับอนุมัติ" ของคุณเอง หรือจะปล่อยพารามิเตอร์นี้ว่างไว้ก็ได้

การเข้าถึงฟีด Google Data API ที่ตรวจสอบสิทธิ์แล้ว

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

ข้อมูลเพิ่มเติมเกี่ยวกับแกดเจ็ต

ดูข้อมูลทั้งหมดเกี่ยวกับการสร้างแกดเจ็ต Google Data API ซึ่งรวมถึงรายละเอียดเกี่ยวกับพร็อกซี OAuth, บทความเกี่ยวกับวิธีเริ่มต้นใช้งาน และgadgets.*ข้อกำหนดได้จากแหล่งข้อมูลเพิ่มเติมต่อไปนี้

กลับไปด้านบน