如何锁定Bazel文件系统沙箱?

如何锁定Bazel文件系统沙箱?,bazel,Bazel,默认的Bazel沙盒允许对/进行读取访问。我如何进一步限制这一点?例如,我想阻止非密封测试访问/search目录 有一个--sandbox\u block\u path标志,但它是0.5 感谢您报告删除此功能对您来说是个问题。我找到了一种方法,可以让它在Linux和macOS上可靠地工作,并将把它带回来。代码审阅已发送给同事。我会确保它被Bazel 0.5.0选中。一个简单的方法是以特定用户的身份执行Bazel,并使用ACL禁用对/search的读访问。“默认的Bazel沙盒允许对/的读访问”—

默认的Bazel沙盒允许对
/
进行读取访问。我如何进一步限制这一点?例如,我想阻止非密封测试访问
/search
目录


有一个
--sandbox\u block\u path
标志,但它是0.5

感谢您报告删除此功能对您来说是个问题。我找到了一种方法,可以让它在Linux和macOS上可靠地工作,并将把它带回来。代码审阅已发送给同事。我会确保它被Bazel 0.5.0选中。

一个简单的方法是以特定用户的身份执行Bazel,并使用ACL禁用对
/search
的读访问。“默认的Bazel沙盒允许对
/
的读访问”——这听起来像个bug。请您将其存档,并添加任何相关信息,好吗?(例如,您在哪个Bazel版本或提交哈希中看到此错误,在命令行上传递了哪些标志,以及任何可能相关的内容。)谢谢!谢谢你把这个带回来。对于为什么默认情况下
/
是可读的,有没有很好的解释?我对沙盒的概念是,在默认情况下锁定所有内容,并强制用户指定一个非常有限的列表,例如,
——sandbox\u allow\u path
列表,而不是相反的列表。谷歌是如何做到的?@Gregg“默认情况下锁定所有东西,除了白名单”是Bazel第一次尝试沙箱,由于涉及的工作量太大,因此非常不受用户欢迎。也就是说,沙箱仍在发展中,我们可能会在将来再次添加更严格的版本(作为选择加入)顺便说一句,--sandbox\u allow\u路径更改没有进入0.5.0/0.5.1版本,但将包括在0.5.2版本中,包括另一个可能对您有帮助的新标志(-sandbox\u writable\u path)。@PhilippWollermann您可以添加到github问题的链接或提交吗?