gravitational / teleport

The easiest, and most secure way to access and protect all of your infrastructure.
https://goteleport.com
GNU Affero General Public License v3.0
17.62k stars 1.76k forks source link

Teleport on EKS guide relies on ec2 nodes ambiant credentials #17147

Open hugoShaka opened 2 years ago

hugoShaka commented 2 years ago

Expected behavior:

Teleport, as a security product, should not advise users to grant Dynamo, S3 and Route53 read-write permissions to all workload running in the EKS cluster.

Current behavior:

Teleport on EKS guide advises user to do something that can be exploited if they run other workload in the cluster.

This is not only a documentation issue, there are important technical and UX considerations:

Technical context:

The only approach to do this more securely is to use an AWS Service Account. There are two common ways of using an AWS SA in Kubernetes:

The latter is the most secure way to do it, but adds up to 8 additional steps in the deployment guide.

hugoShaka commented 2 years ago

Possible approaches:

hugoShaka commented 2 years ago

Note: we have similar scenarios with other cloud providers (azure and GCP) the default approach has been to rely on keys. It kinda makes sense for azure db discovery, there is an open issue to support and document workload identity for GKE.

ptgott commented 1 year ago

If we're going to elevate the approach laid out in the EKS/Helm guide to be the one we recommend to get most users to production, we should make this issue one of our top priorities for the next quarter.

ptgott commented 1 year ago

@alexfornuto @xinding33 I meant to tag you about the comment above but forgot

hugoShaka commented 8 months ago

Update: in EKS, aws now runs the iam controller for us. This makes the setup a bit easier