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アクセス制御の設計ポイント
Search
tommy
September 10, 2025
Technology
350
3
Share
Embed
Copy iframe code
Copy JS code
Copy link
Start on current slide
S3アクセス制御の設計ポイント
tommy
September 10, 2025
More Decks by tommy
See All by tommy
Change Calendarで今はOK?を仕組みにする
tommy0124
1
240
VPCエンドポイント意外とお金かかるなぁ。せや、共有したろ!
tommy0124
1
940
初海外がre:Inventだった人間の感じたこと
tommy0124
1
320
Other Decks in Technology
See All in Technology
生成 AI の基礎 〜 サンプル実装で学ぶ基本原理
enakai00
7
4.4k
Webアクセシビリティ入門 2026
recruitengineers
PRO
3
480
第3回しろおびセキュリティスポンサーセッション
log0417
0
160
【5分でわかる】セーフィー エンジニア向け会社紹介
safie_recruit
0
53k
【Google Cloud Next Tokyo'26】Gemini Enterprise と Oracle AI Database で実現する、業務データ活用を実現する AI エージェント実装
shisyu_gaku
0
230
オートロックマンションなのに、各部屋は施錠なし!? 攻撃者が組織内ネットワークで大暴れする理由 / The Front Door Is Locked, but the Rooms Are Wide Open: Why Attackers Move Freely Inside Enterprise Networks
nttcom
1
1.6k
AWS ネットワーク構築でハマった(ハマりかけた) 5選とそこから得た教訓
nagisa53
4
200
Redmine 7.0 新機能・機能強化解説(OSC2026京都ダイジェスト版)
vividtone
1
230
AIコーディングの次。コードレビューと理解負荷を解消して組織の開発生産性を高める
moongift
PRO
2
2.4k
ガバメント AI 源内を地方自治体は活用できるのか可能性と課題、期待について
takeda_h
1
380
名刺メーカーDevグループ 紹介資料
sansan33
PRO
0
1.2k
老害フォレンジッカーはAI羊の夢を見るか?
tadmaddad
0
310
Featured
See All Featured
Design in an AI World
tapps
1
280
Noah Learner - AI + Me: how we built a GSC Bulk Export data pipeline
techseoconnect
PRO
0
350
Neural Spatial Audio Processing for Sound Field Analysis and Control
skoyamalab
0
400
JavaScript: Past, Present, and Future - NDC Porto 2020
reverentgeek
52
6k
The Impact of AI in SEO - AI Overviews June 2024 Edition
aleyda
5
1.2k
Product Roadmaps are Hard
iamctodd
55
12k
Data-driven link building: lessons from a $708K investment (BrightonSEO talk)
szymonslowik
1
1.2k
Test your architecture with Archunit
thirion
1
2.3k
Put a Button on it: Removing Barriers to Going Fast.
kastner
60
4.5k
Information Architects: The Missing Link in Design Systems
soysaucechin
0
1.1k
A brief & incomplete history of UX Design for the World Wide Web: 1989–2019
jct
2
450
Leading Effective Engineering Teams in the AI Era
addyosmani
9
2.2k
Transcript
S3アクセス制御の設計ポイント
アジェンダ ⚫ 自己紹介 ⚫ S3バケットへのアクセス制御方法 ⚫ アクセス制御の設計ポイント ⚫ まとめ
自己紹介
自己紹介 ⚫ 名前:富田 惠仁 (@mohanashi999) ⚫ 所属:イメージソリューションとかやるSIer ⚫ 趣味:野球観戦(贔屓は福岡の某球団) ⚫
好きなAWSサービス:Step Functions
S3バケットのアクセス制御方法
S3バケットのアクセス制御方法 その前に
S3バケットの利用ケース S3バケットは、高い耐久性や可用性、低コスト等といった点から、 様々な用途での利用が想定される ・アプリケーションデータの保管 ・静的Webコンテンツ ・ログ集約 ・バックアップ ・アーカイブ ・データ分析 等々・・・
S3バケットの利用ケース S3バケットは、高い耐久性や可用性、低コスト等といった点から、 様々な用途での利用が想定される ・アプリケーションデータの保管 ・静的Webコンテンツ ・ログ集約 ・バックアップ ・アーカイブ ・データ分析 等々・・・
便利な反面、考慮すべきこともある
S3バケットのアクセス制御方法 改めて・・・
S3バケットへのアクセス制御方法 主に以下にてアクセス制御を行うことが可能。 ⚫ S3バケットポリシー ⚫ S3アクセスポイント(ポリシー) ⚫ IAMポリシー ⚫ VPCエンドポイントポリシー
※VPC内からアクセスがある場合 ⚫ KMSキーポリシー ※CMK利用の場合 <今回の対象外> (通称言い訳リスト) • アクセスコントロールリスト(ACL)でも制御可能ですが、現在非推奨のため、今回の対象外とします • ブロックパブリックアクセスでも制御可能ですが、名前のとおりパブリックアクセスをブロック可否だけであるため、今回の対象外とします • 署名付きURLでも制御可能ですが、一時的なものであるため今回の対象外とします • Organizationsのサービスコントロールポリシー(SCP)やリソースコントロールポリシー(RCP)でも制御可能ですが、 マルチアカウントを考慮する場合、内容が煩雑になるので便宜上、今回の対象外とします • CloudFront経由でアクセスする場合はOACやOAI(非推奨)等もありますが、S3バケットポリシーやブロックパブリックアクセス等の+@といった 立ち位置になるため、今回の対象外とします
S3バケットポリシーによるアクセス制御 超ざっくりにS3バケットポリシーとは・・・ S3バケットと配下のオブジェクトへのアクセスを制御するリソースベースのポリシー AWS Cloud Lambda EC2 S3 ◆アーキテクチャ例
S3アクセスポイント(ポリシー)によるアクセス制御 超ざっくりにS3アクセスポイントとは・・・ S3バケットに対して用途ごとに専用のアクセスするポイントを作成する機能 超ざっくりにS3アクセスポイントポリシーとは・・・ 特定のS3アクセスポイント経由のアクセスを制御するリソースベースのポリシー AWS Cloud Lambda EC2 S3
◆アーキテクチャ例 アクセス ポイント アクセス ポイント S3バケットポリシーは、バケット全体に適用するため、複数のア クセス設定を1つで行うことになるが、アクセスポイントを利用す れば、各用途ごとにアクセス設定が可能となる。 そのため管理がシンプルになり、メンテナンス等も行いやすい。 仕様上ポリシーサイズが20,480バイト以内である必要がある ので、バケットポリシーのみだと、規模によっては定義しきれな い・拡張できないといったこともあるが、それらを防ぐこともできる。
IAMポリシーによるアクセス制御 超ざっくりにIAMポリシーとは・・・ IAMユーザー/グループ/ロールが実行できるアクションと対象リソースを制御するアイデンティ ティベースのポリシー AWS Cloud Lambda EC2 S3 ◆アーキテクチャ例
IAMロール (IAMポリシー) IAMロール (IAMポリシー)
VPCエンドポイントポリシーによるアクセス制御 超ざっくりにVPCエンドポイントポリシーとは・・・ どのAWSプリンシパルがVPCエンドポイント経由で対象サービスにアクセスできるかを制御する、 VPCエンドポイントに適用するリソースベースのポリシー(エンドポイント経由のアクセスにのみ適 用) AWS Cloud Lambda EC2 S3
◆アーキテクチャ例 IAMロール (IAMポリシー) IAMロール (IAMポリシー) VPC VPCエンドポイント (ゲートウェイ型)
KMSキーポリシーによるアクセス制御 超ざっくりにKMSキーポリシーとは・・・ KMSキーへのアクセスを制御するリソースベースのポリシー (AWSマネージドキーの場合はポリシー編集不可) AWS Cloud Lambda EC2 S3 ◆アーキテクチャ例
KMS(CMK)
アクセス制御の設計ポイント
前提:システム構成 文章だけだとイメージしづらいため、Webサイトに画像ファイルをアップロードすると、変換してく れるアプリケーションがあると仮定します。(かなりざっくりでテキトーです。) アプリケーション バケットA EC2 VPCエンドポイント (ゲートウェイ型) AWS Cloud
VPC Lambda ALB WAF クライアント
①S3バケットの整理 ①各S3バケット(対象)に何のデータを格納するかを整理 ※この時に、機密データ有無やCMK利用有無も整理する
①S3バケットの整理 ①各S3バケット(対象)に何のデータを格納するかを整理 ※この時に、機密データ有無やCMK利用有無も整理する そうすることで、以下のアクセス制御部分が判別可能 ⚫ S3バケットポリシー ※全S3バケットで設定可能のため対象外 ⚫ S3アクセスポイント(ポリシー) ※全S3バケットで設定可能のため対象外
⚫ IAMポリシー ⚫ VPCエンドポイントポリシー ※VPC内からアクセスがある場合 ⚫ KMSキーポリシー ※CMK利用の場合
S3バケット 対象 格納データ 機密データ CMK CloudTrailログ保管バケット CloudTrailログ Config構成履歴保管バケット Config構成履歴 GuardDuty脅威検出ログ保管バケット
GuardDuty脅威検出ログ • VPCフローログ保管バケット VPCフローログ WAFログ保管バケット Web ACLトラフィックログ ALBログ保管バケット ALBアクセスログ、接続ログ アプリケーションバケットA 画像ファイル • アプリケーションログ保管バケットA Cloudwatch Logsログ (EC2アプリログ、Lambda実行ログ等) ①S3バケットの整理 ①各S3バケット(対象)に何のデータを格納するかを整理 ※この時に、機密データ有無やCMK利用有無も整理する ◆システム構成に対する整理例
②アクセスパターンの整理 前段の①に対して、誰が(主体)、何のために(目的)、どのようにアクセスし(経路)、何をする(操 作)かを整理 ※この時に、それぞれのアクセスパターンに対して、IAMポリシー有無およびVPCエンドポイント 経由有無もあわせて整理する
②アクセスパターンの整理 前段の①に対して、誰が(主体)、何のために(目的)、どのようにアクセスし(経路)、何をする(操 作)かを整理 ※この時に、それぞれのアクセスパターンに対して、IAMポリシー有無およびVPCエンドポイント 経由有無もあわせて整理する そうすることで、以下のアクセス制御部分が判別可能 ⚫ S3バケットポリシー ※全S3バケットで設定可能のため対象外 ⚫
S3アクセスポイント(ポリシー) ※全S3バケットで設定可能のため対象外 ⚫ IAMポリシー ⚫ VPCエンドポイントポリシー ※VPC内からアクセスがある場合 ⚫ KMSキーポリシー ※CMK利用の場合
S3バケット 誰が 何のために どのようにアクセスし 何をする 対象 格納データ 機密データ CMK 主体
IAMポリシー 目的 経路 VPCE経由 操作 CloudTrailログ保管バケット CloudTrailログ CloudTrail 監査証跡の長期保管と改ざん検知(整合性検証)、組 織集約のため 主体サービスからAWS内部ネットワーク経由 書き込み Config • 構成履歴/スナップショットの監査・追跡・再評価のため 主体サービスからAWS内部ネットワーク経由 読み取り・リスト 運用・保守担当者 • 運用・保守作業 運用・保守担当者の端末からインターネット経由 読み取り・リスト・書き込み Config構成履歴保管バケット Config構成履歴 Config • 構成履歴/スナップショットの監査・追跡・再評価のため 主体サービスからAWS内部ネットワーク経由 書き込み 運用・保守担当者 • 運用・保守作業 運用・保守担当者の端末からインターネット経由 読み取り・リスト・書き込み GuardDuty脅威検出ログ保管バケット GuardDuty脅威検出ログ • GuardDuty 検知結果のアーカイブのため 主体サービスからAWS内部ネットワーク経由 書き込み Config • 構成履歴/スナップショットの監査・追跡・再評価のため 主体サービスからAWS内部ネットワーク経由 読み取り 運用・保守担当者 • 運用・保守作業 運用・保守担当者の端末からインターネット経由 読み取り・リスト・書き込み VPCフローログ保管バケット VPCフローログ VPC 通信データのトラブルシュート/セキュリティ分析のため 主体サービスからAWS内部ネットワーク経由 書き込み Config • 構成履歴/スナップショットの監査・追跡・再評価のため 主体サービスからAWS内部ネットワーク経由 読み取り 運用・保守担当者 • 運用・保守作業 運用・保守担当者の端末からインターネット経由 読み取り・リスト・書き込み WAFログ保管バケット Web ACLトラフィックログ WAF ヒット/ブロックログの可視化・分析と事後調査のため 主体サービスからAWS内部ネットワーク経由 書き込み Config • 構成履歴/スナップショットの監査・追跡・再評価のため 主体サービスからAWS内部ネットワーク経由 読み取り 運用・保守担当者 • 運用・保守作業 運用・保守担当者の端末からインターネット経由 読み取り・リスト・書き込み ALBログ保管バケット ALBアクセスログ、接続ログ ALB アクセス解析・異常検知・障害調査のため 主体サービスからAWS内部ネットワーク経由 書き込み Config • 構成履歴/スナップショットの監査・追跡・再評価のため 主体サービスからAWS内部ネットワーク経由 読み取り 運用・保守担当者 • 運用・保守作業 運用・保守担当者の端末からインターネット経由 読み取り・リスト・書き込み アプリケーションバケットA 画像ファイル • EC2 • アプリケーション処理 主体サービスからAWS内部ネットワーク経由 • 読み取り・リスト・書き込み Lambda • アプリケーション処理 主体サービスからAWS内部ネットワーク経由 読み取り・リスト・書き込み Config • 構成履歴/スナップショットの監査・追跡・再評価のため 主体サービスからAWS内部ネットワーク経由 読み取り 運用・保守担当者 • 運用・保守作業 運用・保守担当者の端末からインターネット経由 読み取り・リスト アプリケーションログ保管バケットA Cloudwatch Logsログ DataFirehose • ログの長期保管(障害調査等のため) 主体サービスからAWS内部ネットワーク経由 書き込み (EC2アプリログ、Lambda実行ログ等) Config • 構成履歴/スナップショットの監査・追跡・再評価のため 主体サービスからAWS内部ネットワーク経由 読み取り 運用・保守担当者 • 運用・保守作業 運用・保守担当者の端末からインターネット経由 読み取り・リスト・書き込み ※本来はアクションベースでもう少し詳細化が望ましい ②アクセスパターンの整理 前段の①に対して、誰が(主体)、何のために(目的)、どのようにアクセスし(経路)、何をする(操 作)かを整理 ※この時に、それぞれのアクセスパターンに対して、IAMポリシー有無およびVPCエンドポイント 経由有無もあわせて整理する ◆システム構成に対する整理例
③アクセス制御の設計 どの箇所で、どのように制御するかの万能な正解はない。 そのため、要件やデータ特性(機密性など)、運用面等を考慮して設計する必要がある。 例えば、セキュリティ要件が厳しい場合は、多層防御として各ポイントでそれぞれフルカスタムの アクセス制御を行うことで、一部で誤設定などがあったとしても、別ポイントで制御可能なためリ スクを低減できる。 一方で、複雑化するため、トラブルシュートに時間を要したり、設定変更時は全てに対して反映 する必要があったりとデメリットもあり。
まとめ
まとめ 1.S3バケットのアクセス制御方法は主に以下がある ⚫ S3バケットポリシー ⚫ S3アクセスポイント(ポリシー) ⚫ IAMポリシー ⚫ VPCエンドポイントポリシー(VPC内からアクセスがある場合)
⚫ KMSキーポリシー(CMK利用の場合) 2.どの箇所でどのようにアクセス制御するかは、S3バケットやアクセスパターンを整理し、要件 やデータ特性、運用面等を考慮して設計する必要がある
まとめ 1.S3バケットのアクセス制御方法は主に以下がある ⚫ S3バケットポリシー ⚫ S3アクセスポイント(ポリシー) ⚫ IAMポリシー ⚫ VPCエンドポイントポリシー(VPC内からアクセスがある場合)
⚫ KMSキーポリシー(CMK利用の場合) 2.どの箇所でどのようにアクセス制御するかは、S3バケットやアクセスパターンを整理し、要件 やデータ特性、運用面等を考慮して設計する必要がある セキュリティは誰かが守るものではなく、みんなで守るものです(みんなの責任) そのため、ロールなどに関係なく、みんなで安全なシステムを築いていきましょう!
ご清聴ありがとうございました!