[EKS] [request]: Support apiserver webhook authorization mode
- Dominant language
- Shell
- Stars
- 5.4k
- Forks
- 334
- PR merge metrics
- No merged PRs in 30d
Description
### Community Note
* Please vote on this issue by adding a 👍 [reaction](https://blog.github.com/2016-03-10-add-reactions-to-pull-requests-issues-and-comments/) to the original issue to help the community and maintainers prioritize this request
* Please do not leave "+1" or "me too" comments, they generate extra noise for issue followers and do not help prioritize the request
* If you are interested in working on this issue or have submitted a pull request, please leave a comment
**Tell us about your request**
Support apiserver webhook authorization mode
**Which service(s) is this request for?**
EKS
**Tell us about the problem you're trying to solve. What are you trying to do, and why is it hard?**
Kubernetes API server supports [multiple authorization modes](https://kubernetes.io/docs/reference/access-authn-authz/authorization/#authorization-modules). EKS should allow support for [webhook mode](https://kubernetes.io/docs/reference/access-authn-authz/webhook/), which allows authorization controls to be determined by an external service, which can augment or replace existing authorization controls provided today.
This would help in cases where RBAC is not sufficient for granular authorization control. For example, restricting access to modify only portions of a specific resource, or restricting access only to a subset of resources within a namespace (since [label selectors are not currently supported in RBAC](https://github.com/kubernetes/kubernetes/issues/44703)).
**Are you currently working around this issue?**
On EKS, we must change our architecture to add more namespaces to increase granularity when using RBAC. We must also create additional tooling to dynamically manage RBAC roles and aws-auth configmap mappings. For some clusters, duplicating namespaced resources may not be an option.
**Additional references**
[Why RBAC is not enough blog post by Styra](https://www.styra.com/blog/why-rbac-is-not-enough-for-kubernetes-api-security/)
[Fine-Grained User Authorization for Kubernetes with OPA and LDAP at KubeCon 2021](https://www.youtube.com/watch?v=VFE6D30Qhx0)
Contributor guide
Research direction
Start with the Kubernetes authorization modules and webhook references linked in the issue, then determine whether EKS configuration or API surfaces expose this mode. Done means EKS supports configuring apiserver webhook authorization with the documented external-service behavior.
Written by the indexing model from the issue text.
Assessment
- Tech stack
- aws, kubernetes
- Domain
- authorization, cloud, security
- Issue type
- Feature
- Difficulty
- 5/5
- Estimated time
- Over a week
- Activity status
- Active
- Clarity
- Needs clarification
- Newbie friendliness
- 35/100