如果火山引擎提供的系统预设策略不满足您的需求,您可通过创建自定义策略,遵循最小授权原则,进行更精细化的权限管控,以提升IAM身份对主账号下资源的安全访问。本文为您介绍日常场景中常见的私网连接相关的自定义策略示例,供您参考。
自定义策略语法中策略元素配置的详细介绍,请参见IAM策略语法。
如果仅允许子用户查看和更新私网连接资源,可以参考以下示例为子用户授权自定义策略:
{ "Statement": [ { "Effect": "Allow", "Action": [ "privatelink:Describe*", "privatelink:Modify*" ], "Resource": [ "trn:privatelink:*:210005****:*/*" ] } ] }
拒绝策略需要配合其他策略一起使用才能生效。用户被授权的策略中同时包含Allow和Deny配置时,Deny配置优先。
如果您希望子用户可以进行除删除私网连接资源外的所有操作时,可以为子用户授权系统预设策略PrivateLinkFullAccess和以下自定义策略:
{ "Statement": [ { "Effect": "Deny", "Action": [ "privatelink:Delete*" ], "Resource": [ "trn:privatelink:*:210005****:*/*" ] } ] }
如果需要指定可访问网关终端节点的用户以及该用户能够访问的存储桶对象,可以参考以下示例为网关终端节点配置访问策略:
{ "Statement" : [ { "Effect": "Allow", "Principal": [ "trn:iam::210005****:user/test", # 指定允许主账号210005****下的用户test访问相应的存储桶 "trn:iam::210006****:root" # 指定允许主账号210006****下的所有用户访问相应的存储桶 ], "Action":[ "tos:ListBucket", "tos:GetObject", "tos:PutObject" ], "Resource":[ "trn:tos:::bucket/*", "trn:tos:::bucket" ], "Condition": { "StringEquals": { "tos:sourcevpc": [ "vpc-pedgr4xdnklc4acvz69o****" ] } } } ] }
参考以下配置为子用户授权标签功能的使用权限。
{ "Statement":[ { "Effect":"Allow", "Action":[ "privatelink:TagResources", "privatelink:UntagResources", "privatelink:ListTagsForResources" ], "Resource":[ "*" ] } ] }
通用自定义策略示例:文档中提供了多种常见的自定义策略语法示例供您参考。
私网连接资源TRN格式如下表所示:
产品 | 产品Service代码 | 资源类型 | 资源类型代码 | trn格式 |
---|---|---|---|---|
私网连接 | privatelink | 终端节点服务 | endpointservice | trn:privatelink:{region}:{account}:endpointservice/{endpointserviceid} |
接口终端节点 | endpoint | trn:privatelink:{region}:{account}:endpoint/{endpointid} | ||
网关终端节点 | gwendpoint | trn:privatelink:{region}:{account}:gwendpoint/{gwendpointid} | ||
私网连接网关 | privatelinkgateway | trn:privatelink:{region}:{account}:privatelinkgateway/{privatelinkgatewayid} |