本篇文章1907字,读完约5分钟
随着您的组织接受云,您可能会发现云本机堆栈的动态性和规模要求更复杂的安全性和法规遵从性。例如,随着像kubernetes这样的容器编排平台得到越来越多的关注,开发人员和开发团队对策略领域(如准入控制)和更传统的领域(如计算、存储和网络)有了新的责任。同时,每个应用程序、微服务或服务网格都需要自己的授权策略,这对开发人员很有帮助。
出于这些原因,我们开始寻找一种更简单、更省时的方法来创建、实施和管理云中的策略。开放政策输入代理成立于四年前。它是一个独立于域的开源策略引擎,并且正在成为云本地策略的事实标准。事实上,opa已经被网飞、pinterest、高盛和其他公司用于生产,例如kubernetes准入控制和微服务api授权。Opa还支持许多您已经知道并喜欢的云本地工具,包括atlassian suite和chef automate。
Opa为云本地组织提供了一种统一的策略语言,因此授权决策可以在应用程序、API、基础设施等中以通用的方式表达。,而无需将定制策略硬编码到不同的语言和工具中。此外,由于opa是专门为授权而设计的,它提供了越来越多的性能优化集,因此策略作者可以花大部分时间编写正确且可维护的策略,并将性能留给opa。
Opa授权策略在堆栈中有很多很多的用例——从在容器编排周围放置栅栏到控制ssh访问或提供基于上下文的服务网格授权。然而,有三个流行的用例为许多opa用户提供了一个良好的起点平台:应用授权、kubernetes准入控制和微服务。
Opa申请授权
授权策略无处不在,因为几乎每个应用程序都需要授权策略。然而,开发人员通常会滚动他们自己的代码,这不仅耗时,还会导致难以维护的工具和策略的拼凑。虽然授权对于每个应用程序都至关重要,但是创建策略所花费的时间意味着专注于面向用户的功能的时间减少了。
Opa使用一种特殊的声明性策略语言来简化授权策略的开发。例如,您可以创建和实施简单的策略,例如,如果您是承包商,您不能读取pii或jane可以访问此帐户。但这只是开始。因为opa是上下文感知的,所以您也可以制定策略来考虑地球上的任何事情,例如,在交易日的最后一个小时请求股票交易,这将导致超过一百万美元的交易,这只能在以下时间执行:以给定名称空.的特定服务
当然,许多组织已经有了定制的许可证。但是,如果您想在云中分解应用程序和扩展微服务,同时保持开发人员的生产力,您需要一个分布式授权系统。对许多人来说,opa是一个缺失的谜。
用于kubernetes准入控制的Opa
许多用户还使用opa为kubernetes创建围栏。Kubernetes本身已经成为主流和关键任务,组织正在寻找定义和实施安全屏障的方法,以帮助减轻安全和合规风险。管理员可以使用opa制定明确的政策,这样开发人员就可以加快流水线生产,并快速将新服务推向市场,而不用担心运营、安全或合规风险。
Opa可用于创建拒绝使用相同主机名的条目的策略,或要求所有容器映像来自受信任的注册表的策略,或确保所有存储始终标有加密位,或确保每个应用程序在互联网上公开使用经批准的域名,仅举几例。
因为opa直接与kubernetes api服务器集成,所以它可以拒绝任何被计算、网络和存储策略禁止的资源。在开发周期的早期,比如在ci/cd管道中,您可以公开这些策略,这对于开发人员来说尤其有益,这样开发人员就可以尽早获得反馈并在运行时修复问题。此外,您甚至可以在带外验证策略,以确保它们达到预期的结果,并且不会在无意中造成麻烦。
微服务的Opa
最后,opa在帮助组织控制他们的微服务和服务网格架构方面变得非常流行。使用opa,您可以直接为微服务创建和实现授权策略(通常作为辅助工具),在服务网格中构建服务到服务的策略,或者从安全性的角度创建限制服务网格中横向移动的策略。建筑。
为云本地架构构建统一的策略
一般来说,使用opa的总体目标是创建一种统一的方式来创建您的云本地堆栈中的策略,这样您就不必使用广告、部落知识、百科全书和pdf的临时混合,或者一堆不匹配的工具。
除了简化开发和加快交付,这对于安全性来说也是一大新闻,因为opa减少了您需要检查的工具数量,例如,您是否怀疑您是否尝试过未经授权的访问。同样,从运营和合规的角度来看,opa使在异构环境中提取和分析信息变得更加容易,帮助您快速发现问题并更快地解决问题。
开发人员正在寻找一种更简单、更有效的方法来为他们的云本地环境创建和管理基于策略的控制。对许多人来说,解决办法是opa。如果你发现自己身处多个地方、多种语言或多个团队,opa可以帮助你消除冗余并加快交付速度。
来源:搜狐微门户
标题:OPA:云原生的通用性策略引擎
地址:http://www.shwmhw.com/shxw/30872.html