หากแอปขอสิทธิ์เพื่อใช้ Google APIs เพื่อเข้าถึงข้อมูลผู้ใช้ Google คุณอาจต้องดำเนินขั้นตอนการยืนยันให้เสร็จสมบูรณ์ก่อนที่จะเผยแพร่แอปต่อสาธารณะเป็นครั้งแรก
ข้อกําหนดนี้มีผลกับแอปของคุณหรือไม่นั้นขึ้นอยู่กับ 2 ปัจจัยต่อไปนี้
- ประเภทของข้อมูลผู้ใช้ที่คุณเข้าถึง เช่น ข้อมูลโปรไฟล์สาธารณะ รายการในปฏิทิน ไฟล์ในไดรฟ์ ข้อมูลสุขภาพและการออกกำลังกายบางอย่าง ฯลฯ
- ระดับการเข้าถึงที่คุณต้องการ เช่น อ่านอย่างเดียว อ่านและเขียน ฯลฯ
เมื่อใช้ OAuth 2.0 เพื่อขอสิทธิ์จากบัญชี Google ให้เข้าถึงข้อมูล คุณจะใช้สตริงที่เรียกว่าขอบเขตเพื่อระบุประเภทข้อมูลที่ต้องการเข้าถึงในนามของบัญชีนั้นได้ หากแอปมีขอบเขตคำขอที่จัดอยู่ในหมวดหมู่ ละเอียดอ่อนหรือ ถูกจำกัด คุณอาจต้องทำขั้นตอนการยืนยันให้เสร็จสมบูรณ์เว้นแต่ การใช้งานแอปจะมีคุณสมบัติตรงตามเกณฑ์ข้อยกเว้น
ตัวอย่างของขอบเขตที่มีความละเอียดอ่อน ได้แก่ การอ่านกิจกรรมที่จัดเก็บไว้ใน Google ปฏิทิน การจัดเก็บรายชื่อติดต่อใหม่ใน Google Contacts หรือการลบวิดีโอ YouTube ดูข้อมูลเพิ่มเติมเกี่ยวกับขอบเขตที่พร้อมใช้งานและการแยกประเภทได้จากเอกสารอ้างอิงของปลายทาง API ที่แอปเรียกใช้และคู่มือการให้สิทธิ์ที่เกี่ยวข้องที่เผยแพร่สำหรับ API
คุณต้องขอขอบเขตที่ต้องใช้สิทธิ์เข้าถึงจำนวนน้อยที่สุดในการเข้าถึงข้อมูลผู้ใช้ที่จำเป็นต่อการจัดหาฟังก์ชันดังกล่าว ตัวอย่างเช่น แอปที่อ่านเฉพาะข้อมูลต้องไม่ขอสิทธิ์เข้าถึงเพื่ออ่าน เขียน และลบเนื้อหาเมื่อมีขอบเขตที่แคบลงสำหรับ API และปลายทางที่เกี่ยวข้อง ข้อมูลที่คุณได้รับจาก Google API ต้องใช้โดยสอดคล้องกับนโยบายของ API และในลักษณะที่คุณเป็นตัวแทนให้ผู้ใช้ทราบในการดำเนินการในแอปและในนโยบายความเป็นส่วนตัวของคุณเท่านั้น
อย่าลืมคำนึงถึงเวลาที่จำเป็นในการยืนยันแผนการเปิดตัวของแอปหรือฟีเจอร์ใหม่ๆ ที่จำเป็นต้องมีขอบเขตใหม่ โดยทั่วไปกระบวนการยืนยันขอบเขตที่มีความละเอียดอ่อนจะใช้เวลา 3-5 วันทำการจึงจะเสร็จสมบูรณ์ โปรดทราบว่าแอปของคุณอาจมีสิทธิ์ทำการยืนยันแบรนด์ซึ่งเป็นส่วนหนึ่งของคำขอการยืนยันขอบเขตที่มีความละเอียดอ่อน
ทำความเข้าใจขอบเขตที่มีความละเอียดอ่อน
ขอบเขตที่ละเอียดอ่อนต้องได้รับการตรวจสอบโดย Google ก่อนบัญชี Google ใดๆ จึงจะให้สิทธิ์เข้าถึงได้ ผู้ดูแลระบบองค์กร Google Workspace อาจจำกัดการเข้าถึงขอบเขตที่มีความละเอียดอ่อนเพื่อป้องกันการเข้าถึงโดยรหัสไคลเอ็นต์ OAuth ที่องค์กรไม่ได้ทำเครื่องหมายว่าเชื่อถือได้อย่างชัดแจ้ง
ทำความเข้าใจการใช้งานขอบเขต
- ตรวจสอบขอบเขตที่แอปใช้หรือคุณต้องการใช้ หากต้องการค้นหาการใช้งานขอบเขตที่มีอยู่ ให้ตรวจสอบซอร์สโค้ดของแอปเพื่อหาขอบเขตที่ส่งพร้อมคำขอการให้สิทธิ์
- กำหนดว่าขอบเขตที่ขอแต่ละรายการจำเป็นสำหรับการดำเนินการตามวัตถุประสงค์ของฟีเจอร์แอป และใช้สิทธิ์ขั้นต่ำที่สุดที่จำเป็นต่อการให้บริการฟีเจอร์นี้ โดยทั่วไป Google API จะมีเอกสารอ้างอิงใน หน้า Google Developers ของผลิตภัณฑ์สำหรับปลายทางที่มีขอบเขตที่จำเป็นต่อการเรียกใช้ปลายทางหรือพร็อพเพอร์ตี้ที่เฉพาะเจาะจงภายใน สำหรับข้อมูลเพิ่มเติมเกี่ยวกับขอบเขตการเข้าถึงที่จำเป็นของปลายทาง API ที่แอปเรียกใช้ โปรดอ่านเอกสารอ้างอิงของปลายทางเหล่านั้น
- ข้อมูลที่คุณได้รับจาก Google API ต้องใช้โดยสอดคล้องกับนโยบายของ API และในลักษณะที่คุณเป็นตัวแทนให้ผู้ใช้ทราบในการดำเนินการในแอปและในนโยบายความเป็นส่วนตัวของคุณเท่านั้น
- ดูข้อมูลเพิ่มเติมเกี่ยวกับแต่ละขอบเขต รวมถึงสถานะ sensitive or restricted ที่เป็นไปได้ในเอกสารประกอบของ API
- ประกาศขอบเขตทั้งหมดที่แอปใช้ในหน้าขอบเขตการกำหนดค่าหน้าจอยินยอม OAuth ของ API Consoleขอบเขตที่คุณระบุจะจัดอยู่ในหมวดหมู่ที่ละเอียดอ่อนหรือหมวดหมู่ที่จำกัดเพื่อไฮไลต์การยืนยันที่จำเป็นเพิ่มเติม
- ค้นหาขอบเขตที่ดีที่สุดซึ่งตรงกับข้อมูลที่การผสานรวมใช้ ทำความเข้าใจการใช้งาน ยืนยันอีกครั้งว่าทุกอย่างยังใช้งานได้ในสภาพแวดล้อมการทดสอบ แล้วจึงเตรียมส่งเข้ารับการยืนยัน
![ตารางแสดงชื่อของ API, หนึ่งในขอบเขตที่มีความละเอียดอ่อนของ API และคำอธิบายเกี่ยวกับขอบเขตที่ครอบคลุม](https://google-developers.gonglchuangl.net/static/identity/protocols/oauth2/images/examples/sensitive-scope-example.png?authuser=1&hl=th)
ขั้นตอนในการเตรียมพร้อมสำหรับการยืนยัน
แอปทั้งหมดที่ใช้ Google API เพื่อขอสิทธิ์เข้าถึงข้อมูลต้องทำตามขั้นตอนต่อไปนี้เพื่อยืนยันแบรนด์ให้เสร็จสมบูรณ์
- ยืนยันว่าแอปของคุณไม่ได้อยู่ภายใต้กรณีการใช้งานใดๆ ในส่วนข้อยกเว้นของข้อกำหนดการยืนยัน
- ตรวจสอบว่าแอปเป็นไปตามข้อกำหนดการสร้างแบรนด์ของ API หรือผลิตภัณฑ์ที่เกี่ยวข้อง ตัวอย่างเช่น ดูหลักเกณฑ์การสร้างแบรนด์สำหรับขอบเขตของ Google Sign-In
- ยืนยันการเป็นเจ้าของโดเมนที่ได้รับอนุญาตของโปรเจ็กต์ใน Google Search Console ใช้บัญชี Google ที่เชื่อมโยงกับ API Console โปรเจ็กต์ของคุณในฐานะเจ้าของหรือผู้แก้ไข
- ตรวจสอบว่าข้อมูลแบรนด์ทั้งหมดในหน้าจอคำยินยอม OAuth เช่น ชื่อแอป, อีเมลการสนับสนุน, URI หน้าแรก, URI นโยบายความเป็นส่วนตัว ฯลฯ แสดงถึงข้อมูลประจำตัวของแอปอย่างถูกต้อง
ข้อกำหนดหน้าแรกของแอปพลิเคชัน
ตรวจสอบว่าหน้าแรกเป็นไปตามข้อกำหนดต่อไปนี้
- หน้าแรกของเว็บไซต์ของคุณต้องเข้าถึงได้แบบสาธารณะ ไม่ใช่แค่ผู้ใช้ที่ลงชื่อเข้าสู่ระบบของเว็บไซต์เท่านั้น
- ความเกี่ยวข้องของหน้าแรกกับแอปที่อยู่ระหว่างตรวจสอบต้องชัดเจน
- ลิงก์ไปยังข้อมูลของแอปใน Google Play Store หรือหน้า Facebook ไม่ถือว่าเป็นหน้าแรกของแอปพลิเคชันที่ถูกต้อง
ข้อกำหนดเกี่ยวกับลิงก์นโยบายความเป็นส่วนตัวของแอปพลิเคชัน
ตรวจสอบว่านโยบายความเป็นส่วนตัวของแอปเป็นไปตามข้อกำหนดต่อไปนี้
- นโยบายความเป็นส่วนตัวต้องปรากฏให้ผู้ใช้เห็น ที่โฮสต์ภายในโดเมนเดียวกับหน้าแรกของแอปพลิเคชัน และลิงก์บนหน้าจอความยินยอม OAuth ของ Google API Consoleโปรดทราบว่าหน้าแรกต้องมีคำอธิบายฟังก์ชันการทำงานของแอป รวมถึงลิงก์ไปยังนโยบายความเป็นส่วนตัวและข้อกำหนดในการให้บริการที่ไม่บังคับ
- นโยบายความเป็นส่วนตัวต้องเปิดเผยวิธีที่แอปพลิเคชันของคุณเข้าถึง ใช้ จัดเก็บ หรือแชร์ข้อมูลผู้ใช้ Google คุณต้องจำกัดการใช้ข้อมูลผู้ใช้ Google ตามแนวทางปฏิบัติตามที่นโยบายความเป็นส่วนตัวที่คุณเผยแพร่เปิดเผยไว้
วิธีส่งแอปเข้ารับการยืนยัน
Google API Console โปรเจ็กต์จะจัดระเบียบทรัพยากร API Console ทั้งหมดของคุณ โปรเจ็กต์ประกอบด้วยชุดบัญชี Google ที่เชื่อมโยงซึ่งมีสิทธิ์ดำเนินการโปรเจ็กต์ ชุด API ที่เปิดใช้ รวมถึงการตั้งค่าการเรียกเก็บเงิน การตรวจสอบสิทธิ์ และการตรวจสอบสำหรับ API เหล่านั้น เช่น โปรเจ็กต์อาจมีไคลเอ็นต์ OAuth อย่างน้อย 1 รายการ กำหนดค่า API เพื่อให้ไคลเอ็นต์เหล่านั้นใช้งาน และกำหนดค่าหน้าจอคำยินยอม OAuth ที่จะแสดงต่อผู้ใช้ก่อนที่จะให้สิทธิ์เข้าถึงแอปได้
หากไคลเอ็นต์ OAuth ใดยังไม่พร้อมสำหรับการใช้งานจริง เราขอแนะนำให้คุณลบไคลเอ็นต์เหล่านั้นออกจากโปรเจ็กต์ที่ขอรับการยืนยัน โดยทำได้ใน Google API Console
หากต้องการส่งเพื่อรับการยืนยัน ให้ทำตามขั้นตอนต่อไปนี้
- ตรวจสอบว่าแอปเป็นไปตามข้อกำหนดในการให้บริการ Google APIs และนโยบายข้อมูลผู้ใช้สำหรับบริการ Google API
- อัปเดตบทบาทเจ้าของและผู้แก้ไขของบัญชีที่เชื่อมโยงของโปรเจ็กต์ให้เป็นปัจจุบัน รวมถึงอีเมลการสนับสนุนผู้ใช้ของหน้าจอขอความยินยอม OAuth และข้อมูลติดต่อของนักพัฒนาซอฟต์แวร์ใน API Consoleการดำเนินการนี้ช่วยให้สมาชิกในทีมของคุณได้รับแจ้งเกี่ยวกับข้อกำหนดใหม่อย่างถูกต้อง
- ไปที่ API Console OAuth Consent Screen page
- คลิกปุ่มตัวเลือกโปรเจ็กต์
-
ในกล่องโต้ตอบเลือกจากที่ปรากฏขึ้น ให้เลือกโปรเจ็กต์ของคุณ หากไม่พบโปรเจ็กต์ แต่ทราบรหัสโปรเจ็กต์ คุณจะสร้าง URL ในเบราว์เซอร์ในรูปแบบต่อไปนี้ได้
https://console.developers.google.com/apis/credentials/consent?project=[PROJECT_ID]
แทนที่ [PROJECT_ID] ด้วยรหัสโปรเจ็กต์ที่ต้องการใช้
- เลือกปุ่มแก้ไขแอป
- ป้อนข้อมูลที่จำเป็นในหน้าหน้าจอคำยินยอม OAuth จากนั้นเลือกปุ่มบันทึกและดำเนินการต่อ
- ใช้ปุ่มเพิ่มหรือนำขอบเขตออกเพื่อประกาศขอบเขตทั้งหมดที่แอปขอ ชุดขอบเขตเริ่มต้นที่จำเป็นสำหรับ Google Sign-In จะมีการกรอกไว้ล่วงหน้าในส่วนขอบเขตที่ไม่มีความละเอียดอ่อน ขอบเขตที่เพิ่มจะมีการจัดประเภทเป็นไม่มีความละเอียดอ่อน sensitive, or restricted
- ระบุลิงก์สูงสุด 3 รายการไปยังเอกสารประกอบที่เกี่ยวข้องสำหรับฟีเจอร์ที่เกี่ยวข้องในแอปของคุณ
-
ระบุข้อมูลเพิ่มเติมที่ขอเกี่ยวกับแอปใน ขั้นตอนถัดไป
- Prepare a detailed justification for each requested sensitive scope, as well as an explanation
for why a narrower scope isn't sufficient. For example: "My app will use
https://www.googleapis.com/auth/calendar
to show a user's Google calendar data on the scheduling screen of my app. This lets users manage their schedules through my app and sync the changes with their Google calendar." -
Prepare a video that fully demonstrates how a user initiates and grants access to the requested scopes and shows, in detail, the usage of the granted sensitive and restricted scopes in the app. Upload the video to YouTube Studio and set its Visibility as Unlisted. You need to provide a link to the demonstration video in the YouTube link field.
- Show the OAuth grant process that users will experience, in English. This includes the consent flow and, if you use Google Sign-In, the sign-in flow.
- Show that the OAuth consent screen correctly displays the App Name.
- Show that the browser address bar of the OAuth consent screen correctly includes your app's OAuth client ID.
- To show how the data will be used, demonstrate the functionality that's enabled by each sensitive scope that you request.
- Prepare a detailed justification for each requested sensitive scope, as well as an explanation
for why a narrower scope isn't sufficient. For example: "My app will use
- หากการกำหนดค่าแอปที่ระบุต้องมีการยืนยัน คุณจะมีโอกาสส่งแอปเพื่อรับการยืนยัน กรอกข้อมูลในช่องที่ต้องกรอกแล้วคลิกส่งเพื่อเริ่มกระบวนการยืนยัน
หลังจากส่งแอปแล้ว ทีมความน่าเชื่อถือและความปลอดภัยของ Google จะติดต่อคุณทางอีเมลพร้อมข้อมูลเพิ่มเติมที่ต้องการหรือขั้นตอนที่คุณต้องดำเนินการ ตรวจสอบอีเมลของคุณในส่วนข้อมูลติดต่อของนักพัฒนาแอปและอีเมลสนับสนุนของหน้าจอคำยินยอม OAuth เพื่อขอข้อมูลเพิ่มเติม นอกจากนี้ คุณยังดูหน้าคำยินยอม OAuth ของโปรเจ็กต์เพื่อยืนยันสถานะการตรวจสอบปัจจุบันของโปรเจ็กต์ได้ รวมถึงระบุว่ากระบวนการตรวจสอบจะหยุดชั่วคราวขณะที่เรารอการตอบกลับหรือไม่
ข้อยกเว้นสำหรับข้อกำหนดในการยืนยัน
หากจะใช้แอปของคุณในสถานการณ์ใดก็ตามที่อธิบายไว้ในส่วนต่อไปนี้ คุณไม่จำเป็นต้องส่งแอปเข้ารับการตรวจสอบ
การใช้งานส่วนตัว
กรณีการใช้งานหนึ่งคือหากคุณเป็นผู้ใช้แอปเพียงคนเดียวหรือมีผู้ที่ใช้แอปเพียงไม่กี่คน ซึ่งทุกคนรู้จักคุณเป็นการส่วนตัว คุณและผู้ใช้จำนวนจำกัดอาจรู้สึกสบายใจที่จะไปยัง หน้าจอแอปที่ยังไม่ได้ยืนยันและให้สิทธิ์บัญชีส่วนตัวในการเข้าถึงแอปได้
โปรเจ็กต์ที่ใช้ในระดับการพัฒนา การทดสอบ หรือการจัดวาง
เราขอแนะนำให้คุณมีโปรเจ็กต์ที่แตกต่างกันสำหรับสภาพแวดล้อมการทดสอบและสภาพแวดล้อมการใช้งานจริงเพื่อให้เป็นไปตามนโยบายของ Google OAuth 2.0 เราขอแนะนำให้ส่งแอปเพื่อรับการยืนยันในกรณีที่ต้องการให้แอปพร้อมใช้งานสำหรับผู้ใช้ที่มีบัญชี Google เท่านั้น ดังนั้น หากแอปอยู่ในขั้นตอนการพัฒนา ทดสอบ หรือทดลองใช้ คุณก็ไม่จำเป็นต้องทำการยืนยัน
หากแอปอยู่ระหว่างการพัฒนาหรือการทดสอบ คุณสามารถคง สถานะการเผยแพร่ ไว้ในการตั้งค่าเริ่มต้นของ การทดสอบ ได้ การตั้งค่านี้หมายความว่าแอปของคุณยังอยู่ระหว่างการพัฒนาและจะพร้อมใช้งานสำหรับผู้ใช้ที่คุณเพิ่มลงในรายชื่อผู้ใช้ทดสอบเท่านั้น คุณต้องจัดการรายการบัญชี Google ที่เกี่ยวข้องกับการพัฒนาหรือการทดสอบแอป
![ข้อความเตือนว่า Google ยังไม่ได้ยืนยันแอปที่อยู่ระหว่างการทดสอบ](https://google-developers.gonglchuangl.net/static/identity/protocols/oauth2/images/examples/tester-warning-screen.png?authuser=1&hl=th)
ข้อมูลที่เป็นของบริการเท่านั้น
หากแอปใช้บัญชีบริการเพื่อเข้าถึงเฉพาะข้อมูลของแอป และไม่ได้เข้าถึงข้อมูลผู้ใช้ (ลิงก์กับบัญชี Google) คุณไม่จำเป็นต้องส่งเพื่อขอรับการยืนยัน
หากต้องการทำความเข้าใจว่าบัญชีบริการคืออะไร โปรดดูบัญชีบริการในเอกสารประกอบของ Google Cloud ดูวิธีใช้บัญชีบริการที่หัวข้อการใช้ OAuth 2.0 สำหรับแอปพลิเคชันแบบเซิร์ฟเวอร์ต่อเซิร์ฟเวอร์
ใช้ภายในเท่านั้น
ซึ่งหมายความว่ามีเพียงบุคคลในองค์กร Google Workspace หรือ Cloud Identity ของคุณเท่านั้น โปรเจ็กต์ต้องเป็นขององค์กรและต้องกำหนดค่าหน้าจอคำยินยอม OAuth สำหรับประเภทผู้ใช้ภายใน ในกรณีนี้ แอปอาจต้องได้รับการอนุมัติจากผู้ดูแลระบบองค์กร ดูข้อมูลเพิ่มเติมได้ที่ข้อควรพิจารณาเพิ่มเติมสำหรับ Google Workspace
- ดูข้อมูลเพิ่มเติมเกี่ยวกับแอปพลิเคชันสาธารณะและแอปพลิเคชันภายใน
- ดูวิธีทําเครื่องหมายแอปของคุณว่าเป็นแอปภายในได้ในคําถามที่พบบ่อย ฉันจะทําเครื่องหมายแอปว่าเป็นแอปภายในเท่านั้นได้อย่างไร
การติดตั้งทั่วทั้งโดเมน
หากวางแผนที่จะกำหนดเป้าหมายแอปให้เฉพาะผู้ใช้ขององค์กร Google Workspace หรือ Cloud Identity และใช้การติดตั้งทั่วทั้งโดเมนเสมอ แอปจะไม่จำเป็นต้องใช้การยืนยันแอป เนื่องจากการติดตั้งทั่วทั้งโดเมนช่วยให้ผู้ดูแลระบบโดเมนสามารถให้สิทธิ์แอปพลิเคชันของบุคคลที่สามและแอปพลิเคชันภายในในการเข้าถึงข้อมูลของผู้ใช้ได้ ผู้ดูแลระบบองค์กรเป็นบัญชีเดียวที่เพิ่มแอปลงในรายการที่อนุญาตเพื่อใช้ภายในโดเมนได้
ดูวิธีทำให้แอปเป็นแบบติดตั้งทั่วทั้งโดเมนได้ในคำถามที่พบบ่อย แอปพลิเคชันของฉันมีผู้ใช้ที่มีบัญชีองค์กรจากโดเมน Google Workspace อื่น