-
Epic
-
Resolution: Done
-
Major
-
None
-
None
-
Define and implement explicit cloud permission model on AWS
-
False
-
False
-
To Do
-
Impediment
-
0% To Do, 0% In Progress, 100% Done
-
Undefined
-
0
-
0
-
0
Use STS for Hosted Control Plane Authentication
Problem
We must define and codify the AWS policy requirements so users know what permissions they're granting HyperShift to provide managed clusters.
Currently we don't explicitly define the AWS IAM policy or policies necessary for HyperShift to work. With a codified definition of the requirements, we can more easily get user feedback about whether the policies are acceptable.
This issue tracks effort to introduce a more clearly and narrowly scoped cloud permissions model for AWS.
Cloud provider credentials are currently used in the following contexts:
- Kube Controller Manager (KCM) deployment
- Kube API server deployment
- Kube CSI driver cloud credentials
- CAPI AWS provider
Only the Kube Controller Manager and CAPI provider really need cloud credentials, so the CSI and API server usages should simply be removed.
The KCM and CAPI components have separate responsibilities and different permission needs. Each of these components should use distinct AWS IAM policies that we define and support so that users have more control over the exposed surface area of accounts attached to those policies.
User story
As an end-user I would like to understand the scope and permissions I am granting for cluster creation.
Steps
Based on prior discussions, a viable approach has two main parts:
- Update the HostedCluster API to replace the single ProviderCreds field with a new struct that embeds two credentials fields for the two known contexts (KCM and CAPI provider).
- Update the CLI to produce canonical AWS policy resources and make creating default accounts using those policies easy for tests and development.
References
- blocks
-
HOSTEDCP-103 Cluster-bot integration
- Closed
- is blocked by
-
HOSTEDCP-133 Use CloudFormations to create AWS infrastructure
- Closed
- is related to
-
HOSTEDCP-230 [Tech-Preview] Support AWS as an Infrastructure Provider for HyperShift
- Closed
-
OCPSTRAT-326 Implement HyperShift Infrastructure & Machine Management Models
- Closed
- links to