A Deployment’s Pod template sets serviceAccountName: permits-api. Controllers create and manage those Pods, but live API calls from inside a running Pod use that ServiceAccount’s token. When debugging Forbidden errors from the application process, which identity matters most?
Select an answer to reveal the explanation.
Short Explanation
Whoever clicked apply is not who the app is when it talks to the API. The Pod wears the ServiceAccount badge in its template. Check that SA’s RoleBindings when the process itself gets Forbidden.
Full Explanation
Workload identity for in-cluster clients is the ServiceAccount named in the Pod spec (via the template for Deployments). RBAC for that ServiceAccount governs API calls made with its projected token. The human user who created the Deployment is a separate principal used for management operations. Troubleshooting application Forbidden responses requires inspecting RoleBindings and Roles for the Pod’s ServiceAccount.