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

กําหนดค่าโปรเจ็กต์และแอป Google Cloud: ในระหว่างการพัฒนา คุณลงทะเบียนแอปในคอนโซล Google Cloud การกําหนดขอบเขตการให้สิทธิ์ และข้อมูลรับรองการเข้าถึงเพื่อตรวจสอบสิทธิ์แอปด้วยคีย์ API, ข้อมูลเข้าสู่ระบบของผู้ใช้ปลายทาง หรือข้อมูลเข้าสู่ระบบของบัญชีบริการ
ตรวจสอบสิทธิ์ของแอปสําหรับการเข้าถึง: เมื่อแอปทํางาน ระบบจะประเมินข้อมูลเข้าสู่ระบบสําหรับการเข้าถึงที่ลงทะเบียนไว้ หากแอปตรวจสอบสิทธิ์แบบผู้ใช้ปลายทาง ระบบอาจแสดงข้อความแจ้งให้ลงชื่อเข้าใช้
ขอทรัพยากร: เมื่อแอปจําเป็นต้องเข้าถึงทรัพยากรของ Google แอปจะถาม Google โดยใช้ขอบเขตการเข้าถึงที่เกี่ยวข้องที่ลงทะเบียนไว้ก่อนหน้านี้
ขอความยินยอมจากผู้ใช้: หากแอปกําลังตรวจสอบสิทธิ์ในฐานะผู้ใช้ปลายทาง Google จะแสดงหน้าจอคํายินยอม OAuth เพื่อให้ผู้ใช้ตัดสินใจได้ว่าจะให้แอปเข้าถึงข้อมูลที่ขอหรือไม่
ส่งคําขอทรัพยากรที่ได้รับอนุมัติ: หากผู้ใช้ให้ความยินยอมในขอบเขตการเข้าถึง แอปจะรวมข้อมูลรับรองและขอบเขตการเข้าถึงที่อนุมัติของผู้ใช้ไว้ในคําขอ คําขอจะส่งไปยังเซิร์ฟเวอร์การให้สิทธิ์ของ Google เพื่อรับโทเค็นเพื่อการเข้าถึง
Google แสดงผลโทเค็นเพื่อการเข้าถึง: โทเค็นเพื่อการเข้าถึงมีรายการขอบเขตการเข้าถึงที่ได้รับ หากรายการขอบเขตที่แสดงผลมีจํานวนมากกว่าขอบเขตการเข้าถึงที่ขอ แอปจะปิดใช้ฟีเจอร์ที่จํากัดด้วยโทเค็น
เข้าถึงทรัพยากรที่ขอ: แอปของคุณใช้โทเค็นเพื่อการเข้าถึงจาก Google เพื่อเรียกใช้ API ที่เกี่ยวข้องและเข้าถึงทรัพยากร
รับโทเค็นการรีเฟรช (ไม่บังคับ): หากแอปต้องการเข้าถึง Google API นอกเหนือจากอายุการใช้งานของโทเค็นเพื่อการเข้าถึงรายการเดียว โทเค็นดังกล่าวอาจได้รับโทเค็นการรีเฟรช
ขอทรัพยากรเพิ่มเติม: หากต้องมีการเข้าถึงเพิ่มเติม แอปจะขอให้ผู้ใช้ให้สิทธิ์ขอบเขตใหม่ ทําให้มีการขอโทเค็นเพื่อการเข้าถึงใหม่ (ขั้นตอนที่ 3-6)
คําศัพท์ที่สําคัญ
ต่อไปนี้เป็นรายการคําศัพท์ที่เกี่ยวข้องกับการตรวจสอบสิทธิ์และการให้สิทธิ์
- การตรวจสอบสิทธิ์
การดําเนินการเพื่อให้มั่นใจว่าผู้ใช้หลักที่อาจเป็นผู้ใช้หรือแอปที่ทําหน้าที่แทนผู้ใช้คือบุคคลที่ระบบพูด เมื่อเขียนแอป Google Workspace คุณควรทราบเกี่ยวกับการตรวจสอบสิทธิ์ประเภทต่อไปนี้
- การตรวจสอบสิทธิ์ผู้ใช้
- การดําเนินการของผู้ใช้ในการตรวจสอบสิทธิ์ (ลงชื่อเข้าใช้) ไปยังแอปของคุณ โดยปกติแล้วการตรวจสอบสิทธิ์ของผู้ใช้จะดําเนินการผ่านขั้นตอนการลงชื่อเข้าใช้ที่ผู้ใช้ใช้ชุดชื่อผู้ใช้และรหัสผ่านเพื่อยืนยันตัวตนของแอป การตรวจสอบสิทธิ์ผู้ใช้จะผสานรวมกับแอปได้โดยใช้การลงชื่อเข้าใช้ด้วย Google
- การตรวจสอบสิทธิ์แอป
- การดําเนินการของแอปที่รับรองโดยตรงกับบริการของ Google ในนามของผู้ใช้ที่ใช้งานแอป โดยปกติแล้วการตรวจสอบสิทธิ์แอปจะดําเนินการโดยใช้ข้อมูลเข้าสู่ระบบที่สร้างขึ้นล่วงหน้าในโค้ดของแอป
- การให้สิทธิ์
สิทธิ์หรือ "author" ครูใหญ่ต้องเข้าถึงข้อมูลหรือดําเนินการต่างๆ การดําเนินการให้สิทธิ์จะดําเนินการผ่านโค้ดที่คุณเขียนในแอป รหัสนี้จะแจ้งให้ผู้ใช้ทราบว่าแอปต้องการดําเนินการในนามของผู้ใช้ และอนุญาตให้ใช้ข้อมูลรับรองที่ไม่ซ้ํากันของแอปเพื่อรับโทเค็นเพื่อการเข้าถึงจาก Google ที่ใช้เข้าถึงข้อมูลหรือดําเนินการ
- ข้อมูลเข้าสู่ระบบ
รูปแบบการระบุตัวตนที่ใช้ในการรักษาความปลอดภัยของซอฟต์แวร์ ในแง่ของการตรวจสอบสิทธิ์ ข้อมูลเข้าสู่ระบบมักจะประกอบด้วยชื่อผู้ใช้/รหัสผ่าน ในแง่ของการให้สิทธิ์สําหรับ Google Workspace API ข้อมูลเข้าสู่ระบบมักจะเป็นรูปแบบการระบุตัวตนบางอย่าง เช่น สตริงข้อมูลลับที่ไม่ซ้ํากัน ซึ่งเกิดขึ้นระหว่างนักพัฒนาแอปและเซิร์ฟเวอร์การตรวจสอบสิทธิ์เท่านั้น Google รองรับข้อมูลรับรองในการตรวจสอบสิทธิ์ ได้แก่ คีย์ API, รหัสไคลเอ็นต์ OAuth 2.0 และบัญชีบริการ
- คีย์ API
- ข้อมูลเข้าสู่ระบบที่ใช้เพื่อขอสิทธิ์เข้าถึงข้อมูลสาธารณะ เช่น ข้อมูลที่ให้ไว้โดยใช้ไฟล์ Maps API หรือ Google Workspace ที่แชร์โดยใช้การตั้งค่า &"อินเทอร์เน็ต" ที่มีลิงก์นี้และการตั้งค่าในการตั้งค่า Google Workspace ที่แชร์
- รหัสไคลเอ็นต์ OAuth 2
- ข้อมูลเข้าสู่ระบบที่ใช้เพื่อขอสิทธิ์เข้าถึงข้อมูลที่เป็นของผู้ใช้ นี่คือข้อมูลเข้าสู่ระบบหลักที่ใช้เมื่อขอสิทธิ์เข้าถึงข้อมูลโดยใช้ Google Workspace API ข้อมูลเข้าสู่ระบบนี้ต้องการความยินยอมของผู้ใช้
- รหัสลับไคลเอ็นต์
- สตริงอักขระที่แอปพลิเคชันและเซิร์ฟเวอร์การให้สิทธิ์ควรรู้จักเท่านั้น รหัสลับไคลเอ็นต์จะปกป้องข้อมูลของผู้ใช้โดยการ มอบโทเค็นให้กับผู้ขอที่ได้รับอนุญาตเท่านั้น คุณไม่ควรระบุรหัสลับไคลเอ็นต์ ในแอปของคุณ
- คีย์บัญชีบริการ
- ใช้โดยบัญชีบริการเพื่อให้สิทธิ์แก่บริการของ Google
- บัญชีบริการ
- ข้อมูลเข้าสู่ระบบที่ใช้สําหรับการโต้ตอบแบบเซิร์ฟเวอร์ต่อเซิร์ฟเวอร์ เช่น แอปที่ไม่มีใบหน้าซึ่งทํางานเป็นกระบวนการเพื่อเข้าถึงข้อมูลบางอย่างหรือดําเนินการบางอย่าง โดยปกติ บัญชีบริการจะใช้เพื่อเข้าถึงข้อมูลและการดําเนินการในระบบคลาวด์ แต่เมื่อใช้ร่วมกับการมอบสิทธิ์ทั่วทั้งโดเมน ก็จะนําไปใช้เพื่อเข้าถึงข้อมูลผู้ใช้ได้
- ขอบเขต
สตริง URI ของ OAuth 2.0 ที่กําหนดระดับการเข้าถึงทรัพยากรหรือการดําเนินการที่แอปให้สิทธิ์ สําหรับ Google Workspace นั้น URI ขอบเขตการให้สิทธิ์จะมีชื่อแอป Google Workspace, ประเภทข้อมูลที่มีสิทธิ์เข้าถึง และระดับการเข้าถึง ผู้ใช้แอปสามารถตรวจสอบขอบเขตที่ขอและเลือกวิธีการเข้าถึง จากนั้นให้เซิร์ฟเวอร์การตรวจสอบสิทธิ์ของ Google แสดงขอบเขตที่อนุญาตไปยังแอปในโทเค็นเพื่อการเข้าถึง ดูรายละเอียดเพิ่มเติมได้ที่วิธีเลือกขอบเขตสําหรับแอป
- เซิร์ฟเวอร์การให้สิทธิ์
เซิร์ฟเวอร์ Google สําหรับการให้สิทธิ์เข้าถึงโดยใช้โทเค็นเพื่อการเข้าถึงไปยังข้อมูลและการดําเนินการที่แอปขอ
- รหัสการให้สิทธิ์
รหัสที่ส่งจากเซิร์ฟเวอร์การให้สิทธิ์ที่ใช้เพื่อรับโทเค็นเพื่อการเข้าถึง ต้องใช้รหัสเมื่อประเภทแอปพลิเคชันของคุณเป็นแอปเว็บเซิร์ฟเวอร์หรือแอปที่ติดตั้ง
- โทเค็นเพื่อการเข้าถึง
โทเค็นที่ให้สิทธิ์เข้าถึง Google Workspace API โทเค็นเพื่อการเข้าถึงรายการเดียวอาจให้ระดับที่แตกต่างกันซึ่งเรียกว่าขอบเขตของการเข้าถึง API หลายรายการ รหัสการให้สิทธิ์ของคุณขอโทเค็นเพื่อการเข้าถึงและใช้เพื่อเรียกใช้ Google Workspace API
- เซิร์ฟเวอร์ทรัพยากร
เซิร์ฟเวอร์ที่โฮสต์ API ที่แอปของคุณต้องการโทร
- เฟรมเวิร์ก OAuth 2.0
มาตรฐานที่แอปสามารถใช้เพื่อมอบ "การเข้าถึงที่ได้รับมอบอํานาจ" หรือการเข้าถึงข้อมูลและการดําเนินการในนามของผู้ใช้แอป กลไกการตรวจสอบสิทธิ์และการให้สิทธิ์ที่คุณใช้ในแอปแสดงถึงการใช้งานเฟรมเวิร์ก OAuth 2.0
- ผู้ใช้หลัก
เอนทิตีหรือที่เรียกว่าข้อมูลประจําตัวที่มอบสิทธิ์เข้าถึงทรัพยากรได้ Google Workspace API รองรับผู้ใช้หลัก 2 ประเภท ได้แก่ บัญชีผู้ใช้และบัญชีบริการ ดูรายละเอียดเพิ่มเติมได้ที่ผู้ใช้หลัก
- ประเภทข้อมูล
ในบริบทของการตรวจสอบสิทธิ์และการให้สิทธิ์ ประเภทข้อมูลหมายถึงเอนทิตีที่เป็นเจ้าของข้อมูลที่แอปพยายามเข้าถึง ข้อมูลมี 3 ประเภทดังนี้
- ข้อมูลสาธารณสมบัติ
- ทุกคนสามารถเข้าถึงข้อมูลได้ เช่น ข้อมูลบางอย่างใน Google Maps ซึ่งโดยปกติแล้วระบบจะเข้าถึงข้อมูลโดยใช้คีย์ API
- ข้อมูลผู้ใช้ปลายทาง
- ข้อมูลที่เป็นของผู้ใช้ปลายทางหรือกลุ่มที่เฉพาะเจาะจง เช่น ไฟล์ Google ไดรฟ์ของผู้ใช้รายหนึ่ง โดยปกติแล้วข้อมูลประเภทนี้จะเข้าถึงได้โดยใช้รหัสไคลเอ็นต์ OAuth 2 หรือบัญชีบริการ
- ข้อมูลในระบบคลาวด์
- ข้อมูลที่เป็นของโปรเจ็กต์ Google Cloud บัญชีบริการประเภทนี้มักจะเข้าถึงข้อมูลประเภทนี้
- ความยินยอมของผู้ใช้
ขั้นตอนการให้สิทธิ์ที่กําหนดให้ผู้ใช้ใช้แอปเพื่อให้สิทธิ์แอปในการเข้าถึงและดําเนินการต่างๆ ในนามของผู้ใช้
- ประเภทแอปพลิเคชัน
ประเภทแอปที่คุณกําลังจะสร้าง เมื่อสร้างข้อมูลเข้าสู่ระบบโดยใช้ Google Cloud Console ระบบจะขอให้คุณเลือกประเภทแอปพลิเคชัน ประเภทแอปพลิเคชัน ได้แก่ เว็บแอปพลิเคชัน (JavaScript), Android, แอป Chrome, iOS, ทีวีและอุปกรณ์อินพุตที่จํากัด, แอปบนเดสก์ท็อป (หรือที่เรียกว่า "แอปที่ติดตั้ง") และแพลตฟอร์ม Universal Windows (UWP)
- บัญชีบริการ
บัญชี Google พิเศษที่มีจุดประสงค์เพื่อแสดงถึงผู้ใช้ที่ไม่ใช่มนุษย์ ซึ่งต้องตรวจสอบสิทธิ์และได้รับอนุญาตให้เข้าถึงข้อมูล แอปพลิเคชันของคุณจะถือว่าข้อมูลประจําตัวของบัญชีบริการเรียก Google API เพื่อให้ผู้ใช้ที่เกี่ยวข้องโดยตรง บัญชีบริการไม่สามารถใช้เพื่อเข้าถึงข้อมูลของผู้ใช้ได้ แต่มีการเข้าถึงข้อมูลที่ปรับแต่งแล้วโดยใช้ Workspace API แต่บัญชีบริการจะเข้าถึงข้อมูลผู้ใช้ได้โดยใช้การมอบสิทธิ์ทั่วทั้งโดเมน ดูรายละเอียดเพิ่มเติมได้ที่การทําความเข้าใจบัญชีบริการ
- การมอบสิทธิ์ทั่วทั้งโดเมน
ฟีเจอร์การดูแลระบบที่ให้สิทธิ์แอปพลิเคชันในการเข้าถึงข้อมูลผู้ใช้ในนามของผู้ใช้ในองค์กร Google Workspace ได้ การมอบสิทธิ์ทั่วทั้งโดเมนสามารถใช้เพื่อดําเนินงานที่เกี่ยวข้องกับผู้ดูแลระบบในข้อมูลผู้ใช้ ผู้ดูแลระบบ Google Workspace จะใช้บัญชีบริการกับ OAuth 2.0 เพื่อมอบสิทธิ์ด้วยวิธีนี้ ด้วยประสิทธิภาพของฟีเจอร์นี้ จะมีเพียงผู้ดูแลระบบขั้นสูงเท่านั้นที่สามารถเปิดใช้การมอบสิทธิ์ทั่วทั้งโดเมน โปรดดูรายละเอียดเพิ่มเติมที่หัวข้อการมอบสิทธิ์ทั่วทั้งโดเมนให้กับบัญชีบริการ
ขั้นตอนถัดไป
กําหนดค่าหน้าจอขอความยินยอม OAuth ของแอป เพื่อให้ผู้ใช้เข้าใจและเลือกว่าจะให้แอปของคุณเข้าถึงข้อมูลใดได้บ้าง