Apps Script ต้องใช้การให้สิทธิ์ผู้ใช้ในการเข้าถึงข้อมูลส่วนตัวจากบริการ Google ในตัวหรือบริการขั้นสูงของ Google
การให้สิทธิ์การเข้าถึง
Apps Script จะกำหนดขอบเขตการให้สิทธิ์ (เช่น เข้าถึงไฟล์ Google ชีตหรือ Gmail) โดยอัตโนมัติ โดยอิงตามการสแกนโค้ด โค้ดที่มีการแสดงความคิดเห็นจะยังคงสร้างคำขอการให้สิทธิ์ได้ หากสคริปต์ต้องได้รับสิทธิ์ จะเห็นกล่องโต้ตอบการให้สิทธิ์แสดงขึ้นที่นี่เมื่อเรียกใช้
สคริปต์ที่คุณให้สิทธิ์ก่อนหน้านี้จะขอการให้สิทธิ์เพิ่มเติมด้วย หากการเปลี่ยนแปลงรหัสเพิ่มบริการใหม่ สคริปต์อาจไม่ขอสิทธิ์หากคุณเข้าถึงสคริปต์ในรูปแบบเว็บแอปที่ทำงานภายใต้ตัวตนผู้ใช้ของเจ้าของสคริปต์
การยกเลิกสิทธิ์การเข้าถึง
หากต้องการเพิกถอนการเข้าถึงข้อมูลของสคริปต์ ให้ทำตามขั้นตอนต่อไปนี้
- ไปที่หน้าสิทธิ์ สำหรับบัญชี Google ของคุณ (หากต้องการไปยังหน้านี้ในอนาคต ให้ไปที่ Google.com แล้วคลิกรูปภาพบัญชีของคุณที่มุมขวาบนของหน้าจอ จากนั้นคลิก บัญชีของฉัน จากนั้นคลิกแอปและเว็บไซต์ที่เชื่อมต่อในส่วน "การลงชื่อเข้าใช้และความปลอดภัย" จากนั้นคลิกจัดการแอป)
- คลิกชื่อสคริปต์ที่คุณต้องการเพิกถอนการให้สิทธิ์ แล้วคลิกนำออกทางด้านขวา แล้วคลิกตกลงในกล่องโต้ตอบที่ปรากฏขึ้น
สิทธิ์และประเภทของสคริปต์
ข้อมูลประจำตัวของผู้ใช้ที่สคริปต์เรียกใช้ และข้อมูลที่สคริปต์เข้าถึงได้นั้นแตกต่างกันไปตามสถานการณ์ที่สคริปต์ทำงาน ดังที่แสดงในตารางด้านล่าง
ประเภทสคริปต์ | สคริปต์ทำงานเป็น... |
---|---|
สแตนด์อโลน ส่วนเสริม หรือ ที่ผูกกับเอกสาร ชีต สไลด์ หรือฟอร์ม | ผู้ใช้อยู่ที่แป้นพิมพ์ |
ฟังก์ชันที่กำหนดเองในสเปรดชีต | ผู้ใช้ที่ไม่ระบุชื่อ อย่างไรก็ตาม ขีดจำกัดโควต้าจะนับต่อผู้ใช้บนแป้นพิมพ์ |
เว็บแอปหรือแกดเจ็ต Google Sites | ผู้ใช้ที่แป้นพิมพ์หรือเจ้าของสคริปต์ ซึ่งขึ้นอยู่กับตัวเลือกที่เลือกไว้เมื่อทำให้แอปใช้งานได้ |
ทริกเกอร์ที่ติดตั้งได้ | ผู้ใช้ที่สร้างทริกเกอร์ |
ขอบเขตการให้สิทธิ์ด้วยตนเองสำหรับชีต เอกสาร สไลด์ และฟอร์ม
หากคุณกำลังสร้างส่วนเสริมหรือสคริปต์อื่นๆ ที่ใช้บริการสเปรดชีต บริการเอกสาร บริการสไลด์ หรือบริการฟอร์ม คุณสามารถบังคับให้กล่องโต้ตอบการให้สิทธิ์ขอสิทธิ์เข้าถึงไฟล์ที่ใช้ส่วนเสริมหรือสคริปต์เท่านั้นได้ แทนที่จะมีสเปรดชีต เอกสาร หรือแบบฟอร์มทั้งหมดของผู้ใช้ วิธีการคือ ให้ใส่คำอธิบายประกอบ JsDoc ต่อไปนี้ในความคิดเห็นระดับไฟล์
/**
* @OnlyCurrentDoc
*/
คำอธิบายประกอบตรงข้าม @NotOnlyCurrentDoc
จะพร้อมใช้งานหากสคริปต์ของคุณมีไลบรารีที่ประกาศ @OnlyCurrentDoc
แต่ในความเป็นจริงสคริปต์หลักต้องการเข้าถึงไฟล์ปัจจุบันมากกว่าไฟล์ปัจจุบัน
วงจรการให้สิทธิ์สำหรับส่วนเสริม
โดยทั่วไปแล้ว ส่วนเสริมสำหรับ Google ชีต, เอกสาร, สไลด์ และฟอร์มจะใช้รูปแบบการให้สิทธิ์เดียวกันกับสคริปต์ที่เชื่อมโยงกับเอกสาร แต่ในบางสถานการณ์ ฟังก์ชัน onOpen(e)
และ onEdit(e)
จะทำงานในโหมดไม่ให้สิทธิ์ซึ่งจะทำให้เกิดความซับซ้อนเพิ่มเติม โปรดดูข้อมูลเพิ่มเติมที่คำแนะนำเกี่ยวกับวงจรการให้สิทธิ์ส่วนเสริม
ขีดจำกัดผู้ใช้แอปพลิเคชัน OAuth
แอปพลิเคชันที่ใช้ OAuth เพื่อเข้าถึงข้อมูลผู้ใช้ Google ซึ่งรวมถึงโปรเจ็กต์ Apps Script จะอยู่ภายใต้ขีดจำกัดการให้สิทธิ์ โปรดดูรายละเอียดที่ขีดจำกัดผู้ใช้แอปพลิเคชัน OAuth