user3771601
user3771601

Reputation: 61

AWS: how to manage authentication for multiple accounts


We have multiple AWS accounts (about 15-20), one AWS account per client that we are managing, each account having VPC having dedicated setup of instances. Due to regulatory requirements all accounts needs to be isolated from each other.

What is the best way to manage account credentials for these AWS accounts? Following is what I am thinking

-For any new client

  1. Create a new AWS account
  2. Create AWS IAM roles (admin, developer, tester) for newly created account using cloudformation
  3. Using master AWS account, assume roles created in step 2 to access other accounts.

Is this the right approact to manage multiple accounts?

Thanks in advance.

Upvotes: 3

Views: 1675

Answers (1)

Steffen Opel
Steffen Opel

Reputation: 64741

Facilitating IAM Roles is a very common and (I think) the right approach to manage authentication for multiple accounts indeed, AWS has just recently released resp. updates that greatly help with this, see Cross-Account Access in the AWS Management Console:

Many AWS customers use separate AWS accounts (usually in conjunction with Consolidated Billing) for their development and production resources. This separation allows them to cleanly separate different types of resources and can also provide some security benefits.

Today we are making it easier for you to work productively within a multi-account (or multi-role) AWS environment by making it easy for you to switch roles within the AWS Management Console. You can now sign in to the console as an IAM user or via federated Single Sign-On and then switch the console to manage another account without having to enter (or remember) another user name and password.

Please note that this doesn't just work for the AWS Management Console, but also with the AWS Command Line Interface (AWS CLI), as greatly explored/explained in by Mitch Garnaat in Switching Roles in the AWS Management Console and AWSCLI.

Furthermore, Mitch has followed up with a dedicated new tool 'rolemodel' to help with setting things up pretty much like you outlined, which you might want to evaluate accordingly:

Rolemodel is a command line tool that helps you set up and maintain cross-account IAM roles for the purpose of using them in the new switch role capability of the AWS management console. These same cross-account roles can also be used with the AWSCLI as described here.

Upvotes: 2

Related Questions