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
Oracle Base Database Service 技術詳細
oracle4engineer
PRO
11
77k
SOC2取得の全体像
shonansurvivors
1
340
いま注目しているデータエンジニアリングの論点
ikkimiyazaki
0
550
PLaMo2シリーズのvLLM実装 / PFN LLM セミナー
pfn
PRO
2
830
RailsのPostgreSQL 18対応
yahonda
0
1.3k
Sidekiq その前に:Webアプリケーションにおける非同期ジョブ設計原則
morihirok
17
6.4k
C# 14 / .NET 10 の新機能 (RC 1 時点)
nenonaninu
1
1.3k
AIが書いたコードをAIが検証する!自律的なモバイルアプリ開発の実現
henteko
1
240
#普通の文系サラリーマンチャレンジ 自分でアプリ開発と電子工作を続けたら人生が変わった
tatsuya1970
0
850
PyCon JP 2025 DAY1 「Hello, satellite data! ~Pythonではじめる衛星データ解析~」
ra0kley
0
840
AI時代だからこそ考える、僕らが本当につくりたいスクラムチーム / A Scrum Team we really want to create in this AI era
takaking22
1
170
Optuna DashboardにおけるPLaMo2連携機能の紹介 / PFN LLM セミナー
pfn
PRO
1
750
Featured
See All Featured
GitHub's CSS Performance
jonrohan
1032
460k
Easily Structure & Communicate Ideas using Wireframe
afnizarnur
194
16k
Visualizing Your Data: Incorporating Mongo into Loggly Infrastructure
mongodb
48
9.7k
Building an army of robots
kneath
306
46k
Imperfection Machines: The Place of Print at Facebook
scottboms
269
13k
ReactJS: Keep Simple. Everything can be a component!
pedronauck
667
120k
Context Engineering - Making Every Token Count
addyosmani
3
140
A Modern Web Designer's Workflow
chriscoyier
697
190k
What's in a price? How to price your products and services
michaelherold
246
12k
The Illustrated Children's Guide to Kubernetes
chrisshort
48
51k
Cheating the UX When There Is Nothing More to Optimize - PixelPioneers
stephaniewalter
285
14k
XXLCSS - How to scale CSS and keep your sanity
sugarenia
248
1.3M
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
ご静聴ありがとうございました