A Kubernetes ServiceAccount is an identity and credential object for workloads that need to access the Kubernetes API. It represents code running in the cluster rather than a human user. section 12.6
Grant workload access by creating a ServiceAccount and using it as the subject of an RBAC binding. For example, a monitoring Pod can receive permission to inspect another Deployment’s Pod status. section 12.6
Keep workload and human access separate:
- Use ServiceAccounts for services and other code running in the cluster. section 12.6
- Use federated User identities for human developers instead of distributing ServiceAccount certificates. section 12.6
- Avoid downloaded ServiceAccount credentials for developers because they can remain valid after the developer is suspended in the identity system. section 12.6









