Describe the feature
The AlbControllerVersion enum currently stops at V2_8_2, and the bundled IAM policy JSON files only go up to alb-iam_policy-v2.8.2.json. The AWS Load Balancer Controller has released v3.x versions (e.g., v3.0.0, v3.1.0) which include significant changes including updated IAM policies.
Currently, users who need v3.x must use the AlbControllerVersion.of("v3.1.0") escape hatch and supply their own IAM policy document. This means they have to:
- Maintain a local copy of the full ALB Controller IAM policy JSON
- Manually track upstream policy changes
- Pass the policy explicitly via the
policy prop
This is brittle and creates ongoing operational burden, especially when security scanners flag outdated controller versions.
Use Case
Teams running EKS clusters need to stay on supported ALB Controller versions to avoid security findings (e.g., Mirador). Without built-in v3.x support, every team must independently source and maintain the IAM policy, which is error-prone and duplicative.
Proposed Solution
- Add new static constants to
AlbControllerVersion (e.g., V3_0_0, V3_1_0) with the correct helm chart version mappings
- Add the corresponding
alb-iam_policy-v3.x.x.json files to packages/aws-cdk-lib/aws-eks/lib/addons/
- Keep the
AlbControllerVersion.of() escape hatch for future versions
Other Information
Acknowledgements
CDK version used
2.182.0
Environment details (OS name and version, etc.)
N/A
Describe the feature
The
AlbControllerVersionenum currently stops atV2_8_2, and the bundled IAM policy JSON files only go up toalb-iam_policy-v2.8.2.json. The AWS Load Balancer Controller has released v3.x versions (e.g., v3.0.0, v3.1.0) which include significant changes including updated IAM policies.Currently, users who need v3.x must use the
AlbControllerVersion.of("v3.1.0")escape hatch and supply their own IAM policy document. This means they have to:policypropThis is brittle and creates ongoing operational burden, especially when security scanners flag outdated controller versions.
Use Case
Teams running EKS clusters need to stay on supported ALB Controller versions to avoid security findings (e.g., Mirador). Without built-in v3.x support, every team must independently source and maintain the IAM policy, which is error-prone and duplicative.
Proposed Solution
AlbControllerVersion(e.g.,V3_0_0,V3_1_0) with the correct helm chart version mappingsalb-iam_policy-v3.x.x.jsonfiles topackages/aws-cdk-lib/aws-eks/lib/addons/AlbControllerVersion.of()escape hatch for future versionsOther Information
Acknowledgements
CDK version used
2.182.0
Environment details (OS name and version, etc.)
N/A