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
S3からオブジェクトをCMKで暗号化して沼にハマった話
Search
Kento Suzuki
August 24, 2022
Technology
0
77
S3からオブジェクトをCMKで暗号化して沼にハマった話
JAWS-UG 名古屋 LT未経験者にも登壇して貰いたいLT会の資料
Kento Suzuki
August 24, 2022
Tweet
Share
More Decks by Kento Suzuki
See All by Kento Suzuki
バッドプラクティスから学ぶハワイアン航空で行く re:Invent
kentosuzuki
0
360
上流工程に挑戦!「俺の考えた最強サーバレス構成」が一瞬で敗北した件
kentosuzuki
2
320
S3から始めるAWS 〜S3の簡単なユースケースの紹介〜
kentosuzuki
1
670
AWS のポリシー言語 “Cedar” で実現するアクセス制御
kentosuzuki
0
420
探せぇ!お薦めAWSセキュリティワークショップ!!〜 怒涛のワークショップ 48 連戦 〜
kentosuzuki
1
720
SIEM って何?〜 Amazon OpenSearch で始める SIEM 〜
kentosuzuki
0
940
Verified Accessから始めるゼロトラストセキュリティ
kentosuzuki
1
720
復活のAWS DeepComposer 〜 古代兵器から始める生成系AI 〜
kentosuzuki
0
380
新卒入社が考える『AWSではじめるクラウドセキュリティ』を読むタイミング
kentosuzuki
0
740
Other Decks in Technology
See All in Technology
AWS環境のリソース調査を Claude Code で効率化 / aws investigate with cc devio2025
masahirokawahara
2
1.1k
Agile PBL at New Grads Trainings
kawaguti
PRO
1
140
カミナシ社の『ID管理基盤』製品内製 - その意思決定背景と2年間の進化 #AWSUnicornDay / Kaminashi ID - The Big Whys
kaminashi
3
730
Language Update: Java
skrb
2
230
モダンフロントエンド 開発研修
recruitengineers
PRO
10
6.2k
7月のガバクラ利用料が高かったので調べてみた
techniczna
3
820
JuniorからSeniorまで: DevOpsエンジニアの成長ロードマップ
yuriemori
2
350
TypeScript入門
recruitengineers
PRO
35
11k
異業種出身エンジニアが気づいた、転向して十数年経っても変わらない自分の武器とは
macnekoayu
0
270
ここ一年のCCoEとしてのAWSコスト最適化を振り返る / CCoE AWS Cost Optimization devio2025
masahirokawahara
1
1.3k
サンドボックス技術でAI利活用を促進する
koh_naga
0
160
まだ間に合う! StrandsとBedrock AgentCoreでAIエージェント構築に入門しよう
minorun365
PRO
11
760
Featured
See All Featured
Chrome DevTools: State of the Union 2024 - Debugging React & Beyond
addyosmani
7
840
The Language of Interfaces
destraynor
160
25k
How to Ace a Technical Interview
jacobian
279
23k
Performance Is Good for Brains [We Love Speed 2024]
tammyeverts
11
1.1k
Building Adaptive Systems
keathley
43
2.7k
BBQ
matthewcrist
89
9.8k
The Cost Of JavaScript in 2023
addyosmani
53
8.9k
Save Time (by Creating Custom Rails Generators)
garrettdimon
PRO
32
1.5k
I Don’t Have Time: Getting Over the Fear to Launch Your Podcast
jcasabona
33
2.4k
The Psychology of Web Performance [Beyond Tellerrand 2023]
tammyeverts
49
3k
How to Think Like a Performance Engineer
csswizardry
26
1.9k
CoffeeScript is Beautiful & I Never Want to Write Plain JavaScript Again
sstephenson
161
15k
Transcript
S3からオブジェクトをCMKで暗号化して沼に ハマった話 Kento Suzuki 2022/08/24 (水) JAWS-UG 名古屋 LT未経験者にも登壇して貰いたいLT会
自己紹介 名前:鈴木健斗 (@k_suzuki_pnx) 所属:アイレット株式会社 経歴: ・東京都在住 ・新卒3年目(エンジニア歴 = 社会人歴) ・2022
APN ALL AWS Certifications Engineer ・2022 APN AWS Top Engineer
本題 ある日のこと、 特定のIAMでS3のオブジェクトをダウンロードしようとすると The ciphertext refers to a customer master
key that does not exist, does not exist in this region, or you are not allowed to access. 訳)このリージョンに存在していない、 もしくはアクセス許可のないカスタマーマスターキー(CMK)で暗号化されています というエラーが発生
実際の構成 アクセス制限をしている箇所 ・IAMユーザ ・KMS ・S3
どこが原因か分からねぇーよ!!
1つずつポリシードキュメントを紐解く その後
犯人を特定
解説 IAMへの接続元IPを制限したい場合、 IAMポリシーへ「aws:SourceIp」を用いたCondition句を設定
ドキュメントにはこのような記載がある https://docs.aws.amazon.com/ja_jp/IAM/latest/UserGuide/reference_policies_condition-keys.html#condition-keys-sourceip
解決策 Condition句に "Null": {"kms:ViaService": "true"} を追加
図示するとこうなる
まとめ AWSの権限まわりは本当に沼 「aws:SourceIp」を用いたCondition句を使うときは要注意!