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
MFA必須化でハマった謎エラー
Search
Hibiki
July 24, 2025
0
0
MFA必須化でハマった謎エラー
Hibiki
July 24, 2025
Tweet
Share
More Decks by Hibiki
See All by Hibiki
NW-JAWS ルートテーブルとエンドポイント入門
hibikisuaga
2
620
Amplify_Reactで爆速アプリ開発.pdf
hibikisuaga
0
17
Featured
See All Featured
StorybookのUI Testing Handbookを読んだ
zakiyama
30
5.9k
Building a Modern Day E-commerce SEO Strategy
aleyda
42
7.4k
How STYLIGHT went responsive
nonsquared
100
5.7k
The Invisible Side of Design
smashingmag
301
51k
The Cult of Friendly URLs
andyhume
79
6.5k
The World Runs on Bad Software
bkeepers
PRO
70
11k
Code Review Best Practice
trishagee
69
19k
Producing Creativity
orderedlist
PRO
346
40k
JavaScript: Past, Present, and Future - NDC Porto 2020
reverentgeek
50
5.5k
Improving Core Web Vitals using Speculation Rules API
sergeychernyshev
18
1k
Refactoring Trust on Your Teams (GOTO; Chicago 2020)
rmw
34
3.1k
Keith and Marios Guide to Fast Websites
keithpitt
411
22k
Transcript
MFA必須化でハマった謎エラー ~内部アクションの解説も添えて~ 須永 響 伊藤忠テクノソリューションズ株式会社
須永 響 Hibiki Sunaga CTC(伊藤忠テクノソリューションズ株式会社 ) 新卒3年目 業務:AWSインフラ基盤の設計・構築 コミュニティ活動:NW-JAWS運営 :@gravitas580
About Me
アジェンダ 01 02 03 エラー遭遇編 エラー調査編 エラー解決編
アジェンダ 01 02 03 エラー遭遇編 エラー調査編 エラー解決編
MFAは大事 MFA(Multi Factor Authentication)
MFA必須化の実装 IAMユーザーに対してMFAを必須化しよう ↓ AWSユーザーガイドにMFA必須化用ポリシーがあるので採用 IAM: IAM ユーザーに MFA デバイスの自己管理を許可する -
AWS Identity and Access Management ↓ よし!実装できた! 完
なんだこのエラーは? ⚫ 後日こんなお問い合わせが。。。 なんかエラーが出てMFAを登録できない
なんだこのエラーは? ⚫ Delete権限がないー?なんだそれ?ユーザーガイド通り作ってるよー ⚫ 既に存在しているー?IAMユーザーの認証情報みてもMFA登録されてないんだけどー
アジェンダ 01 02 03 エラー遭遇編 エラー調査編 エラー解決編
調査開始 ⚫ How:どうやって解決すれば? ⚫ Why:なぜエラーが起きる?
解決方法 ⚫ インターネットで先人たちのナレッジを覗いてみると、あら簡単 ⚫ エラー内容通り「iam:DeleteVirtualMFADevice 」をポリシーに追加すれば解決するらしい ➢ もしくはdelete-virtual-mfa-deviceコマンドでデバイスを削除してあげる
解決方法の深堀り ⚫ でもなんで「 iam:DeleteVirtualMFADevice 」が必要なの? ⚫ 調査してみましょう!
MFAデバイス操作の内部構造 ⚫ MFAデバイス操作で発生するアクションを調査してみる ➢ デバイス作成 ~ デバイス削除 までやってみて、CloudTrailログを確認 ⚫ 調査の結果
➢ MFAデバイスの作成時・削除時以下のアクションが実行されていることが判明 MFAデバイスを作るとき MFAデバイスの作成 CreateVirtualFMADevice ↓ MFAデバイスをユーザーに紐づけ EnableMFADevice MFAデバイスを削除するとき MFAデバイスとユーザーの紐づけ解除 DeactivateMFADevice ↓ MFAデバイスの削除 DeleteVirtualMFADevice
MFAデバイス情報を確認 ⚫ そして、アカウント内のMFAデバイス一覧を確認するコマンドを実行してみると、 どのユーザーにも紐づいていないMFAデバイスがある 通常はMFAデバイスが 紐づくユーザー情報がある MFAデバイスがどのユーザ ーとも紐づいてない
紐づいてないデバイスの謎 ⚫ つまり、エラーが起こっていたデバイスは 作成(Create)はされてるけど、紐づけ(Enable)はされてない!
紐づいてないデバイスの謎 ⚫ じゃあ、いつMFAデバイスは作成されてるの? ➢ デバイス登録を進めながら、画面遷移ごとにデバイス登録情報を listコマンドで確認 ➢ デバイス名入力画面 → デバイス登録
の画面遷移時にデバイス作成(Create)されていた
紐づいていないデバイスの謎 ⚫ 通常は「MFAを追加」を実行して、ユーザーとの紐づけが実行される ⚫ キャンセルボタンを押すと、、、 ➢ どのユーザーにも紐づかないまま、デバイス情報だけ残ってしまう!
エラーの原因 キャンセルボタンを押す (どのユーザーにも紐づかないMFAデバイスが作成される) ↓ 同じ名前でMFAデバイスを作成しようとする (新規登録するにはMFAデバイスを一度削除してから作成する必要がある) ↓ MFAデバイスを削除する処理が裏で走る (デバイスを削除するための権限(Delete)が付与されてない) ↓
エラー
アジェンダ 01 02 03 エラー遭遇編 エラー調査編 エラー解決編
解決方法 iam:DeleteVirtualMFADevice 権限をポリシーに追加してあげることで解決!
削除権限追加は大丈夫なのか検討 ✓ MFAデバイス登録前ユーザーには極力権限を追加したくないな ➢ デバイス削除権限なんて追加してセキュリティ的に大丈夫? ➢ 他の人のデバイス削除されるとかない? ✓ そもそもこの権限追加する必要ある? ➢
管理者が削除コマンド実行でもいいのでは?
削除権限追加は大丈夫なのか検討 ◼ 検討の結果権限を追加することに ⚫ セキュリティ的には問題ない ➢ 他のユーザーのデバイスを削除するには、先に紐づけ解除が必要 ➢ 紐づけ解除できるのは、自分のデバイスだけ ➢
削除できるのは紐づけ解除が必要ない(誰とも紐づいてない)デバイスのみ! ⚫ 今後も発生する可能性のあるシチュエーション ➢ 間違えてキャンセルボタンを押してしまうのはあるある
まとめ ◆ ユーザーガイド通りに設定しても上手くいかないことがある ◆ 裏で実行されてるアクションまで追ってみると理解が深まる ◆ 権限を追加するときは安全性・必要性も確認しましょう