问题标签 [open-policy-agent]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票
1 回答
2319 浏览

open-policy-agent - Rego 规则中的参数 [Open Policy Agent]

如何在 Rego 规则中使用参数?我会有这样的事情:

wherelabel用于构建错误消息。我从 OPA 收到错误:var label is unsafe ...

一般来说,我仍然不清楚如何在 Rego 中传递参数。

0 投票
1 回答
195 浏览

kubernetes - 为什么我们需要 OPA 网守?

我试图了解什么是 OPA(开放策略代理)及其用例,我处于基础阶段。当我阅读 opa 文章时,我了解了 OPA Gatekeeper,但我不清楚为什么我们需要这个 OPA Gatekeeper?我们可以用它来审计 Kubernetes 中的各种策略,如 Pod 调度、集群放置、授权等,还是仅特定于 Kubernetes 准入控制阶段?

0 投票
1 回答
2168 浏览

open-policy-agent - 开放策略代理满足所有数组项的条件

试图解决这个问题一段时间 - 我有一个 JSON 输入,其中包含一个数组,这样说:

我的目标是验证数组中的所有对象是否满足具有名为 foo 的字段的条件(实际用例是确保云部署中的所有资源都有标签)。我的问题是标准 rego 表达式被评估为“至少”而不是“全部”,这意味着表达式如下:

总是返回 true,即使某些对象不满足这一点。我看过这个,但是评估正则表达式返回true或者false当我的策略检查字段是否存在时,这意味着如果它不存在,我会收到一个“var_is_unsafe”错误。

有任何想法吗?

0 投票
1 回答
511 浏览

open-policy-agent - 无法使用 http.send 请求资源

当我运行以下代码时:

我收到此错误:

发生 1 个错误:policy.rego:4:rego_type_error: 表达式中不安全的内置函数调用:http.send

我使用 rego play 来运行该策略。https://play.openpolicyagent.org/p/iqK8Zt5L62

0 投票
0 回答
116 浏览

amazon-web-services - 如何在 EKS 版本 1.15 中保护准入控制器

我正在尝试使用 eks 集群配置 OPA 以验证和授权客户端请求

我指的是下面的文档 https://github.com/open-policy-agent/kube-mgmt/blob/master/docs/admission-control-secure.md

eks 1.15集群中是否可以修改api服务器

验证客户端请求的步骤之一是

API 服务器必须在启动期间通过 --admission-control-config-file 标志提供准入控制配置文件。

0 投票
1 回答
63 浏览

kubernetes - OPA 通过 Kubernetes 集群请求

我想在 kubernetes 中使用 OPA(Open Policy Agent),但有一些我还不清楚的问题:

我们一起来看一个具体的案例:比如在命名空间中创建了一个 pod,我们可以从 OPA 的 pod 对象中知道命名空间。但是,我们可以单独获取命名空间对象来了解这个命名空间所属的权限吗?

更明确地说,我的意思是我们可以通过 OPA 通过 Kubernetes 集群进行请求吗?

例如,有一个名为 Test 的 pod 创建。我只想允许这个创建只用于一个名为 TestAuthority 的权限。创建 Pod 时,我们知道命名空间数据,但不知道权限。为了弄清楚这个 pod 所属的权限,我需要拥有命名空间对象并查看它的标签。我们可以通过 OPA 这样做吗?

此外,我们是否可以说允许使用 Test1、Test2 和 Test3 的名称创建 pod?因此,应该拒绝任何名称为 Test4 的 pod 创建。

预先感谢您的帮助

0 投票
1 回答
74 浏览

kubernetes - 如何在 Google Kubernetes 集群中部署 Open Policy Agent

我是 k8s 的新手,我想将 OPA 部署在与我在 Google Kubernetes 引擎中的应用程序相同的 pod 中。但我不知道该怎么做。是否有任何参考资料可以参考有关此的更多详细信息?你能帮我弄清楚我应该遵循的步骤吗?

0 投票
2 回答
960 浏览

open-policy-agent - OPA 单元测试失败,如何输出响应变量?

OPA 的新手,我正在编写 OPA 单元测试用例。

它失败了response == "approved"。我想查看响应变量的输出,如何输出?

0 投票
1 回答
60 浏览

terraform - 开放策略代理定义动态全局变量

我想知道是否有任何方法可以美化我的代码,因为它看起来非常低效且完全不干燥。我想要实现的是将特定资源从资源列表中拉出(从 terraform 计划中名为“aks”的资源),并针对它运行一些测试。问题是,我使用some关键字来获取它,这会阻止我配置全局变量,这会导致大量重复,例如:

有没有办法创建一个“全局”变量来捕获 aks 资源,以防止所有重新计算?

干杯。

0 投票
2 回答
1003 浏览

logging - EnvoyFilter [ lua filter ] 不在控制台上打印日志

我是这个领域的新手。尝试使用 OPA [开放策略代理和 istio] 实现 lua 过滤器

为了实现一个简单的 poc,我创建了以下过滤器

当我执行我的 api 时,我能够在输出中获得更新的标头值。[似乎在过滤器链中调用了lua过滤器]

但我的问题是,我无法在容器日志中的任何地方找到日志“envoy_on_request”。

需要你的建议来找到日志……</p>