ปฏิบัติตามนโยบาย OAuth 2.0

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

ใช้โปรเจ็กต์แยกกันสำหรับการทดสอบและเวอร์ชันที่ใช้งานจริง

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

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

  1. Go to the Google API Console. Click Create project, enter a name, and click Create.
  2. ตรวจสอบไคลเอ็นต์ OAuth ในโปรเจ็กต์นี้ที่อาจเชื่อมโยงกับระดับการทดสอบ สร้างไคลเอ็นต์ OAuth ที่คล้ายกันสำหรับไคลเอ็นต์เวอร์ชันที่ใช้งานจริงในโปรเจ็กต์ที่ใช้งานจริง (หากมี)
  3. เปิดใช้ API ซึ่งไคลเอ็นต์ใช้อยู่
  4. ตรวจสอบการกำหนดค่าหน้าจอยินยอม OAuth ในโปรเจ็กต์ใหม่

ไคลเอ็นต์ Google OAuth ที่ใช้ในเวอร์ชันที่ใช้งานจริงต้องไม่มีสภาพแวดล้อมการทดสอบ, URI การเปลี่ยนเส้นทาง หรือต้นทาง JavaScript ที่มีเพียงคุณหรือทีมพัฒนาเท่านั้นที่จะใช้ได้ โดยตัวอย่างมีดังนี้

  • เซิร์ฟเวอร์ทดสอบของนักพัฒนาซอฟต์แวร์แต่ละราย
  • เวอร์ชันทดสอบหรือเวอร์ชันทดลองของแอป

ดูแลรักษารายการรายชื่อติดต่อที่เกี่ยวข้องกับโปรเจ็กต์

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

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

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

แสดงตัวตนของคุณอย่างถูกต้อง

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

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

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

ขอเฉพาะขอบเขตที่จำเป็น

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

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

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

ส่งแอปเวอร์ชันที่ใช้งานจริงที่ใช้ขอบเขตที่ละเอียดอ่อนหรือจำกัดสำหรับการยืนยัน

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

ใช้โดเมนที่คุณเป็นเจ้าของเท่านั้น

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

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

โฮสต์หน้าแรกสำหรับแอปเวอร์ชันที่ใช้งานจริง

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

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

ใช้ URI การเปลี่ยนเส้นทางที่ปลอดภัยและต้นทาง JavaScript

ไคลเอ็นต์ OAuth 2.0 สำหรับเว็บแอปต้องรักษาความปลอดภัยของข้อมูลโดยใช้ URI การเปลี่ยนเส้นทาง HTTPS และต้นทาง JavaScript ไม่ใช่ HTTP แบบธรรมดา Google สามารถปฏิเสธคำขอ OAuth ที่ไม่ได้มีต้นทางหรือมีการแก้ไขให้ในบริบทที่ปลอดภัยได้

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

ขั้นตอนถัดไป

หลังจากที่มั่นใจว่าแอปเป็นไปตามนโยบาย OAuth 2.0 ในหน้านี้แล้ว โปรดดูรายละเอียดเกี่ยวกับกระบวนการยืนยันในส่งเพื่อยืนยันแบรนด์