如何限制将Drive文件共享到仅限Google帐户?

时间:2016-05-26 22:08:56

标签: google-apps-script google-sheets google-docs google-apps

我与很多人分享了许多工作表,为他们提供了编辑和共享权限。我想只与拥有Google帐户的人(“乙方”)分享,以确保更高的安全性/责任感。 但是,很难(不可能?)验证乙方在Google Apps脚本中是否拥有Google帐户,这就是所有这一切发生的地方。

此外:由于我给乙方“分享”权限,我无法阻止他们与任何数量的非Google帐户共享,从而使该文件基本上对所有人开放。 我无法关闭下载/打印/复制,我甚至不关心乙方是否与非Google帐户共享“仅查看”。但如果文档本身是一个“热门”的协调/协作文档,并且我想确定我了解谁在进行编辑,我必须确保与其共享的每个人都拥有一个Google帐户。然而,甚至没有办法检查(使用GAS),也无法控制它。

所以,除非我遗漏了某些东西(这就是我在这里问的原因),这是一个功能请求。 Google应该(imo)创建检查和限制特定文档共享的方法,以便将帐户作为Google帐户。似乎至少需要在高级共享对话框中添加另一个开关,该对话框“永远不会与没有Google帐户的任何人分享此内容”。

我被指示在Google帮助论坛上提问。我已经非常努力地提出一个明确的问题,我花了几十个小时试图弄清楚是否有解决这个问题的方法 - 希望这个问题说明了这一点。此外,我认为这可能有助于为其他人澄清(特别是如果有人有好的想法/信息)。我正在使用Google Apps for Work。

1 个答案:

答案 0 :(得分:1)

  

......很难(不可能?)验证乙方在Google Apps脚本中拥有/是Google帐户,这就是所有这一切发生的地方。

您可以使用Session.getActiveUser()获取有关您的Google Apps for Work域 成员的信息。如果您在域外共享文档,则绑定到文档并以需要用户授权的方式运行的脚本也可以使用此方法。但是,如果脚本以任何不需要该特定授权的方式运行,则隐私会胜出,并且您的脚本会将该用户视为匿名。

  

Google应该(imo)创建检查和限制特定文档共享的方法,以便将帐户作为Google帐户。

此功能适用于Google Apps for Work,但它是域范围内的设置,而非用户选择。 (与您的域管理员联系。)

有关管理员的说明,请参阅Set file sharing permissions,其中包含:

  

要求Google登录以便外部用户查看文件
  将共享邀请发送到非Google电子邮件帐户或非Google网上论坛邮件列表时,拥有共享邀请的人仍需要登录Google帐户才能查看该文件(除非该文件也在网络上公开分享或任何有链接的人,如果允许的话。)