0
0

Concrete CMS 用 S3 バケット IAM Policy サンプル

Last updated at Posted at 2023-02-16

Concrete CMS でファイルマネージャーの中のファイルを、EC2 の EBS や EFS の中では無く、安価な S3 の中に格納できるという、S3 Storage というアドオンがあります。

EBS には Concrete CMS のコードなど最小限のファイルを設置し、ファイルマネージャーは、無制限な S3 を使う方法です。

サーバーを冗長化させる時も有効です。(別途 CloudFront で別(サブ)ドメインでアクセスできるようにする必要あり。)

注意事項

2024/2/1 時点の情報

  • EC2 の IAM Role は速度が激遅になるので、IAM User の Access Key & Secret での接続をお願いします。
  • PutObjectAcl があるのは昔の名残で、必要。いつかは改修予定。
    • ACL のバケットオーナーの、 リスト・書き込みを共にオン に設定をお願いします。
    • ブロックパブリックアクセスは オフ に設定してください。 (前述の ACL が無効化されるため。)

IAM Policy サンプル

そのアドオンを使って S3 にあげる際の IAM ポリシーサンプルです。以下のポリシーを IAM User にアタッチしてあげてください。

{
    "Version": "2012-10-17",
    "Statement": [
        {
            "Sid": "ListObjectsInBucket",
            "Effect": "Allow",
            "Action": [
                "s3:ListBucket"
            ],
            "Resource": [
                "arn:aws:s3:::【S3バケット名】"
            ]
        },
        {
            "Sid": "AllObjectActions",
            "Effect": "Allow",
            "Action": [
                "s3:*Object",
                "s3:PutObjectAcl",
                "s3:GetBucketLocation"
            ],
            "Resource": [
                "arn:aws:s3:::【S3バケット名】/*"
            ]
        }
    ]
}

【S3バケット名】 をS3バケット名に置き換えてください。

最初のグループは、S3 バケットの ARN だけですが、2つ目のグループには、S3 バケットの ARN の次に /* (スラッシュとアスタリスク)をつける必要があります。

0
0
0

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
0
0