-
Couldn't load subscription status.
- Fork 106
Open
Labels
bugSomething isn't workingSomething isn't working
Description
Describe the bug
When processing an admission request, that has been processed previously, the environment variables assigned during the first invocation are kept.
Failing to do so might result in a situation where the wrong credentials are projected into the container, if another admission plugin modifies the serviceAccountName.
Steps To Reproduce
- Configure another mutating admission webhook (e.g. a Kyverno policy) that
- is invoked after the
aks-webhook-admission-controller - sets the
.spec.serviceAccountNametounprivilged-account
- is invoked after the
- Create a Pod that
- uses Azure Workload Identities
- has its
serviceAccountNameset toadmin-account
- Observe that the resulting container is assigned to the service account
unprivileged-account(as per policy) while still possessing theadmin-account's credentials (e.gCLIENT_IDandCLIENT_SECRET).
Expected behavior
The mutation webhook should update the SDK environment variables (e.g. CLIENT_ID, CLIENT_SECRET) whenever reinvoked.
Environment
- Kubernetes version (use
kubectl version): 1.28.3 - Cloud provider or hardware configuration: Azure AKS
- OS (e.g:
cat /etc/os-release): Ubuntu
Additional context
The reinvocation has originally been added by #794.
Metadata
Metadata
Assignees
Labels
bugSomething isn't workingSomething isn't working