DEVELOPER BLOG

開発者ブログ

HOME > 開発者ブログ > 【AWS入門】S3アクセスコントロールリスト(ACL)の基礎を整理する- PrismScaler

【AWS入門】S3アクセスコントロールリスト(ACL)の基礎を整理する- PrismScaler

1. はじめに

こんにちは!株式会社Definerの阪本です!
今回は、タイトルの通り「S3アクセスコントロールリスト(ACL)の基礎」についてご紹介したいと思います。

2. 目的・ユースケース

この記事では、S3アクセスコントロールリスト(ACL)の基礎を理解したいときに、参考になる情報やプラクティスをまとめています。

3. S3 アクセスコントロールリスト(ACL)とは

S3のアクセスコントロールリスト (ACL) とは、バケットおよびオブジェクトへのアクセスを管理できる機能です。
S3バケットおよびオブジェクトにはサブリソースとして ACL がアタッチされており、これによりアクセス元(AWS アカウントなど)と許可されるアクション(Read/Writeなど)が定義されています。
 
 
✅アクセス元について
アクセス元は、以下のような種類分けができます。
 
・AWSアカウント
説明不要、AWSアカウントごとのアクセスを管理できます。
 
・任意のユーザ / AWSアカウント
世界中どこから/どのAWSアカウントからでもアクセスを許可します。
この設定をする際は、十分に公開範囲などを注意してください。
 
・S3サーバアクセスログ
S3のアクセスログの書き込み元で、AWSが管理しています。
S3のサーバアクセスログを有効化する場合には、アクセスを許可する必要があります。
 
 
✅アクセス許可について
アクセス許可は以下の5種類です。
ACLをバケットに適用するか、またはオブジェクトに適用するかで権限の範囲が変わります。
 
・Read
バケットの場合は、バケット内のオブジェクトのリスト
オブジェクトの場合は、該当オブジェクトデータ
 
・Write
バケットの場合は、オブジェクトの新規作成・編集・削除
オブジェクトの場合は該当せず
 
・Read_ACP
バケットの場合は、バケットに適用されているACLの参照
オブジェクトの場合は、オブジェクトに適用されているACLの参照
 
・Write_ACP
バケットの場合は、バケットに適用されているACLの変更
オブジェクトの場合は、オブジェクトに適用されているACLの変更
 
・Full_Control
バケットの場合は、バケットに対する上記の全権限
オブジェクトの場合は、オブジェクトに対する上記の全権限

4. S3 アクセスコントロールリスト(ACL)の確認方法

それでは、実際にS3 アクセスコントロールリスト(ACL)の設定を確認してみます。
 
①AWSコンソールにログインし、S3の画面へアクセスします。
②ACLを確認するバケットをクリックし、「アクセス許可」タブに進みます。
③画面下部の「アクセスコントロールリスト(ACL)」まで、スクロールダウンします。
 
画面を確認すると、以下のことがわかりました。
・自身のAWSアカウントからは、バケットに対してもオブジェクトに対してもReadおよびWriteが可能
・アカウント外からのアクセスは、ReadもWriteもできない
・S3のサーバアクセスログも書き込まれない
 

5. 引用・参考記事

6. 独自ソリューション「PrismScaler」について

・ PrismScalerは、開発・運用を要さずにたった3ステップで、AWSやAzure、GCPなどのマルチクラウド基盤構築を実現するWebサービスです。
・ クラウド基盤にまつわる「自動構築」「自動監視」「問題検知」「構成可視化」などの効率化を実現し、クラウドエンジニア、SRE/DevOpsエンジニアが行う泥臭く大変な作業を肩代わりするソリューションです。
・ クラウド基盤構築/クラウド移行や、クラウドの保守運用・コスト最適化など幅広い利用シーンを想定しており、IaaSやPaaSを適切に組み合わせた数百を超える高品質な汎用クラウド基盤を容易に実現できます。
 

7. お問合せ

本記事では、入門編として有益な情報を無料公開しています。ご相談やお問い合わせは「株式会社Definer」へ。

8. Definerに関して。

・ Definer Incは、ITの上流から下流まで一気通貫のワンストップソリューションをご提供しております。
・ AIやクラウドのITインフラなど、先進的なIT技術のコンサルティングから要件定義 / 設計開発 / 実装、保守運用に至るまでの統合的な支援にコミットしています。
・ DevOpsとCI/CDコンサルティングにより「少ないエンジニアで事業が成長する仕組みづくり」「エンジニアが喜ぶ、採用しやすい環境づくり」「高速なアジャイル開発環境」を実現しています。
・ また、自社プロダクトとしてPrismScalerを展開しております。PrismScalerは、AWS、Azure、GCPなどのマルチクラウド / ITインフラの高品質かつ迅速な、「自動構築」「自動監視」「問題検知」「構成可視化」を実現します。