バケットの制約と制限 - Amazon Simple Storage Service

バケットの制約と制限

各バケットは、それを作成した AWS アカウントによって所有されます。バケットの所有権は譲渡できません。

バケットの作成時にバケットの名前と作成先のリージョンを選択します。バケットの作成後はバケットの名前もリージョンも変更できません。

デフォルトでは、AWS アカウントにつき最大で 100 個のバケットを作成できます。追加のバケットが必要な場合は、サービスの制限の緩和を申請することによって、アカウントバケットの制限を最大 1,000 バケットまで引き上げることができます。使用するバケットの数が多いか少ないかにかかわらず、パフォーマンスに違いはありません。バケットの制限を引き上げる方法については、AWS 全般のリファレンスの「AWS サービスのクォータ」を参照してください。

バケット名の再利用

バケットが空の場合は削除できます。バケットが削除されると、その名前は再利用できるようになります。ただし、バケットを削除すると、さまざまな理由で名前を再利用できない場合があります。たとえば、バケットを削除してその名前が再利用可能になると、別のアカウントがその名前でバケットを作成する場合があります。また、削除したバケットの名前が再利用可能になるまでに、しばらく時間がかかる場合もあります。同じバケット名を使用する場合は、バケットを削除しないことをお勧めします。

オブジェクトとバケット

バケットに保存できるオブジェクト数に制限はありません。すべてのオブジェクトを 1 つのバケットに格納してもかまいませんし、複数のバケットに分けて整理してもかまいません。ただし、別のバケット内からバケットを作成することはできません。

バケットオペレーション

Amazon S3 の高可用性技術は、GET、PUT、LIST、および DELETE オペレーションに重点を置いています。バケットオペレーションは中央集中型のグローバルリソーススペースに対して作用するため、お使いのアプリケーションの高可用性コードパスでバケットの作成や削除を行うのは適切ではありません。バケットの作成や削除は、個別の初期化や、頻繁に実行しないセットアップルーチンで実行するほうが適しています。

バケットの命名規則と自動作成されたバケット

アプリケーションが自動的にバットを作成する場合は、命名の衝突が起きないようなバケット命名スキームを使用してください。特定のバケット名が既に使用されている場合は、異なるバケット名をアプリケーションロジックが選択するようにしてください。

バケット命名規則

S3 バケットの命名には、次のルールが適用されます。

  • バケット名は 3~63 文字の長さにする必要があります。

  • バケット名は、小文字、数字、ドット (.)、およびハイフン (-) のみで構成できます。

  • バケット名は、文字または数字で開始および終了する必要があります。

  • バケット名は IP アドレスの形式 (192.168.5.4 など) にはできません。

  • バケット名は xn-- で始まることはできません (2020 年 2 月以降に作成されたバケットの場合)。

  • バケット名は、パーティション内で一意にする必要があります。パーティションは、リージョンのグループです。AWS には、現在 aws (標準リージョン)、aws-cn (中国リージョン)、および aws-us-gov (AWS GovCloud [US] リージョン) の 3 つのパーティションがあります。

  • Amazon S3 Transfer Acceleration 用のバケットの名前では、ドット (.) を使用できません。Transfer Acceleration の詳細については、「Amazon S3 Transfer Acceleration」を参照してください。

互換性を最も高くするには、静的ウェブサイトホスティング専用のバケットを除き、バケット名にドット (.) を使用しないことをお勧めします。バケット名にドットを含めると、証明書の検証を独自に実行しない限り、HTTPS 経由の仮想ホスト形式のアドレス指定は使用できません。これは、バケット名にドットが含まれていると、バケットの仮想ホスティング用のセキュリティ証明書は機能しないためです。

静的ウェブサイトホスティングは HTTP 経由でのみ使用されるため、この制限は静的ウェブサイトホスティング用のバケットには影響しません。仮想ホスト形式のアドレス指定の詳細については、「バケットの仮想ホスティング」を参照してください。静的ウェブサイトホスティングの詳細については、「Amazon S3 での静的ウェブサイトのホスティング」を参照してください。

注記

2018 年 3 月 1 日までは、米国東部(バージニア北部) リージョンで作成したバケットの名前として最大 255 文字を使用し、大文字とアンダースコアを含めることができました。2018 年 3 月 1 日以降、米国東部(バージニア北部) の新しいバケットは、他のすべてのリージョンに適用されている同じルールに準拠する必要があります。

例 バケット名

次の例に示すバケット名は有効であり、命名の推奨ガイドラインに従っています。

  • docexamplebucket

  • log-delivery-march-2020

  • my-hosted-content

次の例に示すバケット名は有効ですが、静的ウェブサイトホスティング以外の用途には推奨されません。

  • docexamplewebsite.com

  • www.docexamplewebsite.com

  • my.example.s3.bucket

次の例に示すバケット名は無効です。

  • doc_example_bucket (アンダースコアが含まれている)

  • DocExampleBucket (大文字が含まれている)

  • doc-example-bucket- (ハイフンで終わっている)