AWS IAMについて学んだ事
AWSのIAMを改めて勉強していたらよくわかっていなかったことがたくさん出てきたので復習も兼ねて学んだ事のアウトプットする。
間違いなどのご指摘は大歓迎です。
私のスペック
大学卒からアパレル関係の営業を6年経験後現在のSESに転職して1年ほど。
気づいたらAWSの勉強をしており、資格11冠目指したいとも思ってます。
その前にAWSエンジニアとして仕事をしたい為、更なる知識の深める際にIAMに詰まった。
SAAは合格済み
なぜ書こうと思ったか
アウトプットするまでが勉強だと思い記事を書く事にした。
また、IAMに苦手意識もあり、AWSに知見がある方がIAMが詳しい人はAWSの知識も豊富とのことを聞き納得した自分がいたため。
そもそもIAMとは
正式な名前はAWS Identity and Access Management
・AWSリソースをセキュアに操作するために、認証・認可の仕組みを提供する
マネージドサービス
・「誰が」「どのような条件で」「どんなアクセスができるか」を細かく制御可能
・IAMポリシーで、最小権限の付与が可能
・料金は無料
・ルートユーザー・ IAMユーザー・グループ・ポリシー・ロールとある
ルートユーザーについて
最初にAWSアカウントを作成したときにメールアドレス・パスワードでログインできる
・全てのAWSサービス・リソースに対して完全なアクセス権を持つユーザー
・全ての権限を持つので悪用されると大変なのでアクセスキーを削除し極力使用しない
ただ、サポートプランの変更などルートユーザーでの認証が必要なタスクが存在する
IAMユーザーについて
AWSで作成するエンティティ(ユーザー・アプリケーション)
・AWSのリソースなどを使用酢rためのユーザー
・名前と認証情報(パスワード・アクセスキー)で構築される
・ルートユーザーではなくIAMユーザーを利用する
IAMポリシーについて
IAMアイデンティティやAWSリソースに関連づける事によってアクセス許可を定義することができる
・JSON形式でのアクセス条件を記述
・アイデンティティベースは管理ポリシー(AWS管理ポリシー・カスタマー管理ポリシー)とインラインポリシー
・リソースベースはIAMロールの信頼ポリシー、S3のバケットポリシー、SNSトピックのアクセス許可、SQSキューのアクセス許可
・パーミッションバウンダリー(IAMアクセス許可の境界、SCP)
・アクセスコントロールポリシー(ACL)
まとめ
IAMはとても奥が深い、特にポリシー・ロール。
今後はポリシー・ロールの勉強をしてポリシー・ロールのみの記事を書く予定