aws-cloudformation - 我需要帮助了解 cdk 中的 AwsCustomResource.policy 是什么?

标签 aws-cloudformation aws-cdk aws-cloudformation-custom-resource

我正在使用 CDK 的 AwsCustomResource 创建 S3 对象。 我无法理解 AwsCustomResource.policy。 docs说:

policy (mandatory): The policy to apply to the resource.

关于角色:

role (optional): The execution role for the Lambda function implementing this custom resource provider.

当我设置角色时,我检查自定义资源的 lambda,然后我看到它从角色获得了权限,就像文档所说的那样。

我发现当我设置策略(仅用于测试的值)时,例如像这样:

policy = AwsCustomResourcePolicy.from_statements(statements=[PolicyStatement(actions=["s3:ReplicateTags"], resources=["*"])])

然后我也得到了 lambda 权限。 这不是我阅读文档的方式,我希望该策略用于为我创建的资源(s3 对象)设置策略。但这意味着什么呢?我在预先存在的存储桶中创建了该对象,并在该存储桶上使用了现有策略。 s3 对象有自己的策略吗?

最佳答案

do s3 objects have their policy?

不,他们没有。只有存储桶才有策略。

I expected the policy to be used to set a policy to the resource I created, the s3 object.

这会很困难,因为许多资源没有基于资源的策略。例如S3对象。

AwsCustomResourcePolicy 将策略添加到 lambda 函数的执行角色,而不是自定义资源创建的资源。请注意,自定义资源无论如何都不需要创建任何资源。

关于aws-cloudformation - 我需要帮助了解 cdk 中的 AwsCustomResource.policy 是什么?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/61941616/

相关文章:

amazon-web-services - 如果存储桶存在,如何强制 CloudFormation 创建一个具有相似名称的新存储桶?

amazon-web-services - 包含 Spot 实例的 CloudFormation LaunchTemplate AutoScaling 组

amazon-web-services - 从 apigateway 迁移到 apigatewayv2

amazon-web-services - AWS Codepipeline - 一次在多个环境上部署

amazon-web-services - 如何在 2 个不同的 cloudformation 模板中创建 S3 和触发的 lambda

aws-cloudformation - CDK中的CfnTableProps和TableProps有什么区别?

python - AWS CDK S3 存储桶创建错误 - 存储桶名称已存在

javascript - 如何使用 AWS CDK 查找现有的 ApiGateway

aws-lambda - AWS cloudformation自定义资源为另一个lambda生成配置文件

amazon-web-services - 在 AWS 资源的往返工程中使用 CloudFormer