Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Assume IAM role rather than use hardcoded IAM user credentials for build job #126

Open
NoxHarmonium opened this issue Sep 19, 2022 · 1 comment
Labels
tech-debt Does not affect the end user, but impedes development of the plugin

Comments

@NoxHarmonium
Copy link
Contributor

Using a role is best practice and gives the following benefits over an IAM user:

  • We can set the role up so only Github (hopefully at the project/repo level) can assume it, hopefully not any random person who has stolen the credentials
  • When the role is assumed, the credentials have an expiry so the impact is less when leaked
  • The auditing is easier, a session name is provided when assuming the role so you know which system is doing the assuming

That's off the top of my head so it might not be 100% correct but I think the gist is correct.

See also:

https://github.com/aws-actions/configure-aws-credentials#credentials
https://docs.aws.amazon.com/IAM/latest/UserGuide/best-practices.html

@NoxHarmonium NoxHarmonium added the tech-debt Does not affect the end user, but impedes development of the plugin label Sep 19, 2022
@NoxHarmonium NoxHarmonium changed the title Use IAM role rather than IAM user for build job Assume IAM role rather than use hardcoded IAM user credentials for build job Sep 19, 2022
@NoxHarmonium
Copy link
Contributor Author

I made a start on this in my WIP branch for issue #43
https://github.com/agiledigital-labs/aws-durable-lambda/blob/issue-43-int-test/cf/ci-role.yaml

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
tech-debt Does not affect the end user, but impedes development of the plugin
Projects
None yet
Development

No branches or pull requests

1 participant