在Kubernetes中,服务账号是给pod中运行的进程使用的,独立存在于每个命名空间中。服务帐号控制器在命名空间内管理服务账号,需要保证名为“default”的服务账号在每个命名空间中存在。
而身份对于所有安全基础架构来说都是基本概念。在服务到服务通信开始时,双方必须交换具备身份信息的凭证以用于双向认证。在客户端,根据安全命名信息检查服务器的身份,以查看它是否是该服务的授权运行程序。在服务器端,服务器可以根据授权策略来确定客户端可以访问哪些信息,审核谁在什么时间访问了什么,根据客户使用的服务向他们收费,并拒绝所有未能支付费用的客户服务。
在Istio身份模型中,Istio使用了服务标识来确定服务的身份。这种机制提供了极大的灵活性和多种粒度,既可以表示单个服务,也可以表示一组服务。在Kubernetes平台上,Istio就使用了Kubernetes服务账号来标识身份。而对于非Kubernetes平台,可以使用自定义服务帐户来进行标识。