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
Amazon Q Developer CLIと一緒に最小権限の原則を守ったIAMポリシーを作ろう!
Search
アキキー
March 26, 2025
1
320
Amazon Q Developer CLIと一緒に最小権限の原則を守ったIAMポリシーを作ろう!
アキキー
March 26, 2025
Tweet
Share
More Decks by アキキー
See All by アキキー
Amazon Bedrockマルチエージェントコラボレーションを諦めてLangGraphに入門してみた
akihisaikeda
1
220
JAWS_DAYS_2025_アーキテクチャ道場発表資料_ブラックサンダーズ
akihisaikeda
0
570
Amazon Bedrock Agentsで始める サーバーレスAIエージェント
akihisaikeda
0
110
Featured
See All Featured
Rebuilding a faster, lazier Slack
samanthasiow
80
8.9k
Templates, Plugins, & Blocks: Oh My! Creating the theme that thinks of everything
marktimemedia
30
2.3k
Building an army of robots
kneath
304
45k
Build your cross-platform service in a week with App Engine
jlugia
229
18k
How GitHub (no longer) Works
holman
314
140k
Visualization
eitanlees
146
15k
GitHub's CSS Performance
jonrohan
1030
460k
Thoughts on Productivity
jonyablonski
69
4.5k
Large-scale JavaScript Application Architecture
addyosmani
511
110k
Making Projects Easy
brettharned
116
6.1k
The Success of Rails: Ensuring Growth for the Next 100 Years
eileencodes
44
7.1k
Art, The Web, and Tiny UX
lynnandtonic
298
20k
Transcript
JAWS-UG初心者支部#63 AWS Expert視聴後のLT会! Amazon Q Developer CLIと一緒に 最小権限の原則を守ったIAMポリシーを作ろう! 2025.03.26(水) 池田
晃尚(@akikii__) 1
自己紹介 アキキー(池田 晃尚) ALH株式会社(SES) AWSエンジニア 好きなサービス:CDK, Bedrock 出身:石川県 金沢市 趣味:コーヒー
Amazon Q Developer CLIと一緒に最小権限の原則を守ったIAMポリシーを 作ろう! JAWS-UG初心者支部#63 AWS Expert視聴後のLT会! 2
Agenda Amazon Q Developer CLIとは? IAMポリシーとは? IAMポリシー:ホワイトリストパターンのつらみ IAMポリシーをQ CLIと一緒に作ってみよう! まとめ
Amazon Q Developer CLIと一緒に最小権限の原則を守ったIAMポリシーを作ろう! JAWS-UG初心者支部#63 AWS Expert視聴後のLT会! 3
Amazon Q Developer CLIとは? AWSが提供している生成AIを利用したAIエージェントが搭載されている AWSに強く、実際にAWS環境にアクセスしてくれる Amazon Q Developer CLIと一緒に最小権限の原則を守ったIAMポリシーを作ろう!
JAWS-UG初心者支部#63 AWS Expert視聴後のLT会! 4
Q CLIが利用できるツール ツール:AIエージェントが外部とやりとりでき るアプリ use_aws:AWS CLIコマンドの実行 execute_bash:Bashコマンドの実行 fs_read:ファイルの読み込み fs_write:ファイルの書き込み Amazon
Q Developer CLIと一緒に最小権限の原則を守ったIAMポリシーを作ろう! JAWS-UG初心者支部#63 AWS Expert視聴後のLT会! 5
IAMポリシーとは? • AWSの各リソースに対しての操作権限を管理する仕組み • 「許可/拒否」 「どの操作を」 「どのリソースに対して」 「どのような条件で」を定義 { "Effect":
"Allow", "Action": ["s3:GetObject"], "Resource": ["arn:aws:s3:::example-bucket/*"] } 「IAMユーザー」 「IAMグループ」 「IAMロール」に紐づけて使う Amazon Q Developer CLIと一緒に最小権限の原則を守ったIAMポリシーを作ろう! JAWS-UG初心者支部#63 AWS Expert視聴後のLT会! 6
IAMポリシー:ホワイトリストパタ ーンのつらみ 明示的に許可されたアクションのみを実行可 明示的な許可: 特定のアクション、リソー ス、条件のみを明示的に許可 デフォルト拒否: 明示的に許可されていな いすべてのアクションはデフォルトで拒否 最小権限:
必要最低限の権限のみを付与 → 全てのAPIアクションを理解して作るにはか なり労力がかかる Amazon Q Developer CLIと一緒に最小権限の原則を守ったIAMポリシーを作ろう! JAWS-UG初心者支部#63 AWS Expert視聴後のLT会! 7
IAMポリシーをQ CLIと一緒に作ってみよう! Amazon Q Developer CLIと一緒に最小権限の原則を守ったIAMポリシーを作ろう! JAWS-UG初心者支部#63 AWS Expert視聴後のLT会! 8
設計するポリシーの要件 開発者が特定のLambda関数にたいし全ての権限をもちたい 関連するリソース(Logs, IAMロールなど)は見れるようにしたい Amazon Q Developer CLIと一緒に最小権限の原則を守ったIAMポリシーを作ろう! JAWS-UG初心者支部#63 AWS
Expert視聴後のLT会! 9
プロンプト IAMポリシーを作成・IAMユーザーに アタッチするプロンプトを作りまし た resources: 指定するリソース environment: AWS環境 operation: ポリシーの要件
Amazon Q Developer CLIと一緒に最小権限の原則を守ったIAMポリシーを 作ろう! JAWS-UG初心者支部#63 AWS Expert視聴後のLT会! 10
Q CLIにリクエストしてみる それっぽいIAMポリシーができた Amazon Q Developer CLIと一緒に最小権限の原則を守ったIAMポリシーを 作ろう! JAWS-UG初心者支部#63 AWS
Expert視聴後のLT会! 11
よくみると... 大きい権限をもってしまっ ている Amazon Q Developer CLIと一緒に最小権限の原則を守った IAMポリシーを作ろう! JAWS-UG初心者支部#63 AWS
Expert視聴後のLT会! 12
最小権限の原則とは 必要な権限だけを与え、それ以上は与えな いという考え セキュリティリスクを最小限に抑え、意図 しないアクセスや誤操作によるリスクを軽 減することが目的 今回だとLambda関数: first-sample-functionに 関連しないリソースの操作を与えない Amazon
Q Developer CLIと一緒に最小権限の原則を守ったIAMポリシーを作ろう! JAWS-UG初心者支部#63 AWS Expert視聴後のLT会! 13
Q CLIにリクエスト Sid:AllowRelatedResourcesView 最小権限の原則を適用して 結果(Logsのみ抜粋): 対象関数のログのみ閲覧できるように絞れた! Amazon Q Developer CLIと一緒に最小権限の原則を守ったIAMポリシーを作ろう!
JAWS-UG初心者支部#63 AWS Expert視聴後のLT会! 14
それではポリシーの作成&アタッチをしてもらいます Q CLIにリクエスト IAMポリシーを作成して指定したIAMユーザーにアタッチして Amazon Q Developer CLIと一緒に最小権限の原則を守ったIAMポリシーを作ろう! JAWS-UG初心者支部#63 AWS
Expert視聴後のLT会! 15
IAMポリシーが作成された Amazon Q Developer CLIと一緒に最小権限の原則を守ったIAMポリシーを 作ろう! JAWS-UG初心者支部#63 AWS Expert視聴後のLT会! 16
IAMポリシーがIAMユーザーにアタッ チされた Amazon Q Developer CLIと一緒に最小権限の原則を守ったIAMポリシーを 作ろう! JAWS-UG初心者支部#63 AWS Expert視聴後のLT会!
17
IAMポリシーがアタッチできたのでLambda関数の画面を開いてみる Amazon Q Developer CLIと一緒に最小権限の原則を守ったIAMポリシーを作ろう! JAWS-UG初心者支部#63 AWS Expert視聴後のLT会! 18
開けてる〜〜 Amazon Q Developer CLIと一緒に最小権限の原則を守ったIAMポリシーを作ろう! JAWS-UG初心者支部#63 AWS Expert視聴後のLT会! 19
ログも見れる〜〜〜 Amazon Q Developer CLIと一緒に最小権限の原則を守ったIAMポリシーを作ろう! JAWS-UG初心者支部#63 AWS Expert視聴後のLT会! 20
アッ Amazon Q Developer CLIと一緒に最小権限の原則を守ったIAMポリシーを作ろう! JAWS-UG初心者支部#63 AWS Expert視聴後のLT会! 21
でも大丈夫!! Q CLIがいるから!! Amazon Q Developer CLIと一緒に最小権限の原則を守ったIAMポリシーを作ろう! JAWS-UG初心者支部#63 AWS Expert視聴後のLT会!
22
エラーメッセージを Q CLIにリクエストしてみる ユーザー: arn:aws:iam::xxx:user/q-cli-sample-user アクション: iam:GetPolicy リソース : arn:aws:iam::xxx:policy/service-role/AWSLambdaBasicExecutionRole-xxx
コンテキスト: no identity-based policy allows the action Amazon Q Developer CLIと一緒に最小権限の原則を守ったIAMポリシーを作ろう! JAWS-UG初心者支部#63 AWS Expert視聴後のLT会! 23
ステートメントを 追加してくれた Amazon Q Developer CLIと一緒に最小権限の原則を守った IAMポリシーを作ろう! JAWS-UG初心者支部#63 AWS Expert視聴後のLT会!
24
IAMポリシーを 更新してくれた Amazon Q Developer CLIと一緒に最小権限の原則を守った IAMポリシーを作ろう! JAWS-UG初心者支部#63 AWS Expert視聴後のLT会!
25
アクセスできるようになった! Amazon Q Developer CLIと一緒に最小権限の原則を守ったIAMポリシーを作ろう! JAWS-UG初心者支部#63 AWS Expert視聴後のLT会! 26
まとめ IAMポリシー作成の労力を大幅に削減できる 最小権限の原則を守りながら効率的にポリシーを作れる 足りない権限があればQ CLIに聞きながら追加できる Q CLIは面倒臭い作業における最強の味方! Amazon Q Developer
CLIと一緒に最小権限の原則を守ったIAMポリシーを作ろう! JAWS-UG初心者支部#63 AWS Expert視聴後のLT会! 27