Slide 1

Slide 1 text

AWS IAM概要 2019.03.02 Kento Takano

Slide 2

Slide 2 text

自己紹介 Kento Takano(@Kento75) ・自称フロントエンドエンジニア ・好きな言語 → React.js ・好きなクラウド → GCP ・好きな女優 → 新垣結衣 Blog → https://overreact.tk Twitter → https://twitter.com/Kento751 Github → https://github.com/Kento75

Slide 3

Slide 3 text

IAMとは? AWS IAM とは、 AWSを安全に操作する為の認証・認可の仕組み ・AWS利用者の管理 ・アクセス許可の管理 ・ユーザー(個人) OR グループごとに管理

Slide 4

Slide 4 text

権限 ・EC2: OK ・S3 : NG たとえば、 ユーザーが、AWSのEC2の起動、停止に対して権限を持ち、 S3に対しては権限を持たない場合 ユーザー IAM AWS EC2 S3

Slide 5

Slide 5 text

IAMの主要トピック ・ユーザー ・グループ ・ポリシー ・ロール

Slide 6

Slide 6 text

ユーザー概要 IAMユーザーは2種類ある ・ルートユーザー ・IAMユーザー

Slide 7

Slide 7 text

ルートユーザーとは? ・AWSアカウント作成時に作られるユーザー ・全てのAWSサービスとリソースに対する権限を持つ ・業務等(個人利用でも)ルートユーザーを使用しない。  流出した場合、やりたい放題される。

Slide 8

Slide 8 text

ルートユーザーにしかできない操作 (主要なものだけ) ・ルートアカウントのメールアドレス、パスワード変更 ・AWSアカウントの請求情報の参照 ・Route53で登録したドメインを別AWSアカウントに移管 ・CloudFrontのキーペア作成 ・AWSアカウントの停止 ・侵入テスト申請 ・逆引き設定の申請 etc...

Slide 9

Slide 9 text

IAMユーザーとは? ・IAMポリシー内でAWSサービスを利用できるユーザー ・基本の操作は、ルートユーザーを使わずにこちらを使う。  ※ IAMポリシーとは、アクセス権限のこと

Slide 10

Slide 10 text

権限 ・EC2: OK ・S3 : NG IAMユーザーとは? 先ほどのスライドのユーザーアクセスの例は、IAMユーザー IAMユーザー IAM AWS EC2 S3

Slide 11

Slide 11 text

IAMユーザーの設定、設計 設定上限:アカウント毎に、5000ユーザーまで作成できる 設計内容:ユーザー名、パス、所属グループ、権限の4つ

Slide 12

Slide 12 text

IAMグループとは? ・IAMポリシー内でAWSサービスを利用できるグループ ・IAMユーザー複数に対して同じ権限を設定したい場合に  使用する。  身近な例では、同じサーバ運用業務を行うメンバー全員に  個 別に権限を付与するのは、あまり賢くない。  グループを1つ作成すれば、メンバ

Slide 13

Slide 13 text

権限 ・EC2: OK ・S3 : NG 身近な例では? 同じサーバ運用業務を行うメンバー全員に  個別に権限を付与するの は、あまり賢くない。必要な権限が変わった時に全員分変更は大変。 IAMユーザー IAM AWS EC2 S3 x2

Slide 14

Slide 14 text

権限 ・EC2: OK ・S3 : NG IAMグループで設定したら? IAMグループの設定1つあれば、権限を追加したい時や減らしたい時 にもIAMグループの変更だけで良い。運用が楽になる。 IAMグループ IAM AWS EC2 S3

Slide 15

Slide 15 text

IAMグループの設定、設計 設定上限:アカウント毎に、100グループまで作成できる 設計内容:グループ名、パス、権限の3つ

Slide 16

Slide 16 text

IAMの認証方式 ・アクセスキーID/シークレットアクセスキー  → 主に、API利用時に使用する ・X.509 Certificate  → 公開鍵認証形式でのAPIリクエストに使用する ・AWSマネジメントコンソールへのログイン  → AWSアカウントごとにパスワードを設定する ・MFA(多要素認証)  → スマートフォンなど、物理デバイスを利用した認証形式   

Slide 17

Slide 17 text

IAMポリシーとは? ・IAMユーザーやIAMグループへAWSサービス、  リソースへのアクセス権限を付与する

Slide 18

Slide 18 text

権限 ・EC2: OK ・S3 : NG 先ほどの図では? IAMグループ IAM AWS EC2 S3 IAMポリシー

Slide 19

Slide 19 text

IAMポリシーの種類 以下の2つの分かれている。 ・管理ポリシー  → AWS管理ポリシー、カスタム管理ポリシー ・インラインポリシー  → 自作の管理ポリシー

Slide 20

Slide 20 text

管理ポリシーとは? ・AWS管理ポリシー  → AWSが作成、管理するポリシー ・カスタム管理ポリシー  → AWSアカウントで作成、管理するポリシー    同じポリシーを複数のIAMエンティティにアタッチできる ※ IAMエンティティとは、IAMユーザー、IAMグループ、   IAMロール、キー、証明書、MFAデバイスetcのこと          

Slide 21

Slide 21 text

インラインポリシーとは? ・自作の管理ポリシー  → プリンシパルエンティティにアタッチできるポリシー ※ プリンシパルエンティティとは、IAMユーザー、IAMグループ、   IAMロールのこと

Slide 22

Slide 22 text

IAMポリシー 人 or サービスへの適用 IAMポリシーには、 ユーザーベースとリソースベースのポリシー適用がある。 ユーザーベースのポリシー適用 サービスベースのポリシー適用 IAMユーザー SNS S3 SQS AWSアカウントを越したアクセス許可が 可能

Slide 23

Slide 23 text

ユーザーベース、サービスベースを 図にするとこんな感じ IAMグループ IAM AWS EC2 S3 IAMユーザー Aポリシー ・EC2: OK ・S3 : OK Bポリシー ・EC2: OK ・S3 : NG etc... IAMロール Cポリシー ・EC2: NG ・S3 : OK

Slide 24

Slide 24 text

IAMで管理しているユーザー以外がアクセスする場 合は? ・アプリケーションによっては、30分間のアクセス許可とか、   LDAPでの外部でのアクセス許可を適用したい場合は? ・顧客に対してIAMを持ちたくない(持つべきではない) → AWS Security Token Service(STS)を使う

Slide 25

Slide 25 text

AWS STS とは? AWS Security Token Service(STS)とは、 動的にIAMユーザーを作り、認証用トークンを発行するサービス