You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

OPA命令行eval评估始终返回false,预期应为true求助

解决OPA Rego策略评估access始终为false的问题

问题出在执行opa eval命令时未加载存储角色数据的data.json文件。你的Rego策略依赖data.Roles获取角色权限配置,但命令里只传入了policy.rego,导致Roles为空集合,规则无法匹配任何角色和表,最终access保持默认的false。

修正后的执行命令

需要通过--data参数同时加载策略文件和数据文件:

opa eval --data policy.rego --data data.json --input test.json --format raw "data.play"

如果两个文件在同一目录下,也可以简化为加载整个目录:

opa eval --data . --input test.json --format raw "data.play"

验证结果

执行修正后的命令后,会返回预期结果:

{"access":true}

OPA的--data参数支持传入多个文件或目录,所有数据源会被合并,确保策略能访问到data.Roles的完整数据,规则才能正确匹配输入的RoleID和表名。

内容的提问来源于stack exchange,提问作者Yehuda Yefet

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.07.30 15:39:19