如何阻止拥有编辑权限的用户手动编辑关联Web App的Google表格?
解决Google Apps Script Web应用表格权限冲突的方案
方法1:隔离用户与表格的直接访问(最推荐)
- 把Web应用部署成以你(开发者)的身份运行,而不是用户自己的身份。
- 部署时访问权限选「任何人,甚至匿名」或者「任何人」(根据你是否需要限制访问人群来选)。
- 只给用户发Web应用的链接就行,不用共享表格。用户通过Web应用提交的数据会以你的账号身份写入表格,他们根本碰不到表格,自然没法手动修改。
- 补充:这种方式下所有提交记录会显示是你操作的,如果要区分是谁提交的,记得在Web应用里加个收集用户邮箱或标识的字段,一起写到表格里。
方法2:用表格保护功能锁死编辑范围
- 要是非得给用户表格权限,就用Google表格的「保护范围」功能:
- 选中Web应用要写入数据的目标列/行,右键选「保护范围」。
- 在侧边栏把编辑权限设为「仅特定用户」,只添加你自己的账号,其他用户设置为只能查看。
- 这样用户就算能打开表格,也改不了数据区域,只能查看内容。
方法3:用Sheets API配合服务账号(适合复杂场景)
- 如果你需要更精细的权限控制,可以用Google Sheets API来处理数据写入:
- 创建一个服务账号,给它表格的编辑权限。
- 在Web应用里调用Sheets API,用服务账号的密钥做身份验证,实现数据写入。
- 用户只有Web应用的访问权,完全接触不到表格,彻底杜绝手动编辑的可能。
内容的提问来源于stack exchange,提问作者Emily George
相关产品推荐
相关产品推荐

