Lightsail バケットとオブジェクトへのパブリックアクセスを制限する - Amazon Lightsail

翻訳は機械翻訳により提供されています。提供された翻訳内容と英語版の間で齟齬、不一致または矛盾がある場合、英語版が優先します。

Lightsail バケットとオブジェクトへのパブリックアクセスを制限する

Amazon Simple Storage Service (Amazon S3) は、お客様がデータを保存して保護することができるオブジェクトストレージサービスです。Amazon Lightsail オブジェクトストレージサービスは、Amazon S3 テクノロジーに基づいて構築されています。Amazon S3 はアカウントレベルのブロックパブリックアクセスを提供しており、これを使用して AWS アカウント内のすべての S3 バケットへのパブリックアクセスを制限できます。アカウントレベルのブロックパブリックアクセスは、既存の個々のバケットとオブジェクトのアクセス許可に関係なく、 内のすべての S3 バケットを AWS アカウント プライベートにすることができます。

パブリックアクセスを許可または拒否する場合、Lightsail オブジェクトストレージバケットは以下を考慮します。

  • Lightsail バケットのアクセス許可。詳細については、「バケットのアクセス許可」を参照してください。

  • Amazon S3 アカウントレベルのブロックパブリックアクセス設定。Lightsail バケットのアクセス許可を上書きします。

アカウントレベルの Amazon S3 ですべてのパブリックアクセスをブロックをオンにすると、パブリック Lightsail バケットとオブジェクトはプライベートになり、パブリックアクセスできなくなります。 Amazon S3

アカウントのブロックパブリックアクセス設定の構成

Amazon S3 コンソール、 AWS Command Line Interface (AWS CLI)、 AWS SDKs、および REST API を使用して、ブロックパブリックアクセス設定を設定できます。次の例に示すように、Amazon S3 コンソールのナビゲーションペインでアカウントレベルのパブリックアクセスのブロック機能にアクセスできます。

Amazon S3 コンソールのパブリックアクセスのブロックのナビゲーションペインのオプション

Amazon S3 コンソールには、すべてのパブリックアクセスのブロック、新しいまたは任意のアクセスコントロールリストを通じて付与されたパブリックアクセスのブロック、新しいまたは任意のパブリックバケットまたはアクセスポイントポリシーを通じて付与されたバケットおよびオブジェクトへのパブリックアクセスのブロックの設定があります。

Amazon S3 コンソールのパブリックアクセスのブロックのオプション

Amazon S3 コンソールで各設定を [オン] または [オフ] にできます。API では、対応する設定は TRUE (オン) または FALSE (オフ) です。以下のセクションでは、S3 バケットと Lightsail バケットに対する各設定の効果について説明します。

注記

次のセクションでは、アクセスコントロールリスト (ACL) について説明します。ACL は、バケットまたは個々のオブジェクトを所有している、またはそれらにアクセスできるユーザーを定義します。詳細については、「Amazon S3 ユーザーガイド」の「アクセスコントロールリストの概要」を参照してください。

  • すべてのパブリックアクセスをブロックする — この設定をオンにすると、S3 バケット、Lightsail バケット、および対応するオブジェクトへのすべてのパブリックアクセスがブロックされます。この設定には、次の設定がすべて組み込まれています。この設定をオンにすると、あなた (バケット所有者) と許可されたユーザーのみが、バケットとそのオブジェクトにアクセスできます。この設定は、Amazon S3 コンソールでのみオンにできます。 AWS CLI、Amazon S3 API、または AWS SDKsでは使用できません。

    • 新しいアクセスコントロールリスト (ACL) を通じて付与されたバケットおよびオブジェクトへのパブリックアクセスをブロック — この設定をオンにすると、バケットおよびオブジェクトに対するパブリック ACL の配置がブロックされます。この設定は、既存の ACL には影響しません。したがって、既にパブリック ACL を持つオブジェクトはパブリックのままとなります。この設定は、バケットアクセス許可が [All objects are public and read-only] (すべてのオブジェクトがパブリックかつ読み取り専用) に設定されているため、パブリックであるオブジェクトに影響を与えることもありません。この設定は、Amazon S3 API で BlockPublicAcls としてラベル付けされています。

      注記

      WordPress オフロード Media Light プラグインなどの Lightsail バケットにメディアを配置する プラグインは、この設定がオンになっていると動作を停止することがあります。これは、ほとんどの WordPress プラグインが オブジェクトにパブリック読み取り ACL を設定するためです。オブジェクト ACL を切り替える WordPress プラグインも機能しなくなる可能性があるためです。 ACLs

    • すべてのアクセスコントロールリスト (ACL) を通じて付与されたバケットおよびオブジェクトへのパブリックアクセスをブロック — この設定をオンにすると、パブリック ACL が無視され、バケットおよびオブジェクトへのパブリックアクセスがブロックされます。この設定では、パブリック ACL をバケットとオブジェクトに配置できますが、アクセス権を付与するときは無視されます。Lightsail バケットの場合、バケットのアクセス許可をすべてのオブジェクトに設定することはパブリックで読み取り専用であるか、個々のオブジェクトのアクセス許可をパブリック (読み取り専用) に設定することは、パブリック ACL をどちらかに配置するのと同じです。この設定は、Amazon S3 API で IgnorePublicAcls としてラベル付けされています。

    • 新しいパブリックバケットまたはアクセスポイントポリシーを通じて付与されたバケットとオブジェクトへのパブリックアクセスをブロックする — この設定をオンにすると、すべてのオブジェクトがパブリックで読み取り専用のバケットアクセス許可が Lightsail バケットに設定されないようにします。この設定は、[All objects are public and read-only] (すべてのオブジェクトがパブリックかつ読み取り専用) のバケットアクセス許可で既に設定されているバケットには影響しません。この設定は、Amazon S3 API で BlockPublicPolicy としてラベル付けされています。

    • パブリックバケットまたはアクセスポイントポリシーを介してバケットとオブジェクトへのパブリックアクセスとクロスアカウントアクセスをブロックする — この設定をオンにすると、すべての Lightsail バケットがプライベートになります。これにより、すべての Lightsail バケットがパブリックで読み取り専用のバケットアクセス許可で設定されていても、すべての Lightsail バケットがプライベートになります。この設定は、Amazon S3 API で RestrictPublicBuckets としてラベル付けされています。

      重要

      この設定では、Lightsail バケットに設定されたクロスアカウントアクセスもブロックされます。このアクセスは、Lightsail のすべてのオブジェクトがパブリックで読み取り専用のバケットアクセス許可で設定されています。クロスアカウントアクセスを許可し続けるには、Amazon S3 のパブリックバケットまたはアクセスポイントポリシー設定を介してバケットとオブジェクトへのパブリックアクセスとクロスアカウントアクセスのブロックを有効にする前に、必ず Lightsail バケットに「すべてのオブジェクトは Lightsail のプライベートバケットアクセス許可です」で設定してください。

