首页
学习
活动
专区
工具
TVP
发布
精选内容/技术社群/优惠产品,尽在小程序
立即前往

如何在OPA Rego中将列表转换为具有键重复的对象

在 OPA Rego 中,可以使用内置函数 object.from_entries() 将列表转换为具有键重复的对象。以下是详细步骤:

  1. 首先,将列表转换为键值对的格式,其中键是列表中的元素,值可以是任意值。这可以通过使用内置函数 zip() 实现。例如,假设我们有一个列表 lst 和一个值 val
代码语言:txt
复制
lst := ["key1", "key2", "key3"]
val := "value"
pairs := zip(lst, [val | _ := lst])

上述代码中,zip() 函数将列表 lst[val | _ := lst] 组合在一起,生成一个包含键值对的列表 pairs。此处使用了列表生成器 [val | _ := lst] 来生成与列表 lst 中的元素个数相同的值的列表。

  1. 接下来,使用内置函数 object.from_entries() 将键值对列表转换为对象。例如:
代码语言:txt
复制
obj := object.from_entries(pairs)

上述代码中,object.from_entries() 函数接收键值对列表 pairs 并返回一个对象 obj,其中键是列表 lst 中的元素,值是与之对应的值 val

通过以上步骤,您可以在 OPA Rego 中将列表转换为具有键重复的对象。

关于 OPA Rego 的更多信息,您可以参考腾讯云的 OPA Rego 文档和示例:

页面内容是否对你有帮助?
有帮助
没帮助

相关·内容

Kubernetes 策略引擎对比:OPA/Gatekeeper 与 Kyverno

Kubernetes 的 Pod Security Policy(PSP)[1] 即将被 淘汰和移除[2],所以需要找到一个替代方案来填补这个即将出现的空白。目前看来,Kubernetes 自身并没有准备相应的替代方案,因此需要在 Kubernetes 之外寻求解决之道。CNCF 的两个头部项目可能会成为首选的替代产品,它们分别是基于 Open Policy Agent(OPA)的 Gatekeeper 以及 Kyverno,两个产品各行有千秋,但是目前还没有对这两个产品进行过正式的比较,这就让面临选择的用户无从下手了。这两个项目都是全功能的 Kubernetes 策略引擎,因此其功能不仅限于替代 PSP。本文尝试对 Gatekeeper 和 Kyverno 进行一个中立客观的比较,让用户能够据此作出决策。这里仅从 Kubernetes 的视角来对这两个项目来进行评价。

02

(译)Kubernetes 策略引擎对比:OPA/Gatekeeper vs Kyverno

Kubernetes 的 Pod Security Policy(PSP)即将被淘汰和移除,所以需要找到一个替代方案来填补这个即将出现的空白。目前看来,Kubernetes 自身并没有准备相应的替代方案,因此需要在 Kubernetes 之外寻求解决之道。CNCF 的两个头部项目可能会成为首选的替代产品,它们分别是基于 Open Policy Agent(OPA)的 Gatekeeper 以及 Kyverno,两个产品各行有千秋,但是目前还没有对这两个产品进行过正式的比较,这就让面临选择的用户无从下手了。这两个项目都是全功能的 Kubernetes 策略引擎,因此其功能不仅限于替代 PSP。本文尝试对 Gatekeeper 和 Kyverno 进行一个中立客观的比较,让用户能够据此作出决策。这里仅从 Kubernetes 的视角来对这两个项目来进行评价。

02
领券