云原生应用安全防护思考

2026-04-09 国家保密科技测评中心

从图2我们可以看出,JWT交互流程与上述提到的理想流程基本相似,需要注意的是,JWT令牌中会包含用户敏感信息,为防止被绕过的可能,JWT令牌采用了签名机制。此外,传输时需要使用加密协议。

2.1.2 基于Istio的认证

Istio的安全架构,如图3所示。

Istio包括认证和授权两部分,安全机制涉及诸多组件,控制平面由核心组件Istiod提供,其中包含密钥及证书颁发机构(CA)、认证授权策略、网络配置等;数据平面则由透明代理(Envoy)、边缘代理(Ingress和Egress)组件构成。

借助控制平面Istiod内置的CA模块,Istio可实现为服务网格中的服务提供认证机制,该认证机制工作流程包含提供服务签名证书,并将证书分发至数据平面各个服务的Envoy代理中。当数据平面服务间建立通信时,服务旁的Envoy代理会拦截请求并采用签名证书和另一端服务的Envoy代理进行双向(Mutual Transport Layer Security,TLS)认证,从而建立安全传输通道,保障数据安全。

下文介绍Istio的2种主要认证类型。

2.1.2.1对等认证

对等认证(Peer authentication)主要用于微服务应用架构中服务到服务的认证,从而可验证所连接的客户端。针对此类型的认证,Istio提供了双向TLS解决方案,该解决方案提供以下功能:

(1)确保服务到服务之间的通信安全;

(2)提供密钥管理系统,从而自动进行密钥及证书的生成、分发和轮换;

(3)为每个服务提供一个代表其角色的身份,从而可实现跨集群的互操作性。

具体我们可以通过使用传输认证策略为Istio中的服务指定认证要求,例如,命名空间级别TLS认证策略可以指定某命名空间下所有Pod(K8s的最小单位,里面包含一组容器)间的访问均使用TLS加密,Pod级别TLS认证策略可以指定某具体Pod被访问时需要进行TLS加密等。

2.1.2.2请求级认证

请求级认证(Request authen-tication)是Istio的一种认证类型,主要用于对终端用户的认证,与传输认证的主要区别为,请求级认证主要用于验证用户请求服务时携带的凭据,而非服务到服务的认证。

请求级认证主要通过JWT机制实现,实现原理与前面“基于JWT的认证”小节中提到的内容类似,区别为Istio在其基础上进行了一层封装,使用户可以以yaml的方式进行策略配置,用户体验更为友好。

Istio的JWT认证主要依赖于JSON Web密钥组(JSON Web Key Set,JWKS)。JWKS是一组密钥集合,其中包含用于验证JWT的公钥。在实际应用场景中,运维人员通过为服务部署JWT认证策略实现请求级认证,为方便理解,下面展示了JWT认证策略的核心部分配置:

issuer:https://example.com

jwksUri:https://example.com/.well-known/jwks.json

triggerRules:

-excludedPaths:

-exact:

/status/version

includedPaths:

- prefix: /status/

其中:

issuer:代表发布JWT的发行者。

jwksUri:代表JWKS获取的地址,用于验证JWT的签名,jwksUri可以为远程服务器地址,也可以为本地地址,其通常以域名或URL形式展现。

triggerRules(重要):为使用JWT验证请求的规则触发列表,如果满足匹配规则就进行JWT验证。此参数使得服务间的认证变得弹性化,用户可以按需配置下发规则。上述策略中triggerRules的含义为对于任何带有“/status/”前缀的请求路径,除了/status/version,都需要JWT认证。

当JWT认证策略部署完成后,外部对某服务有新的请求时,请求级认证会根据策略内容验证请求携带的令牌(Token),若与策略内容匹配,则返回认证失败,反之认证成功。

2.2 授权服务

授权服务是针对未授权访问风险最直接的防护手段,微服务应用架构下,由于服务的权限映射相对复杂,因而会导致授权服务变得更难。授权服务可以通过基于角色的授权以及基于Istio的授权实现。

2.2.1 基于角色的授权服务

RBAC通过角色关联用户,角色关联权限的方式间接赋予用户权限。在微服务环境中作为访问控制被广泛使用,RBAC可以增加微服务的扩展性。例如,微服务场景中,每个服务作为一个实体,若要分配服务相同的权限,使用RBAC时只需设定一种角色,并赋予相应权限,再将此角色与指定的服务实体进行绑定即可。若要分配服务不同的权限,只需为不同的服务实体分配不同的角色,而无须对服务具体的权限进行修改。这种方式不仅可以大幅提升权限调整的效率,还降低了漏调权限的概率。

正文暂未发布

当前稿件尚未补充正文内容,后续可在后台完善内容后自动恢复显示。你也可以先返回栏目页浏览其他资讯。

上一篇
下一篇