ブロックパブリックアクセスとその設定方法の詳細については、「Amazon S3 ユーザーガイド」で以下のリソースを参照してください。

Lightsail コンソール、 AWS CLI、 AWS SDKs、および REST API を使用して、Lightsail バケットのアクセス許可を設定します。詳細については、「バケットのアクセス許可」を参照してください。 

注記

Lightsail は、サービスにリンクされたロールを使用して、現在のアカウントレベルのブロックパブリックアクセス設定を Amazon S3 から取得し、Lightsail オブジェクトストレージリソースに適用します。Amazon S3 でパブリックアクセスのブロックを設定したら、Lightsail で有効になるまで少なくとも 1 時間待ちます。詳細については、「サービスにリンクされたロール」を参照してください。

バケットとオブジェクトを管理する

Lightsail オブジェクトストレージバケットを管理する一般的な手順は次のとおりです。

  1. Amazon Lightsail オブジェクトストレージサービスのオブジェクトとバケットについて説明します。詳細については、Amazon Lightsail のオブジェクトストレージ を参照してください。

  2. Amazon Lightsail でバケットに付けることができる名前について説明します。詳細については、Amazon Lightsail のバケット命名規則」を参照してください。

  3. バケットを作成して、Lightsail オブジェクトストレージサービスの使用を開始します。詳細については、Amazon Lightsail」を参照してください。

  4. バケットのセキュリティのベストプラクティスと、バケットに設定できるアクセス許可について説明します。バケット内のすべてのオブジェクトをパブリックまたはプライベートにすることも、オブジェクトを個別に選択してパブリックにすることもできます。また、アクセスキーを作成し、インスタンスをバケットに追加し、他の AWS アカウントにアクセス権を付与することで、バケットへのアクセスを許可することもできます。詳細については、Amazon Lightsail オブジェクトストレージのセキュリティのベストプラクティス」およびAmazon Lightsail」を参照してください。

    バケットのアクセス許可について理解したら、以下のガイドを参照してバケットへのアクセスを許可してください。

  5. バケットのアクセスログの記録を有効にする方法と、アクセスログを使用してバケットのセキュリティを監査する方法について説明します。詳細については、以下のガイドを参照してください。

  6. Lightsail でバケットを管理する権限をユーザーに付与する IAM ポリシーを作成します。詳細については、Amazon Lightsail」を参照してください。

  7. バケット内のオブジェクトにラベルを付けて識別する方法について説明します。詳細については、Amazon Lightsail でのオブジェクトキー名について」を参照してください。

  8. ファイルをアップロードしてバケット内のオブジェクトを管理する方法について説明します。詳細については、以下のガイドを参照してください。

  9. オブジェクトのバージョニングを有効にすると、バケットに保存されたあらゆるオブジェクトのあらゆるバージョンを保存、取得、復元します。詳細については、Amazon Lightsail」を参照してください。

  10. オブジェクトのバージョニングを有効にすると、バケット内のオブジェクトの以前のバージョンを復元できます。詳細については、Amazon Lightsail」を参照してください。

  11. バケットの使用率を監視します。詳細については、Amazon Lightsail」を参照してください。

  12. バケットの使用率がしきい値を超えたときにバケットメトリクスが通知されるよう、アラームを設定します。詳細については、Amazon Lightsail でのバケットメトリクスアラームの作成」を参照してください。

  13. ストレージとネットワーク転送量が不足している場合は、バケットのストレージプランを変更します。詳細については、Amazon Lightsail」を参照してください。

  14. バケットを他のリソースに接続する方法について説明します。詳細については、以下のチュートリアルを参照してください。

  15. 使用しなくなったバケットを削除します。詳細については、Amazon Lightsail」を参照してください。