問題タブ [assume-role]
For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.
amazon-web-services - 明示的に作成されたアクセス キーとシークレット キーなしで AWS MGN (Application Migration) を使用できますか?
オンプレミス環境を AWS に移行する必要がある状況があります。選択したツールは AWS MGN (アプリケーション移行) です。ソース アプリケーションでのエージェントのロードと使用に関する AWS のドキュメントに従っています。
https://docs.aws.amazon.com/mgn/latest/ug/windows-agent.html
ドキュメントには、アクセス キーと秘密キーの必要性が明確に記載されています。私たちの環境は、限られたユーザーを持つルート アカウントでセットアップされ、チームは SSO を介して他のアカウント (例: dev/test/prod/etc.) で AWS 環境にアクセスします。MGN サービスは、次の 4 つのロールも作成します。
- AWSApplicationMigrationConversionServerRole
- AWSApplicationMigrationMGHRole
- AWSApplicationMigrationReplicationServerRole
- AWSServiceRoleForApplicationMigrationService
「aws sts assume role」を使用して、必要なキーを収集できることはわかっています。たとえば、次のようになります。
これらのロールは AWS によって作成されたものであり、それらを編集して SSO ユーザー アクセス権を付与することはできません (CLI から「aws sts がロールを引き受ける」ことはできません)。そのため、これらのロールを直接想定することはできません。また、AWS が管理するポリシーを使用するロールを作成することもできません。
私がやりたいことが可能かどうか、または私が見ていない簡単な解決策があるかどうかはよくわかりません。
編集:移行先のアカウントで、次のポリシーを使用してテストロールを作成することに実際に成功しました:
- AdministratorAccess (AWS 管理ポリシー)
- AWSApplicationMigrationAgentPolicy (AWS 管理ポリシー)
- AWSApplicationMigrationFullAccess (AWS 管理ポリシー)
- AWSApplicationMigrationMGHAccess (AWS 管理ポリシー)
- AWSApplicationMigrationReadOnlyAccess (AWS 管理ポリシー)
- AWSApplicationMigrationEC2Access (AWS 管理ポリシー)
- AWSApplicationMigrationConversionServerPolicy (AWS 管理ポリシー)
- AWSApplicationMigrationReplicationServerPolicy (AWS 管理ポリシー)
次に、assume-role を実行して、アクセス キーとシークレット キーを取得しました。
プロンプトが表示されたら、これらの値を使用して管理者としてエージェントを再度実行しようとしました。
ご覧のとおり、エラーが発生しました。AWS にチケットを提出して、私のアプローチが現在実現可能かどうかを確認しました。彼らが応答したら、更新します。