ストレージクラス

Amazon S3 へのデータストレージには、次の 4 つのストレージクラスがあります: S3 標準、S3 標準 – 低頻度アクセス、S3 1 ゾーン – 低頻度アクセス、Amazon Glacier。これらのストレージクラスの詳細については、Amazon S3 ストレージクラスページを参照してください。オブジェクトは、ライフサイクル管理ポリシーを使用して、ストレージ間を自動的に移動できます。

セキュリティおよびアクセス管理

デフォルトでは、バケットオーナーとオブジェクトオーナーのみが自身で作成した Amazon S3 リソースへのアクセスがあります。S3 は、複数のアクセスコントロールメカニズムだけでなく、保存時の安全な転送と格納を行うための暗号化をサポートしています。Amazon S3 のデータ保護機能により、意図しないユーザーアクション、アプリケーションエラー、インフラストラクチャ障害によるデータ損失に対して、論理的・物理的の両面の障害からデータを保護することができます。PCI や HIPAA などの規制基準を遵守しなければならないお客様には、Amazon S3 のデータ保護機能を、コンプライアンス達成における全体的な戦略の一部としてご利用いただけます。Amazon S3 が提供する様々なデータのセキュリティおよび信頼性に関する機能は下に詳細な説明があります。

柔軟なアクセス制御メカニズム

Amazon S3 は、お客様のデータに誰が、どのように、いつ、どこでアクセスすることができるかを柔軟にコントロールできるメカニズムをサポートしています。Amazon S3 は、4 種類のアクセスコントロールメカニズムを備えています。AWS Identity and Access Management (IAM) ポリシー、アクセスコントロールリスト (ACL)、バケットポリシー、およびクエリ文字列認証です。IAM を使用すると、単一の AWS アカウントで複数のユーザーを作成し管理できます。IAM ポリシーにより、お客様は Amazon S3 バケットやオブジェクトに対して細かく分けられたコントロールを IAM ユーザーに付与することができます。ACL を使用して、個々のオブジェクトに特定のアクセス許可を選択的に追加(付与)することができます。Amazon S3 バケットポリシーは、単一のバケット内のオブジェクトの一部または全体にわたってアクセス許可を追加または拒否するために使用できます。クエリ文字列認証を使用すると、指定した期間に有効な URL を通して Amazon S3 のオブジェクトを共有できます。

S3 コンソールでは、パブリックにアクセスが可能な S3 バケットがハイライトされます。また、バケットポリシーやバケット ACL への変更によりそのバケットがパブリックにアクセス可能になった場合、警告が出されます。

VPC エンドポイント

Amazon Virtual Private Cloud (Amazon VPC) から、VPC エンドポイントを使用して Amazon S3 にアクセスできます。VPC エンドポイントは設定が簡単で、インターネットゲートウェイやネットワークアドレス変換 (NAT) インスタンスを設定せずに、Amazon S3 への信頼できる接続を提供します。VPC エンドポイントを使用すれば、Amazon VPC と Amazon S3 との間のデータは Amazon のネットワーク内で転送されるようになり、お客様のインスタンスをインターネットトラフィックから守るのに役立ちます。Amazon S3 用の Amazon VPC エンドポイントは、複数レベルのセキュリティコントロールを備え、S3 バケットへのアクセスの制限をサポートします。まず、Amazon S3 バケットへのリクエストが、VPC エンドポイントを使用した VPC からのものであることを要求できます。さらに、特定の VPC エンドポイントを通じたアクセスが許可されるバケット、リクエスト、ユーザー、またはグループを管理できます。

暗号化

HTTPS プロトコルを使用して SSL で暗号化されたエンドポイント経由で、Amazon S3 にデータを安全にアップロード/ダウンロードできます。Amazon S3 は、保存時のデータを自動で暗号化でき、複数のキー管理方法を提供します。受信ストレージリクエストに暗号化情報が含まれない場合、S3 に保存する前にオブジェクトを自動的に暗号化するよう S3 バケットを設定できます。また、Amazon S3 の暗号化クライアントなどのクライアント暗号化ライブラリを使用して、Amazon S3 にアップロードする前にデータを暗号化できます。

