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
AIの権限設定に悩んでいる話
Search
Shuma
March 19, 2026
Programming
39
0
Share
Embed
Copy iframe code
Copy JS code
Copy link
Start on current slide
AIの権限設定に悩んでいる話
2026/3/19(木) 第四回 唐揚げ会 発表LT
Shuma
March 19, 2026
More Decks by Shuma
See All by Shuma
インフラ深掘りLT
shubox
0
44
飲食店長から_SREになった話
shubox
0
30
Ansible で Vector を導入し Slack 通知とログレベル色分けまでした話
shubox
0
52
阿部寛のホームページをSRE観点で改善出来るか考えてみた。
shubox
0
140
一日の終わりに、晩酌しながら眺めたいシステムログの世界
shubox
0
120
プロダクトがクローズした話
shubox
0
150
今も熱いもの!魂を揺さぶる戦士の儀式:マオリ族のハカ
shubox
0
300
信頼性工学とは? ~カツオを題材に~
shubox
0
130
バージョン管理と人生設計の類似点ver2 -リポジトリから学ぶ生きるヒント-
shubox
0
310
Other Decks in Programming
See All in Programming
肥大化するレガシーコードに立ち向かうためのインターフェース分離と依存の逆転 / JJUG CCC 2026 Spring
hirokunimaeta
0
520
並列実装の現場、2ヶ月間実務でAIを使い倒したAIもPCも私も限界が近い
ming_ayami
0
120
New "Type" system on PicoRuby
pocke
1
780
Claspは野良GASの夢をみるか
takter00
0
180
脅威をエンジニアリングの糧にして――現場編 / Turning Threats into Engineering Fuel — Field Edition
nrslib
0
270
過去最大のMCPアップデート! 2026-07-28 RC版の謎に迫る
licux
6
210
気づいたらRubyで100作品 ー クリエイティブコーディングが生活の一部になるまで / 100 Ruby Sketches Later: How Creative Coding Became Part of My Life
chobishiba
3
560
net-httpのHTTP/2対応について
naruse
0
460
The Arts and Crafts of Work in the AI Era — Toward Mastery in Software Development
kuranuki
1
740
RTSPクライアントを自作してみた話
simotin13
0
520
The NotImplementedError Problem in Ruby
koic
1
670
生成AI時代にこそ効くGo | Why Go Works in the Age of Generative AI
mom0tomo
8
3.2k
Featured
See All Featured
How To Stay Up To Date on Web Technology
chriscoyier
790
250k
The Myth of the Modular Monolith - Day 2 Keynote - Rails World 2024
eileencodes
28
3.5k
ReactJS: Keep Simple. Everything can be a component!
pedronauck
666
130k
Lessons Learnt from Crawling 1000+ Websites
charlesmeaden
PRO
1
1.3k
Responsive Adventures: Dirty Tricks From The Dark Corners of Front-End
smashingmag
254
22k
Evolution of real-time – Irina Nazarova, EuRuKo, 2024
irinanazarova
9
1.4k
Making the Leap to Tech Lead
cromwellryan
135
9.9k
Building Experiences: Design Systems, User Experience, and Full Site Editing
marktimemedia
0
530
AI: The stuff that nobody shows you
jnunemaker
PRO
8
700
GitHub's CSS Performance
jonrohan
1033
470k
Joys of Absence: A Defence of Solitary Play
codingconduct
1
390
How to train your dragon (web standard)
notwaldorf
97
6.7k
Transcript
1 2 3 4 5 6 >_ AIは愛を知らないが、 エンジニアは AIを知っている
〜AIの権限設定に悩んでいる話〜 NotebookLM
自己紹介 名前: Shuma 職種: SRE / インフラエンジニア 興味: @ShuShuShuBOOOx 最近うれしかったこと
IaC, 障害対応, 監視, パフォーマンス改善 大きな負荷対策の監視をしていて 同じ会社の人とかなりのトラフィックをさば いたこと。
1 2 3 4 5 6 7 8 9 10
11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 「AIツール、業務で使ってますか?」 [ ChatGPT ] [ GitHub Copilot ] [ Claude Code ] [ Cursor ] 「権限設定してますか?」
$ Claude Code + Terraform で本番RDSが全消えした 月$5-10ドルの節約 → 2.5年分のデータが消えた (※24時間後に復旧)
> terraform destroy を承認したのは人間だった > 復旧対応でBusiness Supportにアップグレードしコスト10%増 → ソフトウェアとインフラ、両方が無防備だった (DataTalks.Club / Alexey Grigorev氏の事例)
None
settings.json 1 2 3 4 5 6 7 8 9
10 11 12 13 14 15 16 17 18 自分の実話①: deny ルールを設定した { "permissions": { "deny": [ "Bash(aws *)", "Bash(terraform *)", "Bash(kubectl *)" ] } } ✅ → 破壊的操作を全部止めた。方向性は正しい
>_ 自分の実話②:でも問題が出た 自分の実話②:でも、大きな問題が出た 1 aws * をdenyすると自分の作業まで邪魔してしまう 2 人間とClaudeが同じ .aws/credentials
を使っている 3 shared credentialsを使っているため、 Claudeの権限を絞ると人間の権限も絞れてしまう → じゃあどうする?
>_ 社内で出たさまざまな案 社内で出たさまざまな案(どれも帯に短し) 案A: credentialsをreadonly専用に 人間が不便 ✕ 案B: AI専用IAMユーザー作成 管理コスト増・攻撃面拡大
✕ 案C: 環境変数で分離 シェル履歴に平文で残るリスク ✕ 案D: SSO (IAM Identity Center) で分ける 初期設定・運用コストが高すぎる ✕ 案E: CLAUDE.md に禁止事項を書く 強制力なし ✕ → 完璧な単一解はなかった
> _ 現状の落としどころ:多層防御(第 1層) 1 { 2 "permissions": { 3
"deny": [ 4 "Bash(aws * delete*)", 5 "Bash(terraform destroy *)", 6 "Bash(terraform destroy)", 7 "Bash(terraform apply *)", 8 "Bash(terraform apply)", 9 "Bash(terraform state rm *)", 1 0 "Bash(terraform state rm)", 1 1 "Bash(aws iam *)", 1 2 "Bash(aws rds delete*)" 1 3 ] 1 4 } 1 5 } 第1層 Claude Code側の設定 deny ルール / Hooksでブロック → AIに「やらせない」 describe や plan は通す。 ⚠ ※aws s3 rmなどはすり抜ける可能性ありと注記
> _ 現状の落としどころ:多層防御(第 2層) 第1層(Claude Code側の設定) deny / Hooks →
AIに「やらせない」 第2層(インフラ側の物理的保護) 万が一指示しても「インフラ側で弾く」設定 IAM 最小権限 RDS 削除保護 Terraform prevent_destroy リモート State管理 AIに「やらせない」設定とインフラ側で「弾く」設定。この両輪が必要。
1 2 3 4 5 6 > まとめ:AIセキュリティの現在地 Q1: AIに本番環境を触らせるべきか?
Q2: denyルールはどこまで設定すべきか? Q3: インフラ側の保護は十分か? 結局、完璧な「正解」はない。 技術とリスクのバランスを見極め、 多層防御で対応していく必要がある。
1 2 3 4 5 6 7 8 9 10
11 12 13 › >_ Resources Claude Code official docs → docs.anthropic.com/en/docs/claude-code/settings Alexey Grigorev's Substack → alexeyondata.substack.com/p/how-i-dropped-our-production-database AWS IAM least privilege → docs.aws.amazon.com/IAM/latest/UserGuide/best-practices.html