서비스 어카운트는 파드에서 실행되는 프로세스에 대한 식별자(Id)를 제공한다.

파드 내부의 프로세스들은 (자신과 연관된) SA의 프로세스 Id를 이용해 클러스터의 API서버에 인증할 수 있다.

사용자 계정과 서비스 계정

kubernetes는 사용자 계정과 서비스 계정의 개념을 구분한다.

바인딩된 ServiceAccount Token

ServiceAccount Token은 kube-apiserver에 있는 API 오브젝트에 바인딩될 수 있다. 이를 통해 토큰의 유효성과 다른 오브젝트의 라이프사이클이나 속성과 연결할 수 있다. 예를들어

토큰이 오브젝트에 바인딩되면 해당 오브젝트의 metadata.name 또는 metadata.uid 이 발급된 토큰(jwt)에 private claims으로 추가 저장된다.

Pod에 바운드된 토큰의 추가 메타데이터

서비스 계정 토큰이 Pod에 바인딩되면 Pod의 필드값 spec.nodeName과 해당 노드의 uid를 나타내는 추가 메타데이터가 토큰에 포함된다.