サーバー側暗号化(SSE)を使用して Amazon S3 が保存時のデータを暗号化するように選択した場合、Amazon S3 は書き込み時にデータを自動的に暗号化し、取得時に自動的にデータを復号します。Amazon S3 SSE は、保存時のデータを暗号化するとき、Advanced Encryption Standard(AES) 256 ビット対称キーを使用します。Amazon S3 でサーバー側暗号化を選択する場合、3 種類の暗号化キー管理方法があります。

SSE と Amazon S3 キー管理(SSE-S3)

SSE-S3 では、Amazon S3 は保存時のデータを暗号化し、暗号化キーを自動的に管理します。

SSE と顧客提供のキー(SSE-C)

SSE-C では、Amazon S3 はユーザーが提供するカスタム暗号化キーを使用して保存時のデータを暗号化します。SSE-C を使用するには、カスタム暗号化キーをアップロード要求に含めるだけです。Amazon S3 はそのキーを使用してオブジェクトを暗号化し、暗号化されたデータを安全に保存します。同様に、暗号化されたオブジェクトを取得するには、カスタム暗号化キーを提供します。Amazon S3 は取得の一部としてオブジェクトを復号します。Amazon S3 は暗号化キーをどこにも保存しません。Amazon S3 が要求を完了すると、キーはすぐに破棄されます。

SSE と AWS KMS(SSE-KMS)

SSE-KMS では、Amazon S3 はユーザーが AWS Key Management Service(KMS)で管理するキーを使用して保存時のデータを暗号化します。キー管理に AWS KMS を使用するといくつかの利点があります。AWS KMS では、マスターキーの使用に対して別の権限があり、制御階層が追加されるだけでなく、Amazon S3 に格納されているオブジェクトへの非承認アクセスに対する保護を提供できます。AWS KMS では監査証跡が提供されるので、誰がキーを使用してどのオブジェクトにいつアクセスしたのかがわかるだけでなく、データ復号権限を持たないユーザーからのデータアクセス試行の失敗を確認できます。さらに、AWS KMS では追加のセキュリティコントロールを提供し、PCI-DSS、HIPAA/HITECH、FedRAMP の各業界要件に準拠する顧客をサポートします。

詳細については、Amazon S3 開発者ガイドデータ暗号化の使用のトピックを参照してください。

監査ログ

Amazon S3 はまた、お客様の Amazon S3 リソースに対して行われたリクエストのロギングをサポートしています。それに対して行われたリクエストのアクセスログレコードを作成するように Amazon S3 バケットを設定することができます。これらのサーバーアクセスログは、バケットやその中のオブジェクトに対して行われたすべてのリクエストをキャプチャするので、監査目的に利用できます。

Amazon S3 で利用できるセキュリティ機能の詳細については、Amazon S3 開発者ガイドのアクセスコントロールのトピックをご参照ください。Amazon S3 を含む AWS のセキュリティの概要については、アマゾン ウェブ サービス: セキュリティプロセスの概要を参照してください。

バージョニング

Amazon S3 はバージョニング機能でさらなる保護能力を提供します。バージョニングを使用して、Amazon S3 バケットに格納されたあらゆるオブジェクトのあらゆるバージョンを、格納、取得、復元することができます。これによって、意図せぬユーザーアクションやアプリケーションの障害から、簡単に回復することができます。デフォルトでは、リクエストは最も新しく書き込まれたバージョンを取得するようになっています。リクエストでバージョンを指定することによって、オブジェクトの旧バージョンを取得することができます。ストレージ料金は、格納される各バージョンに対して適用されます。S3 ライフサイクルルールを設定して、複数のバージョンのオブジェクトを保存する期間と料金を自動的に管理できます。

Multi-Factor Authentication Delete

Amazon S3 は、Multi-Factor Authentication(MFA)Delete で追加のセキュリティを提供します。この機能を有効にすると、オブジェクトの以前のバージョンを保護するため、Amazon S3 に保存されているオブジェクトを削除するには多要素認証デバイスの使用が必要になります。

