【发布时间】:2019-01-25 22:40:05
【问题描述】:
我们有一个微服务架构,并且有 REST 服务通过 HTTP 相互交互。所有这些服务都托管在 Kubernetes 集群上。我们是否需要对此类服务交互进行显式身份验证,或者 Kubernetes 是否为其提供了足够的安全性?
【问题讨论】:
标签: kubernetes kubernetes-security
我们有一个微服务架构,并且有 REST 服务通过 HTTP 相互交互。所有这些服务都托管在 Kubernetes 集群上。我们是否需要对此类服务交互进行显式身份验证,或者 Kubernetes 是否为其提供了足够的安全性?
【问题讨论】:
标签: kubernetes kubernetes-security
Kubernetes 仅为您的容器化应用程序提供编排。它可以帮助您run、update、scale 您的服务,并在集群内为它们提供delivering traffic 的方式。大部分 Kubernetes 安全都与集群的traffic management 和role based administration 相关。
Istio 等其他一些工具可以为您提供 pod 之间的安全通信以及其他一些流量管理功能。
pod 中的应用程序应该有自己的能力,可以根据本地文件/数据库或网络服务(如 LDAP 或 OpenID 等)提供身份验证和授权。
【讨论】:
这完全取决于您如何设计、架构师以及如何为您的系统创建 SDD。在设计时,必须考虑并优先考虑安全加固。软件和工具带来了它们的功能,但是,你如何采用很重要。 Kubernetes 也不例外。
您正在使用 HTTP 和在生产系统中运行微服务,即使您的系统在 Kubernetes 集群中运行,您也无法相信它是安全的。 Kubernetes 从安全角度带来了很酷的功能,如 RBAC、CRD 等,您可以在这里找到Kubernetes 1.8 Security, Workloads and Feature Depth。但是,仍然仅利用这些功能是不够的。内部服务应该和外部一样安全。以下是在将工作负载运行到 Kubernetes 集群后应该注意的几件事,
kubectl。希望这会有所帮助。
【讨论】: