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

[#160] Creating the IAM groups & users #188

Merged
merged 7 commits into from
Jun 28, 2023

Conversation

longnd
Copy link
Contributor

@longnd longnd commented Apr 24, 2023

What happened 👀

This PR allows the provisioning of IAM groups & users by code.

Insight 📝

This policy does not allow users to reset a password while signing in to the AWS Management Console for the first time. We recommend that you do not grant permissions to new users until after they sign in. You can allow this by adding iam:ChangePassword and iam:GetAccountPasswordPolicy to the statement DenyAllExceptListedIfNoMFA. However, we do not recommend this because allowing users to change their password without MFA can be a security risk.

There will be 3 groups

  • Admin: full permission
  • Developer: power access
  • Bot account: power access + full IAM access

As the bot account (used by Terraform) is also generated by code, how can the user generate a new project can provision it? The following steps are needed:

  • Create a bot account manually using the AWS console
  • Get an access key for that bot account to put on Terraform Cloud
  • Provision the project
  • Get the generated user credentials (admins, developers & bot), then use the new bot account to generate an access key to replace the one on AWS and remove the old access key.

All of the above steps will be documented in Wiki in another PR

Proof Of Work 📹

Genera a new project using this template and run terraform plan showing no (syntax) errors
Screenshot 2023-05-15 at 15 51 00

@longnd longnd self-assigned this Apr 24, 2023
@longnd longnd force-pushed the feature/160-create-IAM-users branch 2 times, most recently from 50277c7 to 30eae7d Compare April 26, 2023 15:32
@longnd longnd marked this pull request as ready for review April 27, 2023 07:59
Copy link
Collaborator

@hoangmirs hoangmirs left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

LGTM 💪

@longnd longnd requested a review from liamstevens111 as a code owner May 14, 2023 14:58
@longnd longnd force-pushed the feature/160-create-IAM-users branch from 83be012 to f282285 Compare May 15, 2023 03:52
@longnd longnd requested a review from malparty May 15, 2023 08:52
Copy link
Member

@malparty malparty left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Time saver feature! 🤩

@hoangmirs hoangmirs merged commit d668443 into develop Jun 28, 2023
@hoangmirs hoangmirs deleted the feature/160-create-IAM-users branch June 28, 2023 05:48
@hoangmirs hoangmirs added this to the 1.5.0 milestone Jul 6, 2023
@hoangmirs hoangmirs added the type : feature New feature or request label Jul 7, 2023
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
type : feature New feature or request
Projects
None yet
Development

Successfully merging this pull request may close these issues.

Support creating new IAM users in IAM module
4 participants