Amazon S3 バケットで MFA Delete を有効した場合、次の 2 つの形態の認証を一緒に指定すると、バケットのバージョニング状態のみを変更したり、あるいはオブジェクトバージョンを永久に削除したりすることができます。

  • AWS アカウント認証情報
  • 有効なシリアル番号、スペース、および承認済みの認証デバイスに表示される 6 桁のコードの連結文字

Amazon S3 Multi-Factor Authentication (MFA) 削除についての詳細を確認 »

オブジェクトへの期間限定アクセス

Amazon S3 はクエリ文字列認証をサポートしており、お客様が指定した期間だけ有効な URL を生成できます。この期間限定 URL は、ソフトウェアのダウンロードや、ユーザーがオブジェクトにアクセスできる期間を制限したい他のアプリケーションに便利です。

期間限定 URL の詳細を確認 »

機械学習による自動化されたセキュリティ

Amazon Macie では、AWS 内の機密データの検出、分類、保護が機械学習によって自動的に行われます。Amazon Macie では、個人情報 (PII) や知的財産などの機密データが認識されます。また、ダッシュボードやアラートが提供されるため、データのアクセスや移動状況を確認できます。この完全マネージドサービスでは、データアクセスアクティビティの異常が継続的にモニタリングされ、不正アクセスの危険や不注意によるデータ漏洩が検出された場合には詳細なアラートが生成されます。

すぐに活用できるクエリ

Amazon には、Amazon S3 で既存のワークフローを最適化して統合する方法を含め、クラウド内の大量のデータをより迅速に分析および処理するツール群があります。 

S3 Select

Amazon S3 Select は、Amazon S3 バケット内のオブジェクトのデータを迅速かつ安価に分析および処理するのに役立つよう設計されています。これは、単純な SQL 式を使用して、Amazon S3 のオブジェクトからデータのサブセットを取得する機能を提供することによって実現します。アプリケーションは、コンピューティングリソースを使用してオブジェクトからデータをスキャンおよびフィルタする必要がなくなり、クエリパフォーマンスを最大 400 %向上させ、クエリコストを最大 80 %削減できます。S3 Select を利用するには、GET ではなく SELECT を使用するようにアプリケーションを変更するだけです。

Amazon Athena

Amazon Athena は、標準的な SQL 表現を使用して Amazon S3 のデータを簡単に分析できるインタラクティブなクエリサービスです。Athena はサーバーレスなので、インフラストラクチャの管理は不要です。実行したクエリに対してのみ料金が発生します。

Athena は簡単に使えます。Amazon S3 にあるデータを指定して、スキーマを定義し、標準的な SQL 表現を使ってデータのクエリを開始するだけです。多くの場合、数秒で結果が出てきます。Athena を使用すると、分析用データを準備するための複雑な ETL ジョブは不要になります。これによって、誰でも SQL のスキルを使って、大型データセットをすばやく、簡単に分析できるようになります。

Amazon Redshift Spectrum

Amazon Redshift には、Amazon S3 のエクサバイト単位の非構造化データに対して SQL クエリを直接実行できる Redshift Spectrum も含まれています。ロードや変換は不要で、Avro、CSV、Grok、ORC、Parquet、RCFile、RegexSerDe、SequenceFile、TextFile、TSV などのオープンデータフォーマットを使用できます。Redshift Spectrum は、取得中のデータに基づいて自動的にクエリのコンピューティング性能をスケーリングし、Amazon S3 に対するクエリがデータセットのサイズに関係なく高速で実行されるようにします。

ストレージ管理

Amazon S3 では、データ使用パターンに実用的な洞察を加え、管理ポリシーによってストレージを管理するツールを提供することで、データを簡単に管理できます。これらの管理機能はすべて、Amazon S3 API または AWS マネジメントコンソールを使用して容易に管理できます。Amazon S3 が提供するさまざまなデータの管理に関する機能について、詳しく説明します。

S3 Object Tagging

Amazon S3 オブジェクトのタグ付けにより、Amazon S3 オブジェクトのアクセスを管理および制御できます。S3 オブジェクトタグとは S3 オブジェクトに適用されるキーと値のペアのことで、オブジェクトの存続期間中にいつでも作成、更新、または削除できます。これによって、Identity and Access Management (IAM) ポリシーを作成したり、S3 ライフサイクルポリシーを設定したり、ストレージメトリクスをカスタマイズしたりできるようになります。その後、これらのオブジェクトレベルのタグにより、ストレージクラス間での移行を管理したり、バックグラウンドでオブジェクトを有効期限切れにしたりできます。

