【AWS】IAMって何?サービスの詳細と概要
今回のテーマ
AWSにて主に認証関係で使用されるIAMについて
概要をまとめてみる。
AWS上での操作は今回は記載しません。
目次
- IAMとは
- IAMで主にできること
- IAMにおけるベストプラクティス
IAMとは
AWS公式ページを抜粋すると以下の定義になります。
AWS Identity and Access Management (IAM) は、AWS リソースへのアクセスを安全に管理するためのウェブサービスです。
要はログインできるユーザを作成したり、ユーザの権限を設定したり
認証で使用されるのがこのサービスです。
機能はもちろん違いますが、イメージとして
WindowsでいうとActive Directoryの役割を担うのがこのIAMです。
IAMで主にできること
IAMでは様々な機能がありますが
おそらく実務上でも使用する基本的な機能についてまとめます。
IAMユーザの作成
デフォルトだとAWS上のサービスを全て操作できる
ルートユーザになっています。そのため操作してはいけない人が思いがけない操作をしてしまう可能性があるため、権限を割り当てたIAMユーザを作成して、そのアカウントを使用することが推奨されます。
IAMグループの作成
個々のユーザ単位で権限を管理するのではなく、グループを作成して
グループ単位で権限を与えて、そのグループにユーザを所属させることができます。- IAMポリシーの作成
ポリシーとは操作権限のことです。AWSではデフォルトでポリシーが作成されています。
例えばEC2サービスだけ全ての操作権限を与えたり独自でポリシーを
作成することができます。
- IAMロールの作成
IAMロールとはユーザやグループにではなく、EC2などのサービスに対して与える権限のことです。
例えばEC2インスタンスからS3(データベース)を操作する権限を与えたりすることができます。
IAMにおける良い運用方法
ではIAMでグループ、ユーザ、ロールを作成したが
実際にはどのように運用していくのが良いのか
以下の通りだと考えております。
IAMユーザを個々に作成する
一つのアカウントを使い回すと誰が何の操作をしたかがわからなくなる
ためなるべく1ユーザ1アカウントで管理する方がいいグループごとに権限を管理する
グループごとに管理することで例えば権限変更が発生した場合に個々のユーザに対して設定変更するのではなく、グループの権限変更をすれば良いため管理が効率化されます。権限は必要な権限を必要な人に
これは基本的な考えですが、必要以上の権限は与えないようにします。不要なユーザや権限は削除する
退職した方などのユーザは定期的に削除することが必要です。
特にAWSはインターネットが使えれば、外部から使用することができるので 重要です。
まとめ
今回学んだことをまとめる。
- IAMとは認証系のサービス
- IAMの基本機能にはユーザ、グループ、ポリシー、ロールの作成がある
- IAMのベストプラクティスについて
クラウドサービスのデメリットでもあると思うが、AWSのコンソール画面は
自宅のパソコンからも開けてしまうのでIAMを活用したセキュリティ面は
しっかり運用していく必要があると感じました。
今回は操作画面はなしでしたが、実際にコンソールに入って
サービスを触ったりUdemyでもわかりやすくまとめられている動画もあるのでそちらを参考にしてもらえればと思います。
今回は基本的な機能を中心にまとめましたが、後日アソシエイトの資格対策として深くまとめていきます。