首页 > 解决方案 > 如何在 AWS CDK 的 CfnBucketPolicy 中提供 policyDocument

问题描述

如何在 AWS CDK 的 CfnBucketPolicy 中提供自定义策略。非常感谢您的帮助。

  constructor(scope: cdk.Construct, id: string, props?: cdk.StackProps) {
    super(scope, id, props);

    //creating s3 bucket
    const bucket = new s3.Bucket(this, 'MyFirstBucket', {
      versioned: true,
      removalPolicy: cdk.RemovalPolicy.DESTROY,
      encryption: s3.BucketEncryption.KMS
    });

    //creating Policy Document for s3 bucket
    const bucketPolicy = new s3.CfnBucketPolicy(this,'MyFirstPolicy', {
      bucket: bucket.bucketName,
      policyDocument:
    });
  }
}

标签: typescriptamazon-s3aws-cdk

解决方案


您必须通过@aws-cdk/aws-iam.PolicyDocument该类创建一个 PolicyDocument 实例,然后在您的存储桶策略中分配它。

https://docs.aws.amazon.com/cdk/api/latest/docs/@aws-cdk_aws-iam.PolicyDocument.html

这将要求您将任何策略语句添加为PolicyStatement实例,并且可以在对象创建期间或通过addStatements方法添加。


推荐阅读