登录
首页 >  Golang >  Go问答

ServiceAccount 令牌的保密性问题

来源:stackoverflow

时间:2024-03-20 22:06:34 207浏览 收藏

在 Kubernetes 中,ServiceAccount 令牌用于服务到服务的身份验证。这些令牌通常自动挂载到 Pod 中,但由于其保密性问题,不建议将其发送给其他服务。令牌可用于模拟发送它的服务,甚至可以在集群外部用于 API 身份验证。由于 Kubernetes API 中缺乏使用公钥机制来保护令牌的机制,因此将令牌发送给其他人被认为是一个不安全的做法。

问题内容

在 Pod 中,ServiceAccount 令牌将自动挂载到 /var/run/secrets/kubernetes.io/serviceaccount/token。有一些博客文章建议使用 ServiceAccounts 执行服务到服务的身份验证。

这些文章基本上建议将未修改的令牌作为 HTTP 标头发送到被调用的服务。然后,被调用的服务可以使用 k8s.io/api/authentication Go API 实现调用方身份验证。

但是令牌不需要保密吗?我天真地认为被调用的服务可以滥用令牌来模拟调用服务(通过使用其令牌进行 API 调用)。

这是合理的担忧吗?或者 K8s 中是否内置了一些东西来确保只有已挂载令牌的 pod 才能使用它来进行 API 调用?


正确答案


有些人基本上回答了问题,但使用了评论。那我自己来回答一下这个问题吧。

令牌可用于模拟发送它的服务。它甚至可以在集群外部使用来对 API 进行身份验证。

K8S API 中似乎也没有使用公钥机制来避免泄露令牌的机制。

总的来说,将令牌发送给其他人似乎是一个非常糟糕的主意。我建议不要使用问题中链接的博客文章中概述的方法。

终于介绍完啦!小伙伴们,这篇关于《ServiceAccount 令牌的保密性问题》的介绍应该让你收获多多了吧!欢迎大家收藏或分享给更多需要学习的朋友吧~golang学习网公众号也会发布Golang相关知识,快来关注吧!

声明:本文转载于:stackoverflow 如有侵犯,请联系study_golang@163.com删除
相关阅读
更多>
最新阅读
更多>
课程推荐
更多>