AWS初心者がアカウント管理運営(AWSアカウント、IAMユーザ)について勉強してみた
AWS初心者がアカウント管理運営(AWSアカウント、IAMユーザ)について勉強してみた:
自部署で初めてAWSを業務適用する必要が出てきて、あわててAWSのお勉強中です。つまり、絶賛初心者。
サービス運用するためのルール作りを主導する役割があるため、社内基準やOLAを意識したアカウント管理業務を作る必要あり。
AWSのドキュメント(BlackBelt)を見てお勉強しました。
Identity and Access Management (IAM)
まず前提として理解すべきことは、上位にAWSアカウントがあって、その配下にIAMユーザを作る。ということ。
AWSアカウント作成時のID、アカウントの全てのAWSサービスとリソースへの完全なアクセス権限を持つ。AWSアカウントはAWSのroot権限を保有し、root権限でないとできない操作がある。日常的なタスクにはAWSアカウント(rootユーザー)を使用しないことを強く推奨。つまり、AWS的には、AWSアカウント≒rootユーザーという理解でよさそう。
AWS操作をよりセキュアにするための認証・許可の仕組み。AWS利用者の認証と、アクセスポリシーを管理。グループ、ユーザー、ロールの作成が可能。1AWSアカウントで5000ユーザーまで作成可能だそう。
では実際にどのような考え方で使っていくのがよいのでしょうか。
AWSアカウントはリソース管理単位やセキュリティ的概念の境界単位に作るのがよさそうと理解しました。具体的にはシステム&環境毎(開発/ステージング/本番)になるのでしょうか。
環境毎にわけなくてもよさそうだが、アクセスポリシー設定の仕方が複雑そう、かつ事故って開発と本番間違えるリスクを考えると、やっぱり分離すべきかと。
AWSアカウントは、、、だれが持つべきか?運用部門の組織管理者が保有して厳密管理かな。使う局面は・・・どのぐらいあるのだろうか?(未勉強)基本は使わない/使わせないアカウントと思った方がよさそう。
実際に開発運用で使うのはIAMユーザになるだろう。私の組織では共有アカウントは基本NGであることを前提として個人毎に払い出し。開発者、運用者などグループ分けしてIAMポリシーをそれぞれ作っていく。
開発環境はまあまあポリシー緩め。本番環境はポリシー厳しく行う。ルール(特権アカウント管理基準、SLA/OLA)と照合してアカウント管理基準を作る必要あり。
AWSマネージメントコンソール上で、AWSアカウントとIAMユーザを見ることができる。
IAMユーザでログインする場合。上段にAWSアカウント、中段にIAMユーザを書く。
AWSアカウントでログインするときはこの画面。ほぼ使うことないので見憶えなかったわあ(すっとぼけ)
AWSアカウントは、組織のセキュリティ的な責任者に承認を得ないと使えないようにすべき。ただ、責任者が独断で使えないようにする必要もあり、どうすべきだろうと考えながらググっていたら、AWSベストプラクティスが提示されていた。あとで読もう。
AWS アクセスキーを管理するためのベストプラクティス
本番環境のIAMユーザーも基本的には同様。こちらはアクセスキー削除なんてできないので、組織の中でちゃんと運営ルール作らないとダメそう。こちらもAWSベストプラクティスを見つけた。
IAM のベストプラクティス
Qiitaに初めて投稿してみたが、こんなんでよいのだろうか。投稿が長くてこれでは持たないのでもう少しシンプルになるように頑張ろう。
自分の技術レベルと興味
自部署で初めてAWSを業務適用する必要が出てきて、あわててAWSのお勉強中です。つまり、絶賛初心者。サービス運用するためのルール作りを主導する役割があるため、社内基準やOLAを意識したアカウント管理業務を作る必要あり。
AWSアカウント、rootユーザ、IAMユーザ
AWSのドキュメント(BlackBelt)を見てお勉強しました。Identity and Access Management (IAM)
まず前提として理解すべきことは、上位にAWSアカウントがあって、その配下にIAMユーザを作る。ということ。
AWSアカウント(root)ユーザー
AWSアカウント作成時のID、アカウントの全てのAWSサービスとリソースへの完全なアクセス権限を持つ。AWSアカウントはAWSのroot権限を保有し、root権限でないとできない操作がある。日常的なタスクにはAWSアカウント(rootユーザー)を使用しないことを強く推奨。つまり、AWS的には、AWSアカウント≒rootユーザーという理解でよさそう。
IAMユーザ (Identity and Access Management)
AWS操作をよりセキュアにするための認証・許可の仕組み。AWS利用者の認証と、アクセスポリシーを管理。グループ、ユーザー、ロールの作成が可能。1AWSアカウントで5000ユーザーまで作成可能だそう。
AWSアカウント作成単位や運営方法
では実際にどのような考え方で使っていくのがよいのでしょうか。
AWSアカウント
AWSアカウントはリソース管理単位やセキュリティ的概念の境界単位に作るのがよさそうと理解しました。具体的にはシステム&環境毎(開発/ステージング/本番)になるのでしょうか。環境毎にわけなくてもよさそうだが、アクセスポリシー設定の仕方が複雑そう、かつ事故って開発と本番間違えるリスクを考えると、やっぱり分離すべきかと。
AWSアカウントは、、、だれが持つべきか?運用部門の組織管理者が保有して厳密管理かな。使う局面は・・・どのぐらいあるのだろうか?(未勉強)基本は使わない/使わせないアカウントと思った方がよさそう。
IAMユーザ
実際に開発運用で使うのはIAMユーザになるだろう。私の組織では共有アカウントは基本NGであることを前提として個人毎に払い出し。開発者、運用者などグループ分けしてIAMポリシーをそれぞれ作っていく。開発環境はまあまあポリシー緩め。本番環境はポリシー厳しく行う。ルール(特権アカウント管理基準、SLA/OLA)と照合してアカウント管理基準を作る必要あり。
コンソールのログインのしかた
AWSマネージメントコンソール上で、AWSアカウントとIAMユーザを見ることができる。IAMユーザでログインする場合。上段にAWSアカウント、中段にIAMユーザを書く。
AWSアカウントでログインするときはこの画面。ほぼ使うことないので見憶えなかったわあ(すっとぼけ)
まとめ
AWSアカウントは、組織のセキュリティ的な責任者に承認を得ないと使えないようにすべき。ただ、責任者が独断で使えないようにする必要もあり、どうすべきだろうと考えながらググっていたら、AWSベストプラクティスが提示されていた。あとで読もう。AWS アクセスキーを管理するためのベストプラクティス
本番環境のIAMユーザーも基本的には同様。こちらはアクセスキー削除なんてできないので、組織の中でちゃんと運営ルール作らないとダメそう。こちらもAWSベストプラクティスを見つけた。
IAM のベストプラクティス
コメント
コメントを投稿