S3 Inventory

Amazon S3 の同期的 List API にスケジュールされた代替方法を提供する S3 Inventory を使用すると、ビジネスワークフローやビッグデータジョブを簡素化および迅速化できます。S3 Inventory は、S3 バケットまたはプレフィックスについて、オブジェクトとそれに対応するメタデータの CSV (Comma Separated Values) または ORC (Optimized Row Columnar) を、日単位または週単位で出力します。また、S3 インベントリでは、ビジネス、コンプライアンス、規制のニーズに合わせて、オブジェクト暗号化ステータスを簡単に監査およびレポートできます。

Storage Class Analysis

ストレージクラス分析では、低頻度でアクセスされるストレージを低コストのストレージクラスに移行するために、S3 バケット内のオブジェクトのアクセス頻度を監視できます。ストレージクラス分析は使用状況のパターンを観察してアクセスが頻繁ではないストレージを検出し、S3 標準ストレージクラスから S3 標準-IA、S3 One Zone-IA、または Amazon Glacier ストレージクラスに適切なオブジェクトを移行するのに役立ちます。バケット、プレフィックス、またはオブジェクトタグ全体をモニタリングするようにストレージクラス分析ポリシーを構成できます。ストレージクラス分析でデータが別のストレージクラスへの移行対象であることが検出されたら、これらの結果に基づいて新しい S3 ライフサイクルポリシーを簡単に作成できます。この機能には、指定したバケット、プレフィックス、またはタグレベルでのストレージ使用状況の詳細な日単位の分析も含まれ、これは S3 バケットにエクスポートできます。

Amazon S3 の Amazon CloudWatch メトリクス

Amazon S3 を CloudWatch と統合すると、統合されたモニタリング機能とアラーム機能をさまざまなメトリクスで利用でき、エンドユーザーへのサービスの向上に役立ちます。1 分の CloudWatch メトリクスの受信、CloudWatch アラームの設定、および CloudWatch ダッシュボードへのアクセスによって、Amazon S3 ストレージの運用とパフォーマンスをリアルタイムで確認できます。クラウドストレージに依存するウェブアプリケーションやモバイルアプリケーションの場合、これらを使用すると、オペレーションの問題を迅速に特定して対応できます。これらの 1 分のメトリクスは S3 バケットレベルで利用可能です。また、共有プレフィックスやオブジェクトタグを使用して収集されたメトリクスのフィルタを柔軟に定義でき、メトリクスのフィルタを特定のビジネスアプリケーション、ワークフロー、または内部組織に合わせることができます。

Amazon S3 の AWS CloudTrail 管理、データイベント

AWS CloudTrail を使用すると、S3 オブジェクトについてのバケットレベル (管理イベント) とオブジェクトレベルの API アクティビティ (データイベント) をキャプチャできます。データイベントには、GET、HEAD、Get Object ACL などの読み取り操作と、PUT や POST などの書き込み操作が含まれます。キャプチャされる詳細によって、さまざまなタイプのセキュリティ、監査、ガバナンス、およびコンプライアンスのユースケースをサポートできます。S3 データイベントの詳細については、AWS CloudTrail のページを参照してください。

Amazon S3 データライフサイクル管理

Amazon S3 では、コストとパフォーマンスの特性を自動的に割り当てて、データの進化と共にそれらを変更することができます。また、容量のプロビジョニング、低コスト階層への自動移行、法令遵守ポリシー、およびスケジュールされた最終削除を含め、データライフサイクル管理の共通タスクを自動化することもできます。

データの保存日数経過に伴い、ハードウェアに障害が発生したり耐用年数に達したりすると、Amazon S3 は、データを新しいハードウェアへ自動的かつ透過的に移行します。このため客様は、費用と時間がかかりリスクも伴うハードウェア移行を実施する必要がなくなります。データの保存日数経過に伴ってデータを自動的に低コストのストレージに移行する S3 ライフサイクルポリシーを、Amazon S3 に直接設定できます。データの古さに応じて Amazon S3 オブジェクトを自動的に S3 標準-IA、S3 One Zone-IA、または Amazon Glacier ストレージクラスに自動的に移行するようにルールを決められます。ライフサイクルポリシーはバケット、プレフィックス、またはオブジェクトタグ別に設定でき、お客様のユースケースに最適な間隔を指定できます。

