Upgrade to PRO for Only $50/Year—Limited-Time Offer! 🔥

S3を正しく理解するための内部構造の読解

Avatar for NRI Netcom NRI Netcom PRO
December 16, 2025

 S3を正しく理解するための内部構造の読解

Avatar for NRI Netcom

NRI Netcom PRO

December 16, 2025
Tweet

More Decks by NRI Netcom

Other Decks in Technology

Transcript

  1. S3を正しく理解するための内部構造の読解 ~ 表層の理解を超えた設計の原則 ~ NRIネットコム TECH & DESIGN STUDY #85

    2025年12月12日 NRIネットコム株式会社 執行役員 デジタルソリューション事業本部長 クラウドテクニカルセンター センター長 佐々木拓郎
  2. 1 Copyright(C) NRI Netcom, Ltd. All rights reserved. 自己紹介 ◼

    2000年 4月 NRIネットコム株式会社入社 ◼ 現在 執行役員 デジタルソリューション事業本部長 クラウドテクニカルセンター センター長 佐々木拓郎 ◼ 執筆
  3. 2 Copyright(C) NRI Netcom, Ltd. All rights reserved. NRIネットコムのAWSへの取り組み APNアドバンスド

    コンサルティングパートナー 複数のAWS Award受賞者と 多数のAWS認定者資格 書籍&ブログ執筆
  4. 3 Copyright(C) NRI Netcom, Ltd. All rights reserved. 関連書籍の紹介 2冊のIAM本とAWSアカウントセキュリティの本

    S3を使う上で知っておくべきことを まとめた本(2025年執筆) データ分析の設計本。S3が重要 なテーマ(2021年執筆) データ分析の性能本。ほとんどが S3の計測(2023年執筆) ハッシュタグ #nncstudy
  5. 4 Copyright(C) NRI Netcom, Ltd. All rights reserved. S3の内部構造を理解する 構造・冗長化・整合性モデル

    01 アクセス制御 なぜ二重防御が必要なのか? 02 S3への通信経路とネットワーク 03 お知らせ 04
  6. 6 Copyright(C) NRI Netcom, Ltd. All rights reserved. オブジェクトストレージ オブジェクトストレージとは?

    物理的なディスク (HDDやSSD) ブロックストレージ ファイルシステム OSレイヤー 物理レイヤー オブジェクトストレージ(S3) S3 は、ファイルシステムやブロックストレー ジのように OS から直接参照されるストレージ ではなく、HTTP API を通じて利用されるオブ ジェクトストレージである。利用者は、バケッ トやオブジェクトといった論理的な構造のみを 扱い、その背後にある物理的なディスク配置や 冗長化方式を意識する必要はない。 S3を管理するアプリケーション層 S3 の内部では、膨大な数の物理ストレージノー ドが分散システムとして構成されているが、利 用者からはそれらが 1 つの論理的なバケットと して抽象化されている。この強力な抽象化レイ ヤーにより、利用者は高い耐久性とスケーラビ リティを意識することなく扱うことが可能とな る。 アプリケーション レイヤー ハッシュタグ #nncstudy
  7. 7 Copyright(C) NRI Netcom, Ltd. All rights reserved. 内部構造:バケット・オブジェクト・キー・プレフィックス S3には、フォルダーは存在しない。キーの一部のプレフィックスで疑似的なフォルダを実現

    S3://bucket-name/prefix/object.png バケット名 キー名 プレフィックス オブジェクト名 NRIネットコムBLOG S3のフォルダ構造とプレフィックスの話 https://tech.nri-net.com/entry/s3_folder_structure_and_prefix ハッシュタグ #nncstudy
  8. 8 Copyright(C) NRI Netcom, Ltd. All rights reserved. 整合性モデルの変遷① 2006年~2010年

    更新はそのうち全体に反映される Client 1 S3バケット 時間の流れ 書き込み:いちご Client 2 書き込み:みかん 読み込み:いちご or みかん or 結果なし 読み込み:みかん ? 結果整合性 ハッシュタグ #nncstudy
  9. 9 Copyright(C) NRI Netcom, Ltd. All rights reserved. 整合性モデルの変遷② 2010年~2020年

    新しいオブジェクトのPUTは書き込み後の読み込み整合性 「書き込み後の読み込み」整合性 Client 1 S3バケット 時間の流れ (新規)書き込み: いちご Client 2 (上書き)書き込み: みかん 読み込み:いちご 読み込み: いちご or みかん 読み込み: いちご ? ハッシュタグ #nncstudy
  10. 10 Copyright(C) NRI Netcom, Ltd. All rights reserved. 整合性モデルの変遷③ 2020年~

    上書きPUTおよびDELETEにも書き込み後の読み込み整合性 「強い整合性」 Client 1 S3バケット 時間の流れ (新規)書き込み: いちご Client 2 (上書き)書き込み: みかん 読み込み:いちご 読み込み: みかん ハッシュタグ #nncstudy
  11. 11 Copyright(C) NRI Netcom, Ltd. All rights reserved. プレフィックスと性能の関係 プレフィックスは性能の単位

    awsexamplebucket/2018-01-28/photo1.jpg awsexamplebucket/2018-01-28/photo2.jpg awsexamplebucket/2018-01-28/photo3.jpg awsexamplebucket/2018-01-28/photo4.jpg awsexamplebucket/2018-01-28/photo5.jpg awsexamplebucket/2018-01-28/photo6.jpg awsexamplebucket/232a-2018-01-05/photo1.jpg awsexamplebucket/7b54-2018-01-15/photo2.jpg awsexamplebucket/8a54-2018-01-15/photo3.jpg awsexamplebucket/x154-2018-01-15/photo4.jpg awsexamplebucket/w154-2018-01-15/photo5.jpg awsexamplebucket/4b54-2018-01-15/photo6.jpg 同一プレフィックスの場合 この中で性能を分け合う プレフィックスがバラけると カタログ最大値の性能 • プレフィクス = パーティションキー • プレフィクス上限 5,500 GET/sec 3,500 PUT/sec • 上限を超えた場合は内部的にプレフィックスを分割(シャード化)し始めるが、翌日にリセット AWS re:Invent 2025 - Amazon S3 performance: Architecture, design, and optimization (STG335) https://www.youtube.com/watch?v=JNN5Aw5kVFI ハッシュタグ #nncstudy
  12. 13 Copyright(C) NRI Netcom, Ltd. All rights reserved. ユーザーポリシー(IAMポリシー)とリソースベースポリシー(バケットポリシー) IAMポリシーとバケットポリシーの二つを併用するのが基本

    S3バケット IAMポリシー IAM Role バケットポリシー IAM User ユーザーポリシー S3のバケットもしくはオブジェクトに アクセス権限を有しているかを記載 リソースベースのポリシー バケット所有者から誰に 許可を与えるかを記載 アクセス • ユーザーポリシー(IAMポリシー)は、利用者がどのバケットを使えるのかを記載 • リソースベースポリシー(バケットポリシー)は、リソース側からどういった条件で使えるのかを記載 • ACLはすでに非推奨 ハッシュタグ #nncstudy
  13. 14 Copyright(C) NRI Netcom, Ltd. All rights reserved. IAMポリシー 最小権限設計が基本

    • S3の情報漏洩の多くは、複合技(インスタンスの脆弱性&インスタンスの過剰権限を利用) • バケット一覧の取得やオブジェクト一覧の付与は慎重に • コンテンツ取得であればgetだけ、ログ出力であればputだけ アカウント内の全てのS3 バケット EC2インスタンス IAM Role S3:* ( 過剰な権限 ) 不正アクセス者 脆弱性を突いて 乗っ取り List Buckets & Syncで 全てのS3バケットの データを取得 ハッシュタグ #nncstudy
  14. 15 Copyright(C) NRI Netcom, Ltd. All rights reserved. バケットポリシー IAMポリシーのみの制御は現実的には難しい

    IAMポリシー 管理者 アクセス可 アクセス不可 設定例: S3への全ての権限 ただしバケットBは除く IAMポリシーのみでも制御は可能だが、 現実的な運用は難しい バケットから制御する バケット バケットポリシー IAM Role 特定のIAMロール Endpoints 特定のVPC エンドポイント経由 IAM Role 不特定のIAMからは 拒絶 ハッシュタグ #nncstudy
  15. 16 Copyright(C) NRI Netcom, Ltd. All rights reserved. Block Public

    Accessは必ず適用 Block Public Access(BPA) • S3バケットの直接インターネット公開を禁止する設定 • Organizationsから適用できるようになっている • バケット公開は、CloudFront + OAC(Origin Access Control)を利用 設定項目 内容 BlockPublicAcls パブリックACLの新規設定を禁止 IgnorePublicAcls 既存のパブリックACLを無視 BlockPublicPolicy パブリックなバケットポリシーの設定を禁止 RestrictPublicBuckets バケットポリシーで許可されていても、特定のサービスプリンシパルのみ許可 ハッシュタグ #nncstudy
  16. 17 Copyright(C) NRI Netcom, Ltd. All rights reserved. Block Public

    Accessを有効にしておくと、多くの事故を防げる AWS re:Invent 2025 - Amazon S3 security and access control best practices (STG316)https://www.youtube.com/watch?v=UfGW7RoaNhc ハッシュタグ #nncstudy
  17. 19 Copyright(C) NRI Netcom, Ltd. All rights reserved. AWSのネットワーク① VPC外のAWSのネットワークとは何か?

    AWS Cloud Virtual private cloud (VPC) Internet gateway Public subnet Private subnet Amazon Simple Storage Service (Amazon S3) この空間は何? インターネット or Something ハッシュタグ #nncstudy
  18. 20 Copyright(C) NRI Netcom, Ltd. All rights reserved. AWSのネットワーク② The

    Internet A社ネットワーク B社ネットワーク C社ネットワーク The Internet 組織が持つネットワークを 相互に接続したものがインターネット AS 自律システム(Autonomous System) 一つのネットワーク管理者の元で単一の明確に定義されたルー ティングポリシーによって制御されているネットワーク ネットワークごとに一意のAS番号が付与される ハッシュタグ #nncstudy
  19. 22 Copyright(C) NRI Netcom, Ltd. All rights reserved. AWSのネットワーク④ AWSのネットワークの正体

    AWS Cloud Virtual private cloud (VPC) Internet gateway Public subnet Private subnet Amazon Simple Storage Service (Amazon S3) AWSが管理する プライベートネットワーク空間 (ただしパブリックIPで通信) ハッシュタグ #nncstudy
  20. 23 Copyright(C) NRI Netcom, Ltd. All rights reserved. EC2からS3への4つの経路 Public

    subnet Private subnet Virtual private cloud (VPC) Internet gateway NAT gateway Endpoints (Gatewayタイプ) S3バケット インスタンス インスタンス パブリックIP Endpoints (Interfaceタイプ) ① ② ③ ④ EC2からS3への4つの経路 AWS PrivateLink ハッシュタグ #nncstudy
  21. 24 Copyright(C) NRI Netcom, Ltd. All rights reserved. Internet Gateway経由のアクセス

    AWS Cloud Virtual private cloud (VPC) Internet gateway Public subnet Private subnet Amazon Simple Storage Service (Amazon S3) Instance ハッシュタグ #nncstudy
  22. 25 Copyright(C) NRI Netcom, Ltd. All rights reserved. EC2 ⇒

    Nat Gateway ⇒ Internet Gateway ⇒ S3 AWS Cloud Virtual private cloud (VPC) Internet gateway Public subnet Private subnet Amazon Simple Storage Service (Amazon S3) Instance NAT gateway ハッシュタグ #nncstudy
  23. 26 Copyright(C) NRI Netcom, Ltd. All rights reserved. EC2 ⇒

    VPC Endpoint(Interfaceタイプ) ⇒ S3 AWS Cloud Virtual private cloud (VPC) Internet gateway Public subnet Private subnet Amazon Simple Storage Service (Amazon S3) Instance AWS PrivateLink Elastic network interface ハッシュタグ #nncstudy
  24. 27 Copyright(C) NRI Netcom, Ltd. All rights reserved. EC2 ⇒

    VPC Endpoint(Gatewayタイプ) ⇒ S3 AWS Cloud Virtual private cloud (VPC) Internet gateway Public subnet Private subnet Amazon Simple Storage Service (Amazon S3) Instance Elastic network interface Endpoints ハッシュタグ #nncstudy
  25. 29 Copyright(C) NRI Netcom, Ltd. All rights reserved. クラウド運用の困りごとを解決するウェビナー MSPで実現する運用再編のアプローチ

    ~バラバラな運用がクラウド活用を阻害する~ 【受講後に得られること】 ・システム分断運用が引き起こす構造的な問題を整理できる ・全社統一の運用品質を実現するための考え方(技術 × 組織)を理解できる ・複数ベンダー運用を一本化した際の効果と、MSP活用の具体的なメリットが分かる ・AWSアカウント管理&と請求代行と、MSPを組み合わせた“クラウド運用の最適モデル”のイメージを持てる ・IAM Identity Centerの機能概要と設計のポイントが分かる 【こんな方におススメです】 ・・AWS導入済で、システムごとに別ベンダー運用になっている情シス/IT部門のリーダー ・運用標準化やガバナンス強化を検討している IT企画・ガバナンス部門の方 ・CCoE/プラットフォームエンジニアとして全社的な運用モデルを整理したい方 ・AWS請求代行の次のステップとして MSP を検討したい方 https://nrinetcom.connpass.com/event/377244/ 12月18日(木) 12:00~13:00