AWS Control Tower のランディングゾーンセットアップ中に「完全な管理者アクセス許可でログインしていることを確認してください。」のエラーメッセージで失敗したときの原因と対応方法
Contorol Tower 有効化時に以下のエラーメッセージが出力したときの原因の一例と、その時の対応内容を紹介します。
セキュリティと柔軟性の向上のために AWS Identity and Access Management(IAM)ポリシーを使用します。一部のアクションは現在、これらのポリシーによって制限んされています。
AWS Control Tower は現在のランディングゾーンの状態を判断できません。完全な管理者アクセス許可でログインしていることを確認してください。
原因と対応まとめ
原因
ランディングゾーンのセットアップ中に有効期限を設定していた権限を利用していため、有効期限が切れてセットアップ中に権限不足となった。
対応
有効期限を再設定して Control Tower のセットアップを再試行して、ランディングゾーンのセットアップが完了した。
検証環境
検証時のランディングゾーンのバージョンは 3.0です。
Control Tower の有効化
今回紹介するエラーメッセージの出力を確認できる画面までの流れを説明します。
Control Tower サービス画面を開き、ランディングゾーンの設定をクリックし Control Tower 有効化の手順を実施します。
前提条件のチェックをパスし、各種パラメータの指定を終えるとランディングゾーンのセットアップ完了待ちとなります。
という通常の Control Tower の有効化作業時のセットアップ完了待ち中に発生したエラーのお話になります。
エラーメッセージ
セキュリティと柔軟性の向上のために AWS Identity and Access Management(IAM)ポリシーを使用します。一部のアクションは現在、これらのポリシーによって制限されています。
といったエラーメッセージがセットアップ完了待ちの間に出力され、ランディングゾーンのセットアップに失敗しました。
AWS Control Tower は現在のランディングゾーンの状態を判断できません。完全な管理者アクセス許可でログインしていることを確認してください。
というエラーメッセージも合わせて出力されます。
実際の画面
上記のエラーが多発し画面を覆い尽くす勢いです。
原因
完全な管理者アクセス許可でログインしていることを確認してください。
とエラーメッセージにありましたが、Control Tower の有効化作業なのでAdministratorAccess
の IAM ポリシーを持つ権限で作業していました。
ただ、強い権限を使うたため有効期限の設定をしていました。ランディングゾーンのセットアップ中に有効期限切れとなり、途中から権限不足になりセットアップが失敗しました。
最低限、マネージメントコンソールへできる権限はあったため、EC2 のダッシュボードを開きました。以下の様に権限がないため表示項目の値を取ってくるすらできません。
対応
AdministratorAccess
を利用するための有効期限を再設定しました。ランディングゾーンのセットアップは目安60分と表示されることもあり、余裕をみておいたほうがよいでしょう。
Controll Tower 画面から再試行をクリックします。
初回の Control Tower 有効化時に入力した項目が引き継がれ設定変更はできません。S3 のログ設定の保存日数だけは引き継がれず再入力を求められます。
ランディングゾーンの設定をクリックすると、ランディングゾーンのセットアップが再開されます。進行状況を確認しているとアカウント登録がすぐ終わったため、前回のセットアップ内容の一部設定は残っているようです。そのため、初回に入力したパラメータを変更できない箇所が多いものと推測しています。
途中から権限不足で失敗したランディングゾーンのセットアップも再試行でセットアップ完了にたどり着きました。
まとめ
- 検証時のランディングゾーンのバージョンは3.0
- ランディングゾーンのセットアップには時間がかるため、有効期限付きの権限ではあれば気をつける
- 権限不足により途中でセットアップに失敗してもランディングゾーンの再試行でセットアップ完了になる
おわり
現時点ではトラブルシューティングマニュアルにも同エラーメッセージの出力の対応例が載っていませんでした。あまり多くはないケースだとは思います。
Troubleshooting - AWS Control Tower
意図的に前提条件を満たしていない環境で Control Tower のセットアップを開始したときのエラーメッセージを確認する作業をしていました。途中で権限不足にするという検証は考えていなかったのですが、検証に時間かかりすぎて意図せず今回のエラーを確認するかたちとなりました。