默认的Bazel沙盒允许读访问/
。我怎样才能进一步限制呢?例如。我想阻止非密封测试访问/search
目录。如何锁定Bazel文件系统沙箱?
有一个--sandbox_block_path
标志,但是它在012中的was removed。
默认的Bazel沙盒允许读访问/
。我怎样才能进一步限制呢?例如。我想阻止非密封测试访问/search
目录。如何锁定Bazel文件系统沙箱?
有一个--sandbox_block_path
标志,但是它在012中的was removed。
感谢您报告删除此功能对您而言是一个问题。我发现了一种如何使它在Linux和MacOS上可靠工作的方法,并将它带回来。代码审查已发送给同事。我会确保它被选入Bazel 0.5.0。
感谢您带回来。有没有一个很好的解释为什么'/'默认可读?我设计用于强化密封性的沙盒概念是默认锁定所有内容,并强制用户指定一个非常有限的“--sandbox_allow_path”列表,而不是相反。 Google如何做到这一点? – Gregg
@Gregg“锁定一切,默认情况下,白名单除外”是Bazel首次尝试沙盒式游戏,由于涉及的工作量很大,因此非常不受用户欢迎。也就是说,沙箱还在不断发展,我们可能会在未来再添加一个更严格的版本(作为选择)。 :)顺便说一下,--sandbox_allow_path变更没有进入0.5.0/0.5.1版本,但将包含在0.5.2版本中,包括另一个可能对您有用的新标志( - -sandbox_writable_path)。 –
@PhilippWollermann你可以添加链接到github问题或提交? – Ittai
一个简单的方法是将Bazel作为特定用户执行,并禁止使用ACL对'/ search'进行读取访问。 – abergmeier
“默认的Bazel沙箱允许读访问'/'。” - 这听起来像一个错误。您可以通过https://github.com/bazelbuild/bazel/issues/new将其提交,并添加任何可能相关的信息吗? (例如,您看到了哪个Bazel版本或提交哈希,您在命令行上传递了哪些标志,以及任何可能相关的标志。)谢谢! –