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
JAWSDAYS2017_IAM
Search
Toshiya OKITA
March 11, 2017
Technology
0
1.5k
JAWSDAYS2017_IAM
http://jawsdays2017.jaws-ug.jp/session/1792/
Toshiya OKITA
March 11, 2017
Tweet
Share
More Decks by Toshiya OKITA
See All by Toshiya OKITA
20170827jtf
toshi__ya
0
870
infrapre20180805
toshi__ya
0
49
JAWSUG-yokohama-Reboot
toshi__ya
0
1.6k
Negotiation anti-patterns
toshi__ya
0
140
Other Decks in Technology
See All in Technology
ChatGPTとPlantUML/Mermaidによるソフトウェア設計
gowhich501
1
130
DevIO2025_継続的なサービス開発のための技術的意思決定のポイント / how-to-tech-decision-makaing-devio2025
nologyance
1
370
人工衛星のファームウェアをRustで書く理由
koba789
13
7.1k
Flutterでキャッチしないエラーはどこに行く
taiju59
0
220
開発者を支える Internal Developer Portal のイマとコレカラ / To-day and To-morrow of Internal Developer Portals: Supporting Developers
aoto
PRO
1
440
なぜSaaSがMCPサーバーをサービス提供するのか?
sansantech
PRO
8
2.7k
OCI Oracle Database Services新機能アップデート(2025/06-2025/08)
oracle4engineer
PRO
0
110
Codeful Serverless / 一人運用でもやり抜く力
_kensh
7
370
エラーとアクセシビリティ
schktjm
1
1.2k
AI開発ツールCreateがAnythingになったよ
tendasato
0
120
MCPで変わる Amebaデザインシステム「Spindle」の開発
spindle
PRO
3
3.2k
BPaaSにおける人と協働する前提のAIエージェント-AWS登壇資料
kentarofujii
0
130
Featured
See All Featured
Facilitating Awesome Meetings
lara
55
6.5k
Intergalactic Javascript Robots from Outer Space
tanoku
272
27k
Unsuck your backbone
ammeep
671
58k
Building a Modern Day E-commerce SEO Strategy
aleyda
43
7.6k
No one is an island. Learnings from fostering a developers community.
thoeni
21
3.4k
Principles of Awesome APIs and How to Build Them.
keavy
126
17k
We Have a Design System, Now What?
morganepeng
53
7.8k
Side Projects
sachag
455
43k
Building Applications with DynamoDB
mza
96
6.6k
Six Lessons from altMBA
skipperchong
28
4k
BBQ
matthewcrist
89
9.8k
Docker and Python
trallard
45
3.6k
Transcript
Security-JAWS 大喜多 利哉 IAM 権限をこえて
自己紹介 • 大喜多 利哉(https://ookita.biz/) • 仕事:回線サービス・VPN・F/Wが専門の ネットワークエンジニア • 活動コミュニティ: •
Security-JAWS 運営メンバー • JAWS-UG 横浜支部 運営メンバー • KUSANAGI-UG東京 代表
今回みなさんに おはなしすること • IAMとは何か • IAMの各要素とそれぞれのユースケース • IAMベストプラクティス
IAMとは • AWS Identity and Access Managementの略 • AWS利用者の認証とアクセスポリシーの管理 グループA(全操作可)
グループB(S3全操作可) グループC(S3参照可) EC2 S3
IAMユーザー IAMグループ • IAMユーザー AWS操作用のユーザー 1ユーザー10グループまで所属可能 パーミッション(AWSサービスへのアクセス権限) • IAMグループ IAMユーザーをまとめるグループ
パーミッション(AWSサービスへのアクセス権限) ※パーミッションはIAMユーザー/グループどちらにも設定できる
IAMポリシー • AWSに対する権限設定 JSON形式で記述 http://docs.aws.amazon.com/ja_jp/IAM/latest/UserGuide/reference_policies.html • AWS管理ポリシー AWSが一般的なユースケースに基づいて作成したプリセットポリシー • カスタマー管理ポリシー
AWS管理ポリシーで要件を満たせない場合に独自に作成するポリシー
アクセス可否の 決定ロジック • 先ほど ※パーミッションはIAMユーザー/グループどちらにも設定できる と書きました。 • どういう判定をするのか気になりますよね • すべてのアクセスはデフォルトで拒否(暗黙のDeny)
その他に明示的なAllowと明示的なDenyがある • 明示的なDeny(最優先)>明示的なAllow(優先)>暗黙のDeny(最後) • IAMユーザー・IAMグループの設定を参照して、上記優先順位に従って決 定されます。なおIAMユーザーとIAMグループの間に優劣の関係はありま せん。
リソースベースポリシー • これまではIAMユーザー/IAMグループに対してポリシーを設定する 話をしてきました。 • リソースにポリシーを紐付けることも可能です。 • S3のバケットやSQSのキューなどに対してポリシーを紐付けること ができます。 例)特定のIPアドレスからしかアクセスできないバケットなどが作れ
ます
IAMロール • AWSサービスやアプリケーション等にAWS操作権限を付与するため の仕組み • IAMユーザー/グループとは全く別のもの • 例えば、AWS SDKを利用する場合にアクセスキーとシークレット キーを明示的に記載する必要がありましたが、IAMロールを使用する
と、IAMロールが適用されたインスタンス上では認証情報設定が不要 になります。
その他 • Identitiy Federation(ID連携) 企業・組織が持つ認証機能とAWSの認証を紐付ける機能 LDAP認証済みユーザーに対してS3へのアクセス権をつけるなどできる 認証したユーザーごとに一時的なアクセスキーを発行することで実現
IAM ベストプラクティス 1. AWS アカウント(ルート)のアクセスキーをロックする 2. 個々のIAM ユーザーを作成する 3. IAM
ユーザーへのアクセス権限を割り当てるためにグループを使う 4. 最小限の特権を認める 5. ユーザーのために強度の高いパスワードを設定する 6. 特権ユーザーに対して、MFA を有効化する 7. EC2で作動するアプリケーションに対し、ロールを使用する 8. 認証情報を共有するのではなく、ロールを使って委託する 9. 認証情報を定期的にローテーションする 10. 不要な認証情報の削除 11. 追加セキュリティに対するポリシー条件を使用する 12. AWSアカウントのアクティビティの履歴の保持
参考 IAMドキュメント群 http://aws.amazon.com/jp/documentation/iam/ IAMベストプラクティス http://docs.aws.amazon.com/IAM/latest/UserGuide/IAMBestPracti ces.html
ご静聴ありがとうございました