読者です 読者をやめる 読者になる 読者になる

銀の光と碧い空

クラウドなインフラとC#なアプリ開発の狭間にいるエンジニアの日々

AWS Management Console でクロスアカウントアクセスするための IAM Role をPowerShellで生成する

AWS PowerShell

複数のAWSアカウントを管理している人には待望の機能が来ました。

さて、この機能を作るためには、Switch Roleする先のAWSアカウントで、クロスアカウントを許可するIAM Roleが必要です。Management Consoleでぽちぽち作ってもいいですが、PowerShellで一発で*1作ってみました。

$assumeRolePolicyDocument の Principalですが、今回は指定したAWSアカウントの指定したユーザーに対して許可するようにしました。AWSアカウント全体に対して許可する場合は、user/<IAM_USER_NAME> のところを ROOTにすればOKです。また、ここユーザーだと個別指定になってめんどいよね...というのでGroupとかで指定したいところですが、それはできない仕様になっています。

また、付与する権限そのものはすべて許可するようにしていますが、$policy を編集すれば付与する権限を設定することも可能です。

*1:正確にはコマンド2回