pulumi 云中的细粒度 ACL

fine grained ACLs in pulumi cloud

Pulumi 创建的 lambda 函数似乎默认具有 AWSLambdaFullAccess 权限。这种类型的访问范围太广,我想用细粒度的 ACL 替换它。

例如,假设我在我的 index.js 文件中创建一个 cloud.Table,我想指定我正在创建的 lambda 端点(在同一文件中)仅具有读取权限具体 table.

有没有不用自己编写 IAM 策略的方法?

@pulumi/cloud 库目前在 AWS 上使用一组统一的 IAM 策略运行所有计算(lambda 和容器化服务)。

您可以设置要使用的策略 运行:

pulumi config set cloud-aws:computeIAMRolePolicyARNs "arn:aws:iam::aws:policy/AWSLambdaFullAccess,arn:aws:iam::aws:policy/AmazonEC2ContainerServiceFullAccess"

以上为默认值。参见 https://github.com/pulumi/pulumi-cloud/blob/master/aws/config/index.ts#L52-L56

有计划直接从 @pulumi/cloud 中使用的资源支持对权限和计算权限的更细粒度控制 - 参见例如https://github.com/pulumi/pulumi-cloud/issues/145 and https://github.com/pulumi/pulumi-cloud/issues/168.

较低级别的库(如 @pulumi/aws@pulumi/aws-serverless)提供对应用于 Function 对象的角色 and/or 策略的完全控制。