ปฏิบัติตามนโยบาย 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 ในโปรเจ็กต์ใหม่

ไคลเอ็นต์ OAuth ของ Google ที่ใช้ในการผลิตต้องไม่มีสภาพแวดล้อมการทดสอบ, 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

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

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

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

ขั้นตอนการยืนยันหน้าจอคํายินยอม OAuth ของ Google นั้นจําเป็นต้องมีการยืนยันโดเมนทั้งหมดที่เชื่อมโยงกับหน้าแรกของนโยบายความเป็นส่วนตัว ข้อกําหนดในการให้บริการ URL เปลี่ยนเส้นทางที่ได้รับอนุญาต หรือต้นทางของ 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 ในหน้านี้แล้ว โปรดดูรายละเอียดเกี่ยวกับการยืนยันแบรนด์สําหรับขั้นตอนการยืนยัน