S3関連の対応を以下に示す。
AWSTemplateFormatVersion: 2010-09-09 Parameters: PrmExampleAccessLogBucket: Type: String Resources: ResExampleBucket: Type: "AWS::S3::Bucket" Properties: BucketName: !Sub "res-example-bucket" VersioningConfiguration: Status: Enabled BucketEncryption: ServerSideEncryptionConfiguration: - ServerSideEncryptionByDefault: SSEAlgorithm: AES256 PublicAccessBlockConfiguration: IgnorePublicAcls: true BlockPublicPolicy: true BlockPublicAcls: true RestrictPublicBuckets: true AccessControl: LogDeliveryWrite LoggingConfiguration: DestinationBucketName: !Ref PrmExampleAccessLogBucket LogFilePrefix: !Sub "ExamplePrefix/" ResExampleBucketPolicy: Type: 'AWS::S3::BucketPolicy' Properties: Bucket: !Ref ResExampleBucket PolicyDocument: Version: 2012-10-17 Statement: - Sid: AllowSSLRequestsOnly Action: 's3:*' Effect: Deny Resource: - !Sub 'arn:aws:s3:::${ResExampleBucket}' - !Sub 'arn:aws:s3:::${ResExampleBucket}/*' Condition: Bool: 'aws:SecureTransport': false Principal: '*'
[CIS 2.3] CloudTrail ログが記録する S3 バケットがパブリックにアクセスできないことを確認します
[PCI.S3.1] S3 バケットはパブリック書き込みアクセスを禁止する必要があります
[PCI.S3.2] S3 バケットではパブリック読み取りアクセスを禁止する必要があります
[PCI.S3.6] S3 ブロックパブリックアクセス設定を有効にする必要があります
[S3.1] S3 ブロックパブリックアクセス設定を有効にする必要があります
[S3.2] S3 バケットではパブリック読み取りアクセスを禁止する必要があります
[S3.3] S3 バケットはパブリック書き込みアクセスを禁止する必要があります
[S3.8] S3 ブロックパブリックアクセス設定は、バケットレベルで有効にする必要があります
PublicAccessBlockConfiguration: IgnorePublicAcls: true BlockPublicPolicy: true BlockPublicAcls: true RestrictPublicBuckets: true
[PCI.S3.4] S3 バケットでは、サーバー側の暗号化を有効にする必要があります
[S3.4] S3 バケットでは、サーバー側の暗号化を有効にする必要があります
BucketEncryption: ServerSideEncryptionConfiguration: - ServerSideEncryptionByDefault: SSEAlgorithm: AES256
[PCI.S3.5] S3 バケットは、Secure Socket Layer を使用するリクエストを要求する必要があります
[S3.5] S3 バケットは、Secure Socket Layer を使用するためのリクエストが必要です
PolicyDocument: Version: 2012-10-17 Statement: - Sid: AllowSSLRequestsOnly Action: 's3:*' Effect: Deny Resource: - !Sub 'arn:aws:s3:::${ResExampleBucket}' - !Sub 'arn:aws:s3:::${ResExampleBucket}/*' Condition: Bool: 'aws:SecureTransport': false Principal: '*'
AccessControl: LogDeliveryWrite LoggingConfiguration: DestinationBucketName: !Ref ResExampleAccessLogBucket LogFilePrefix: !Sub "ExamplePrefix/"
[PCI.S3.3] S3 バケットでクロスリージョンレプリケーションを有効にする必要があります
[S3.6] 他のユーザーに付与された Amazon S3 のアクセス許可AWSバケットポリシーのアカウントは制限する必要があります