データの保存期間が終了すると、Amazon S3 はデータを定期的に削除するか、大容量を一斉に削除するかを選択するオプションを提供します。定期的にデータを削除する場合、事前定義された期間後、オブジェクト一式を削除するようにルールを定義できます。これらのルールは、S3 標準、S3 標準–IA、またはS3 One Zone-IA に保存されているオブジェクトおよび Amazon Glacier にアーカイブされているオブジェクトに適用できます。

また、Amazon S3 オブジェクトのバージョンに応じたライフサイクルルールを定義して、ストレージコストを節約することもできます。例えば、オブジェクトの古いバージョンが不要になったときにそのバージョンを自動的 (かつ明確) に削除するルールを作成し、コストを削減し、パフォーマンスを向上させることができます。または、古いバージョンを S3 標準、S3 標準–IA、S3 One Zone-IA、または Amazon Glacier のいずれかに自動的に移行するルールを作成し、ストレージコストをさらに削減することもできます。

クロスリージョン レプリケーション

クロスリージョンレプリケーション (CRR) では、新しいオブジェクトを他の AWS リージョンに簡単にレプリケートして、レイテンシーを削減し、コンプライアンス、セキュリティ、災害対策、およびその他多数のユースケースに対応できます。CRR では、送信元バケットにアップロードされたすべてのオブジェクトが、選択した別の AWS リージョンにある送信先バケットにレプリケートされます。オブジェクトに関連付けられたメタデータ、ACL、およびオブジェクトタグもレプリケーションに含まれます。レプリケーション元バケットで CRR を設定した後に、オブジェクトのデータ、メタデータ、ACL、またはオブジェクトタグの変更が発生すると、レプリケーション先バケットへの新しいレプリケーションがトリガーされます。

CRR はバケットレベル設定であり、別の AWS リージョンの送信先バケットを指定することにより、使用するバケット上の CRR が有効になります。CRR ではニーズに応じて、対象リージョンとして AWS コマーシャルリージョンを選択したり、レプリケートしたストレージに S3 ストレージクラスを選択したりできます。アカウント全体に CRR を設定し、送信元と送信先で全く異なる所有権スタックを保有することができます。これらの設定は、AWS マネジメントコンソール、REST API、AWS CLI、または AWS SDK を用いて作成できます。CRR を有効にするには、レプリケーション元バケットとレプリケーション先バケットの両方でバージョニングを有効にする必要があります。

クロスリージョンレプリケーションの詳細情報を確認 »

コストのモニタリングとコントロール

Amazon S3 には、コストの管理とコントロールのためのさまざまな機能があります。AWS マネジメントコンソールまたは Amazon S3 API を使用して Amazon S3 バケットにタグを適用すると、例えばコストセンター、アプリケーション名、所有者など、ビジネス上の複数の側面でコストを割り当てることができます。その後、これらのコストの詳細をアマゾン ウェブ サービスのコスト配分レポートを使用して確認できます。このレポートは、バケットタグ別に集計した利用量とコストを示します。コスト割り当てとタグ付けの詳細については、About AWS Account Billing を参照してください。Amazon S3 バケットのタグ付けの詳細については、Amazon S3 開発者ガイドバケットのタグ付けに関するトピックをご覧ください。

Amazon CloudWatch を使用して、請求書の Amazon S3 料金のモニタリングに役立つS3 請求アラートを受信することができます。推定請求額が指定したしきい値に達した時に自動的に通知を受信するようにアラートを設定することができます。請求アラートの詳細については、請求アラートのページをご覧いただくか、Amazon CloudWatch 開発者ガイド推定料金のモニタリングのトピックをご覧ください。

イベント通知

