RESTful服务是否需要在Kubernetes集群上相互交互进行身份验证?

问题描述 投票:0回答:2

我们有一个微服务架构,有REST服务通过HTTP相互交互。所有这些服务都托管在Kubernetes集群上。我们是否需要对此类服务交互进行显式身份验证,或者Kubernetes是否为其提供了足够的安全性?

kubernetes kubernetes-security
2个回答
0
投票

Kubernetes仅为您的上传应用程序提供编排。它可以帮助您runupdatescale您的服务,并在集群内为他们提供delivering traffic的方式。大多数Kubernetes安全性与集群中的traffic managementrole based administration有关。

Istio这样的其他工具可以为您提供pod和其他一些流量管理功能之间的安全通信。

pod中的应用程序应具有基于本地文件/数据库或LDAP或OpenID等网络服务提供身份验证和授权的功能。


0
投票

它完全基于您的设计,架构师,如何为您的系统创建SDD。在设计时,必须考虑安全加固并优先考虑。软件和工具带来了它们的功能,但您采用的方式很重要。 Kubernetes也不例外。

您正在使用HTTP运行微服务,并且在生产系统中,即使它在Kubernetes集群中运行,您也无法相信您的系统是安全的。 Kubernetes从安全角度带来了很酷的功能,如RBAC,CRD等,你可以在这里找到Kubernetes 1.8 Security, Workloads and Feature Depth。但是,仍然只利用这些功能是不够的。内部服务应该像外部一样安全。将工作负载运行到kubernetes集群后,您应该注意以下几点:

  1. 扫描所有docker镜像以进行漏洞测试。
  2. 在ABAC上使用RBAC并为各个团队分配最佳权限。
  3. Configure a security context for a pod运行您的服务。
  4. 避免未经授权的内部访问服务数据并保护所有微服务端点。
  5. 加密密钥应在一段时间内旋转。
  6. 必须保护像kubernetes集群一样的数据存储区。
  7. 只有管​​理员才能访问kubectl
  8. 使用基于令牌的验证并在所有REST api调用上启用身份验证。
  9. 持续监控所有服务,分析日志,运行状况检查,容器内运行的所有进程。

希望这可以帮助。

© www.soinside.com 2019 - 2024. All rights reserved.