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
340
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
210
VPCエンドポイント意外とお金かかるなぁ。せや、共有したろ!
tommy0124
1
910
初海外がre:Inventだった人間の感じたこと
tommy0124
1
310
Other Decks in Technology
See All in Technology
“詰む”前に仕組みを作れ 〜技術の波に溺れないためのキャッチアップ術〜
takasyou
5
1.9k
データレイクの「見えない問題」を可視化する
sansantech
PRO
1
140
人材育成分科会.pdf
_awache
4
300
GitHub Copilot app最速の発信の裏側
tomokusaba
1
220
入門!AWS Blocks
ysuzuki
1
170
2026年6月23日 Syncable Tech + Start Python Club にて
hamukazu
0
140
マルチアカウント環境での コーディングエージェントを使った障害調査が大変なので AIエージェントにReadOnly権限を付与してみた / ReadOnly AI Agents for Multi-Account AWS Incident Response
yamaguchitk333
2
120
[チョークトーク資料]AWS DevOps Agent を使いこなす / AWS Dev Ops Agent Chalk Talk AWS Summit Japan 2026
kinunori
3
670
自宅LLMの話
jacopen
1
690
AI-DLCを “そのまま導入しなかった”話 ~組織に合わせてアジャストした 私たちの実践共有~
hiroramos4
PRO
1
280
SONiCの統計情報を取得したい
sonic
0
260
Oracle Cloud Infrastructure:2026年6月度サービス・アップデート
oracle4engineer
PRO
0
170
Featured
See All Featured
Dominate Local Search Results - an insider guide to GBP, reviews, and Local SEO
greggifford
PRO
0
200
It's Worth the Effort
3n
188
29k
JAMstack: Web Apps at Ludicrous Speed - All Things Open 2022
reverentgeek
1
480
Embracing the Ebb and Flow
colly
88
5.1k
WENDY [Excerpt]
tessaabrams
11
38k
Why Your Marketing Sucks and What You Can Do About It - Sophie Logan
marketingsoph
0
170
The Web Performance Landscape in 2024 [PerfNow 2024]
tammyeverts
12
1.2k
What does AI have to do with Human Rights?
axbom
PRO
1
2.2k
Dealing with People You Can't Stand - Big Design 2015
cassininazir
367
27k
The Director’s Chair: Orchestrating AI for Truly Effective Learning
tmiket
1
200
Principles of Awesome APIs and How to Build Them.
keavy
128
18k
Put a Button on it: Removing Barriers to Going Fast.
kastner
60
4.3k
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バケットやアクセスパターンを整理し、要件 やデータ特性、運用面等を考慮して設計する必要がある セキュリティは誰かが守るものではなく、みんなで守るものです(みんなの責任) そのため、ロールなどに関係なく、みんなで安全なシステムを築いていきましょう!
ご清聴ありがとうございました!