我正在使用CDK的AwsCustomResource创建一个S3对象。我无法理解AwsCustomResource.policy。docs说:
策略(强制性):适用于资源的策略。
以及关于角色:
角色(可选):实现此自定义资源提供程序的Lambda函数的执行角色。
[设置角色时,我检查了自定义资源的lambda,然后看到它获得了角色的权限,就像文档中说的一样。
[我发现,当我设置策略时(仅用于测试的值),例如:
policy = AwsCustomResourcePolicy.from_statements(statements=[PolicyStatement(actions=["s3:ReplicateTags"], resources=["*"])])
然后,我也在lambda权限上获得此权限。这不是我阅读文档的方式,我希望该策略可用于为我创建的资源s3对象设置策略。但这意味着什么?我在一个预先存在的存储桶中创建了该对象,并在存储桶中使用了现有策略。s3对象有其政策吗?
s3对象有其政策吗?
不,他们没有。只有存储桶具有策略。
我希望该策略用于为我创建的资源(s3对象)设置一个策略。
这将很困难,因为许多资源没有基于资源的策略。例如S3对象。
AwsCustomResourcePolicy
”将策略添加到lambda函数的执行角色,而不是自定义资源创建的资源。请注意,自定义资源始终不需要创建任何资源。