Amazon Web Services ブログ

新機能 — Amazon S3 に保存されているデータのアクセス管理を簡素化

2021 年 11 月 30 日(米国時間)、Amazon Simple Storage Service (Amazon S3) に保存されているデータのアクセス管理を簡素化する新機能をいくつか発表しました。まず、Amazon S3 に保存されているデータのアクセス管理を簡素化するために、アクセスコントロールリスト (ACL) を無効にできる、新しい Amazon S3 Object Ownership の設定を導入します。次に、S3 ポリシーを作成するときに、Amazon S3 コンソールポリシーエディタが IAM Access Analyzer によって強化されたセキュリティ警告、エラー、および提案を報告するようになりました。

15 年前にリリースして以来、Amazon S3 バケットはデフォルトでプライベートになっています。最初は、ACL を使用することがオブジェクトへのアクセスを許可する唯一の方法でした。2011 年に AWS Identity and Access Management (IAM)発表されました。これにより、ポリシーを使用して Amazon S3 のバケットとオブジェクトへのアクセス許可を定義し、コントロールできるようになりました。現在は、IAM ポリシーS3 バケットポリシーS3 Access Points ポリシーS3 Block Public AccessACL など、Amazon S3 のデータへのアクセスを制御するいくつかの方法があります。

ACL は、各バケットとオブジェクトに ACL が添付されているアクセスコントロールメカニズムです。ACL は、アクセスを許可する AWS アカウントまたはグループとアクセスのタイプを定義します。オブジェクトが作成されると、そのオブジェクトの所有権は作成者に帰属します。 この所有権情報はオブジェクト ACL に埋め込まれています。別の AWS アカウントが所有するバケットにオブジェクトをアップロードし、バケット所有者がそのオブジェクトにアクセスできるよう許可する場合は、ACL でアクセス許可を付与する必要があります。多くの場合、ACL とその他の種類のポリシーは同じバケット内で使用されます。

新しい Amazon S3 オブジェクト所有権設定である [Bucket owner enforced] (バケット所有者確認) では、バケットとその中のオブジェクトに関連付けられているすべての ACL を無効にすることができます。このバケットレベルの設定を適用すると、バケット内のすべてのオブジェクトがバケットを作成した AWS アカウントによって所有されるようになり、ACL はアクセスを許可するために使用されなくなります。適用されると、所有権は自動的に変更され、バケットにデータを書き込むアプリケーションは ACL を指定する必要がなくなります。その結果、データへのアクセスはポリシーに基づいています。これにより、Amazon S3 に保存されているデータのアクセス管理が簡素化されます。

今回のリリースでは、Amazon S3 コンソールで新しいバケットを作成するときに、ACL を有効にするか無効にするかを選択できます。Amazon S3 コンソールでは、バケットを作成するときに ACL がデフォルトで無効になっています。ACL を有効にしておきたい場合は、オブジェクト所有権のその他の設定、具体的には、以下の設定を選択できます。

  • [Bucket owner preferred:] (バケット所有者優先) バケット所有者フルコントロールの既定 ACL を使用して、このバケットに書き込まれた新しいオブジェクトはすべて、バケット所有者が所有します。ACL は引き続きアクセスコントロールに使用されます。
  • [Object writer:] (オブジェクトライター) オブジェクトライターはオブジェクト所有者のままです。ACL は引き続きアクセスコントロールに使用されます。

オブジェクト所有権のオプション

既存のバケットの場合、[Permissions] (許可) タブでこの設定を表示および管理できます。

既存のバケットで [Bucket owner enforced] (バケット所有者確認) の [Object Ownership] 設定を有効にする前に、他の AWS アカウントに付与されたアクセス権限を、バケット ACL からバケットポリシーに移行する必要があります。アクセス権限を移行しないと、設定を有効にするときにエラーが発生します。これにより、バケットにデータを書き込むアプリケーションが中断されないようにすることができます。アクセスを移行した後は、必ずアプリケーションをテストしてください。

Amazon S3 コンソールでのポリシー検証
また、Amazon S3 用リソースベースのポリシーを作成する際に役立つように、Amazon S3 コンソールにポリシー検証を導入しています。これにより、IAM Access Analyzer を利用した 100 件を超える実用的なポリシーチェックにより、Amazon S3 バケットとアクセスポイントのアクセスコントロールポリシー作成が簡素化されます。

Amazon S3 コンソールでポリシー検証にアクセスするには、まずバケットの詳細ページに移動します。次に、[Permissions] (許可) タブに移動して、バケットポリシーを編集します。

S3コンソールでの IAM ポリシー検証へのアクセスポリシーの作成を開始して入力すると、画面の下部にさまざまな検索結果が表示されることがわかります。IAM Access Analyzer のポリシーチェックは、ポリシーを検証し、セキュリティ警告、エラー、および提案を、その影響に基づいた結果として報告し、ポリシーの安全性を高めるように設計されています。

IAM Access Analyzer の ValidatePolicy API を使用して、これらのチェックと検証を実行することもできます。

ポリシー提案の例

利用可能なリージョン
Amazon S3 Object Ownership は、AWS 中国リージョンと AWS GovCloud リージョンを除くすべての AWS リージョンで利用できます。追加費用は発生しません。Amazon S3 コンソールでの IAM Access Analyzer ポリシーの検証は、AWS 中国リージョンや AWS GovCloud リージョンを含むすべての AWS リージョンで利用できます。追加費用は発生しません。

Amazon S3 コンソールAWS コマンドラインインターフェイス (CLI)Amazon S3 REST APIAWS SDK、または AWS CloudFormation を使用して、Amazon S3 Object Ownership を開始します。この機能の詳細については、ドキュメントページを参照してください。

また、Amazon S3 コンソールでのポリシー検証の詳細と開始については、Access Analyzer ポリシー検証ドキュメントを参照してください。

Marcia

原文はこちらです。