Amazon S3 のイベント通知は、Amazon S3 でオブジェクトがアップロードまたは保存されたときのアクションに対する応答で送信できます。通知メッセージは Amazon SNS または Amazon SQS で送信でき、AWS Lambda に直接配信して AWS Lambda 機能を呼び出すこともできます。

Amazon S3 イベント通知を使用すると、Amazon S3 に保存されているオブジェクトの変更に応答して、ワークフローの実行、アラートの送出、その他のアクションの実行が行えます。Amazon S3 イベント通知を使用すれば、メディアファイルがアップロードされたときのコード変換、データファイルが利用可能になったときのデータ処理、Amazon S3 オブジェクトのその他のデータストアへの同期といったアクションの実行をトリガーできます。オブジェクト名のプレフィックスおよびサフィックスに基づいてイベント通知を設定することも可能です。例えば、「images/」で始まるオブジェクト名の時に通知を受け取るよう選択できます。Amazon S3 オブジェクトのセカンダリインデックスの同期維持に使用する場合もあります。

Amazon S3 イベント通知はバケットレベルでセットアップされ、Amazon S3 コンソール、REST API、または AWS SDK を使用して設定できます。

詳細については、Amazon S3 開発者ガイドAmazon S3 イベントの通知の設定トピックを参照してください。

大容量データの転送

Amazon では、データをクラウドに高速に移行することを可能にする一連のデータ移行ツールを提供しています。これらには、既存のネットワークを最適化または置換するツールや既存のワークフローを S3 に統合するツールが含まれています。

S3 Transfer Acceleration

Amazon S3 Transfer Acceleration は、Amazon S3 バケットの長距離の転送速度を最大化するように設計されています。これは、お客様のクライアントに最も近い Amazon エッジロケーションと Amazon S3 バケット間で実行される高度に最適化されたネットワークブリッジを介して、HTTP トラフィックおよび HTTPS トラフィックを伝送することによって機能します。管理する必要のあるゲートウェイサーバー、開く必要のあるファイアウォール、統合する必要のある特定のポートまたはクライアント、あるいは、支払う必要のある前払い料金は一切ありません。アプリケーションがデータ転送に使用する Amazon S3 エンドポイントを変更するのみで、アクセラレーションが自動的に適用されます。S3 Transfer Acceleration は次の場合に使用します。

  • 国や大陸を超えるなどバケットから離れている場所にあるクライアントからのアップロードを迅速化する必要がある場合。
  • クライアントが独自のデータセンター外にあり、Amazon S3 に到達するためにパブリックインターネットに依存している場合。独自のデータセンター内のクライアントについては、AWS Direct Connect を検討してください。

S3 Transfer Acceleration の詳細については、こちらをご覧ください。

AWS Snowball、Snowball Edge、Snowmobile

ペタバイトからエクサバイト規模に至るまで、AWS のデータ移行サービスでは、安全性の高いデバイスを使用して大容量データを Amazon S3 内外に転送します。AWS Snowball、Snowball Edge、Snowmobile では、高額なネットワーク費用、時間のかかる転送時間、セキュリティ上の懸念など、大規模なデータ転送に伴う一般的な課題に対処しています。データを簡単、迅速、安全に転送でき、コストは高速インターネットの 5 分の 1 ほどで済みます。

AWS Snow Family の詳細情報を確認 »

AWS Storage Gateway

AWS Storage Gateway を使用して、既存のオンプレミスのデータやストレージシステムを簡単に Amazon S3 と連携させて、ハイブリッドクラウドストレージにすることができます。つまり、既存のシステム、ソフトウェア、プロセス、データを最小限の中断で、バックアップ、移行、階層化、バーストのためのクラウドに効率化することができます。

AWS Storage Gateway の詳細情報を確認 »

サードパーティのパートナーとの統合

データの転送と取り出しの簡素化のために、多数の ISV パートナーが Amazon S3 と統合されています。認定 AWS パートナーソリューションのリストについては、AWS ストレージパートナーソリューションのページを参照してください。

想定される使用目的と制約

このサービスのご利用には、アマゾン ウェブ サービスカスタマーアグリーメントが適用されます。

Amazon S3 の料金の詳細

料金ページを見る
構築を始めましょう。
Amazon S3 の使用を開始する
ご不明な点がおありですか?
お問い合わせ