Upgrade to Pro
— share decks privately, control downloads, hide ads and more …
Speaker Deck
Features
Speaker Deck
PRO
Sign in
Sign up for free
Search
Search
AWS IAM概要
Search
Kento Takano
March 02, 2019
Technology
0
290
AWS IAM概要
SAAのセキュリティに関する点数が非常に悪かったので、
自戒の念を込めて作成した資料
Kento Takano
March 02, 2019
Tweet
Share
More Decks by Kento Takano
See All by Kento Takano
Drone.ioでテスト自動化
kento75
0
400
Other Decks in Technology
See All in Technology
Cloud Native PG 使ってみて気づいたことと最新機能の紹介 - 第52回PostgreSQLアンカンファレンス
seinoyu
2
230
SaaSプロダクト開発におけるバグの早期検出のためのAcceptance testの取り組み
kworkdev
PRO
0
470
Keynote - KCD Brazil - Platform Engineering on K8s (portuguese)
salaboy
0
130
ペアプログラミングにQAが加わった!職能を超えたモブプログラミングの事例と学び
tonionagauzzi
1
150
DevOps文化を育むQA 〜カルチャーバブルを生み出す戦略〜 / 20250317 Atsushi Funahashi
shift_evolve
1
110
Medmain FACTBOOK
akinaootani
0
110
グループポリシー再確認
murachiakira
0
170
LINE Notify互換のボットを作った話
kenichirokimura
0
180
一人QA時代が終わり、 QAチームが立ち上がった話
ma_cho29
0
290
移行できそうでやりきれなかった 10年超えのシステムを葬るための戦略
ryu955
2
540
AIエージェントキャッチアップと論文リサーチ
os1ma
6
1.2k
新卒エンジニア研修の試行錯誤と工夫/nikkei-tech-talk-31
nishiuma
0
200
Featured
See All Featured
VelocityConf: Rendering Performance Case Studies
addyosmani
328
24k
Documentation Writing (for coders)
carmenintech
69
4.7k
Practical Tips for Bootstrapping Information Extraction Pipelines
honnibal
PRO
17
1.1k
Visualizing Your Data: Incorporating Mongo into Loggly Infrastructure
mongodb
45
9.5k
Faster Mobile Websites
deanohume
306
31k
How GitHub (no longer) Works
holman
314
140k
The Myth of the Modular Monolith - Day 2 Keynote - Rails World 2024
eileencodes
22
2.6k
Rebuilding a faster, lazier Slack
samanthasiow
80
8.9k
Designing for humans not robots
tammielis
251
25k
I Don’t Have Time: Getting Over the Fear to Launch Your Podcast
jcasabona
32
2.2k
Facilitating Awesome Meetings
lara
53
6.3k
JavaScript: Past, Present, and Future - NDC Porto 2020
reverentgeek
47
5.3k
Transcript
AWS IAM概要 2019.03.02 Kento Takano
自己紹介 Kento Takano(@Kento75) ・自称フロントエンドエンジニア ・好きな言語 → React.js ・好きなクラウド → GCP
・好きな女優 → 新垣結衣 Blog → https://overreact.tk Twitter → https://twitter.com/Kento751 Github → https://github.com/Kento75
IAMとは? AWS IAM とは、 AWSを安全に操作する為の認証・認可の仕組み ・AWS利用者の管理 ・アクセス許可の管理 ・ユーザー(個人) OR グループごとに管理
権限 ・EC2: OK ・S3 : NG たとえば、 ユーザーが、AWSのEC2の起動、停止に対して権限を持ち、 S3に対しては権限を持たない場合 ユーザー
IAM AWS EC2 S3
IAMの主要トピック ・ユーザー ・グループ ・ポリシー ・ロール
ユーザー概要 IAMユーザーは2種類ある ・ルートユーザー ・IAMユーザー
ルートユーザーとは? ・AWSアカウント作成時に作られるユーザー ・全てのAWSサービスとリソースに対する権限を持つ ・業務等(個人利用でも)ルートユーザーを使用しない。 流出した場合、やりたい放題される。
ルートユーザーにしかできない操作 (主要なものだけ) ・ルートアカウントのメールアドレス、パスワード変更 ・AWSアカウントの請求情報の参照 ・Route53で登録したドメインを別AWSアカウントに移管 ・CloudFrontのキーペア作成 ・AWSアカウントの停止 ・侵入テスト申請 ・逆引き設定の申請 etc...
IAMユーザーとは? ・IAMポリシー内でAWSサービスを利用できるユーザー ・基本の操作は、ルートユーザーを使わずにこちらを使う。 ※ IAMポリシーとは、アクセス権限のこと
権限 ・EC2: OK ・S3 : NG IAMユーザーとは? 先ほどのスライドのユーザーアクセスの例は、IAMユーザー IAMユーザー IAM
AWS EC2 S3
IAMユーザーの設定、設計 設定上限:アカウント毎に、5000ユーザーまで作成できる 設計内容:ユーザー名、パス、所属グループ、権限の4つ
IAMグループとは? ・IAMポリシー内でAWSサービスを利用できるグループ ・IAMユーザー複数に対して同じ権限を設定したい場合に 使用する。 身近な例では、同じサーバ運用業務を行うメンバー全員に 個 別に権限を付与するのは、あまり賢くない。 グループを1つ作成すれば、メンバ
権限 ・EC2: OK ・S3 : NG 身近な例では? 同じサーバ運用業務を行うメンバー全員に 個別に権限を付与するの は、あまり賢くない。必要な権限が変わった時に全員分変更は大変。
IAMユーザー IAM AWS EC2 S3 x2
権限 ・EC2: OK ・S3 : NG IAMグループで設定したら? IAMグループの設定1つあれば、権限を追加したい時や減らしたい時 にもIAMグループの変更だけで良い。運用が楽になる。 IAMグループ
IAM AWS EC2 S3
IAMグループの設定、設計 設定上限:アカウント毎に、100グループまで作成できる 設計内容:グループ名、パス、権限の3つ
IAMの認証方式 ・アクセスキーID/シークレットアクセスキー → 主に、API利用時に使用する ・X.509 Certificate → 公開鍵認証形式でのAPIリクエストに使用する ・AWSマネジメントコンソールへのログイン →
AWSアカウントごとにパスワードを設定する ・MFA(多要素認証) → スマートフォンなど、物理デバイスを利用した認証形式
IAMポリシーとは? ・IAMユーザーやIAMグループへAWSサービス、 リソースへのアクセス権限を付与する
権限 ・EC2: OK ・S3 : NG 先ほどの図では? IAMグループ IAM AWS
EC2 S3 IAMポリシー
IAMポリシーの種類 以下の2つの分かれている。 ・管理ポリシー → AWS管理ポリシー、カスタム管理ポリシー ・インラインポリシー → 自作の管理ポリシー
管理ポリシーとは? ・AWS管理ポリシー → AWSが作成、管理するポリシー ・カスタム管理ポリシー → AWSアカウントで作成、管理するポリシー 同じポリシーを複数のIAMエンティティにアタッチできる ※
IAMエンティティとは、IAMユーザー、IAMグループ、 IAMロール、キー、証明書、MFAデバイスetcのこと
インラインポリシーとは? ・自作の管理ポリシー → プリンシパルエンティティにアタッチできるポリシー ※ プリンシパルエンティティとは、IAMユーザー、IAMグループ、 IAMロールのこと
IAMポリシー 人 or サービスへの適用 IAMポリシーには、 ユーザーベースとリソースベースのポリシー適用がある。 ユーザーベースのポリシー適用 サービスベースのポリシー適用 IAMユーザー SNS
S3 SQS AWSアカウントを越したアクセス許可が 可能
ユーザーベース、サービスベースを 図にするとこんな感じ IAMグループ IAM AWS EC2 S3 IAMユーザー Aポリシー ・EC2:
OK ・S3 : OK Bポリシー ・EC2: OK ・S3 : NG etc... IAMロール Cポリシー ・EC2: NG ・S3 : OK
IAMで管理しているユーザー以外がアクセスする場 合は? ・アプリケーションによっては、30分間のアクセス許可とか、 LDAPでの外部でのアクセス許可を適用したい場合は? ・顧客に対してIAMを持ちたくない(持つべきではない) → AWS Security Token Service(STS)を使う
AWS STS とは? AWS Security Token Service(STS)とは、 動的にIAMユーザーを作り、認証用トークンを発行するサービス