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 re:Inforce 2024 re:Cap セミナー ~IAM Access Ana...
Search
平木佳介
June 17, 2024
1
870
AWS re:Inforce 2024 re:Cap セミナー ~IAM Access Analyzerのアップデートを語ります~
【オフライン世界最速?】 AWS re:Inforce 2024 re:Cap セミナー
平木佳介
June 17, 2024
Tweet
Share
More Decks by 平木佳介
See All by 平木佳介
セキュリティ運用の可能性を感じた AWS Well-Architected Security Assessment Tool MCP Server をご紹介します
khiraki
1
160
ブログ用スライド- Gemini版Slide
khiraki
0
480
ブログ用スライド- ChatGPT版Slide
khiraki
0
480
AWS Organizationsの組織ポリシー 使ってますか?~ Toranomon Tech Hub 第5回 ~
khiraki
0
140
AWSにおける OWASP Non-Human Identities (NHI) Top10 対策を考える
khiraki
0
110
AWS Community Buildersを布教したい件について
khiraki
0
25
IAMアクセスキー漏洩について
khiraki
0
44
Organizations のポリシー使いこなしてますか? ~最新の Security Hub ポリシーを添えて~
khiraki
0
22
クラウド食堂 #2 ~AWSネタでLT会~ 登壇ネタのためにAWSの運用で地味に使えそうな ブラウザ拡張機能を作ってみた
khiraki
0
680
Featured
See All Featured
Making the Leap to Tech Lead
cromwellryan
135
9.7k
Product Roadmaps are Hard
iamctodd
PRO
55
12k
個人開発の失敗を避けるイケてる考え方 / tips for indie hackers
panda_program
122
21k
Writing Fast Ruby
sferik
630
62k
Become a Pro
speakerdeck
PRO
31
5.8k
Refactoring Trust on Your Teams (GOTO; Chicago 2020)
rmw
35
3.4k
More Than Pixels: Becoming A User Experience Designer
marktimemedia
3
330
Google's AI Overviews - The New Search
badams
0
910
Lessons Learnt from Crawling 1000+ Websites
charlesmeaden
PRO
1
1.1k
A Tale of Four Properties
chriscoyier
162
24k
How to train your dragon (web standard)
notwaldorf
97
6.5k
Why Mistakes Are the Best Teachers: Turning Failure into a Pathway for Growth
auna
0
54
Transcript
【オフライン世界最速?】 AWS re:Inforce 2024 re:Cap セミナー IAM Access
Analyzerのアップデートを語ります クラスメソッド株式会社 AWS事業本部 | 平木 佳介 1
自己紹介 2 ~$ whoami 平木佳介 (Hiraki Keisuke) ~$ ~$
jobs [2]+ 実行中 クラスメソッド(株)AWS事業本部コンサルティング部 ~$ ~$ groups ソリューションアーキテクト ~$ ~$ cat 平木佳介.conf | grep 趣味 趣味: 旅行/推し事 ~$ ~$ cat 平木佳介.conf | grep 好きなAWSサービス 好きなAWSサービス : AWS Security Hub
3 人生初 海外&AWSイベント参加しました
4 キーノートや様々なセッションなどにも現地参加
5 私たちは、ゼロトラストをさらに簡単かつ コスト効率の高いものにするための機 能に投資している ゼロトラストには、詳細かつきめ細かい アクセス制御、継続的な検証、最小限 の特権アクセスを備えた強力なIDおよ びアクセス管理システムも必要
多くの組織は、ワークロードとデータを ハイブリッド環境で使用しているため、 統一したセキュリティポリシーを維持す ることが困難になっている(翻訳)
6 IAM Access Analyzer のアップデート IAM Access Analyzerが 未使用のアクセスに対する 推奨事項をプレビュー表示
IAM Access Analyzerのカスタムポリシー チェックでパブリックと重要リソースアクセ スのチェックが追加
7 未使用のアクセスの推奨事項プレビュー表示 (preview) IAM Access Analyzerが 未使用のアクセスに対する 推奨事項をプレビュー表示 IAM Access
Analyzerの 「未使用のアクセス」にて、どのように 修正すべきかの推奨事項が表示 検出結果タイプが2種類に分かれる • 未使用のロール/パスワード/アク セスキー • 未使用の許可 最小権限の設定に役立つ。
8 未使用のアクセスの推奨事項プレビュー表示 (preview)
9 未使用のアクセスの推奨事項プレビュー表示 (preview) 未使用の許可
10 未使用のアクセスの推奨事項プレビュー表示 (preview) 未使用の許可
11 未使用のアクセスの推奨事項プレビュー表示 (preview) 未使用のロール
12 カスタムポリシーチェックにアクセスチェックの更新 (preview) IAM Access Analyzerのカスタムポリシー チェックでパブリックと重要リソースアクセ スのチェックが追加 自動推論を利用してパブリックアクセ スや重要リソースアクセスに関するポ
リシー変更をチェックが可能 • CheckNoPublicAccess(New) • CheckAccessNotGranted (Update) コマンドラインまたはAPI経由で呼び出し、 チェック結果は「PASS」「FAIL」のいずれかと なる
13 カスタムポリシーチェックにアクセスチェックの更新 (preview) CheckNoPublicAccess CheckAccessNotGranted PASS FAIL PASS FAIL Q.
パブリックアクセスがあるか YES NO YES NO Q. 特定リソースへの アクセス許可があるか
14 カスタムポリシーチェックにアクセスチェックの更新 (preview) CheckNoPublicAccess ~$ cat <<EOF > bucket-policy.json {
"Version": "2012-10-17", "Statement": [ { "Effect": "Allow", "Principal": "*", "Action": "s3:GetObject", "Resource": "arn:aws:s3:::your-bucket-name/*" } ] } EOF ~$ ~$ aws accessanalyzer check-no-public-access \ --policy-document file://bucket-policy.json \ --resource-type AWS::S3::Bucket --output json { "result": "FAIL", "message": "The resource policy grants public access for the given resource type.", "reasons": [ { "description": "Public access granted in the following statement with index: 0.", "statementIndex": 0 } ] } ~$ cat <<EOF > bucket-policy-new.json { "Version": "2012-10-17", "Statement": [ { "Effect": "Allow", "Principal": { "AWS": "arn:aws:iam::123456789012:root" }, "Action": "s3:GetObject", "Resource": "arn:aws:s3:::your-bucket-name/*" } ] } EOF ~$ ~$ aws accessanalyzer check-no-public-access \ --policy-document file://bucket-policy-new.json \ --resource-type AWS::S3::Bucket --output json { "result": "PASS", "message": "The resource policy does not grant public access for the given resource type." } FAIL PASS
15 カスタムポリシーチェックにアクセスチェックの更新 (preview) CheckAccessNotGranted ~$ cat <<EOF > iam-policy.json {
"Version": "2012-10-17", "Statement": [ { "Effect": "Allow", "Action": "s3:GetObject", "Resource": "arn:aws:s3:::your-bucket-name/*" } ] } EOF ~$ ~$ aws accessanalyzer check-access-not-granted --policy-document file://iam-policy.json \ --access resources="arn:aws:s3:::your-bucket-name/*" \ --policy-type IDENTITY_POLICY --output json { "result": "FAIL", "message": "The policy document grants access to perform one or more of the listed actions or resources.", "reasons": [ { "description": "One or more of the listed actions or resources in the statement with index: 0.", "statementIndex": 0 } ] } ~$ cat <<EOF > iam-policy.json { "Version": "2012-10-17", "Statement": [ { "Effect": "Allow", "Action": "s3:GetObject", "Resource": "arn:aws:s3:::your-bucket-name/*" } ] } EOF ~$ ~$ aws accessanalyzer check-access-not-granted --policy-document file://iam-policy.json \ --access resources="arn:aws:s3:::recap-securebucket/*" \ --policy-type IDENTITY_POLICY --output json { "result": "PASS", "message": "The policy document does not grant access to perform the listed actions or resources." } FAIL PASS
16 まとめ & 注意事項 • 未使用のアクセスの推奨事項のプレビュー表示 ◦ 未使用のアクセスを活用し、さらにどのように対処すべきかが一目瞭然となった ◦ 今後のIAMロール、ユーザ周りの棚卸の基準にも有効活用できそう
• カスタムポリシーチェック • 事前にポリシーのチェックを行うことで不用意なパブリック公開を避け、アクセスさせた くないリソースへの権限チェックに活用可能 • CI/CDなどに組み込むことで自動化も可能 注意事項 • 未使用のアクセスの料金には要注意(1つのIAMロール・ユーザ毎に課金が発生) • 2つのアップデートともにプレビュー版のため仕様が変更となる可能性あり
17