#9000·opa

allow_net 不会限制 schema 内置中的 file:// $refs

作者: sspaink创建于 2026年8月11日更新于 2026年9月7日

JSON 方案中的 `file://` `$ref` 通过使用 `os.Open` 打开本地路径来解析,不受任何限制。由于 `json.match_schema` 和 `json.verify_schema` 的方案操作数可以来自 `input`,因此来自不受信任的数据可能会在评估时导致本地文件系统的读取。`allow_net` 不能覆盖此问题 - 它只对主机进行限制,因此将其设置为 `[]` ("不允许任何主机") 仍然允许所有文件。我们可以将 `allow_net` 扩展到还禁用文件。

内容来源: open-policy-agent/opa