基于策略授权的服务授权项
云服务在IAM预置了常用授权项,称为系统策略。如果IAM系统策略无法满足授权要求,管理员可以根据各服务支持的授权项,创建IAM自定义策略来进行精细的访问控制,IAM自定义策略是对系统策略的扩展和补充。
除IAM服务外,Organizations服务中的服务控制策略(Service Control Policies,以下简称SCP)也可以使用这些授权项元素设置访问控制策略。
SCP不直接进行授权,只划定权限边界。将SCP绑定到组织单元或者成员账号时,并没有直接对组织单元或成员账号授予操作权限,而是规定了成员账号或组织单元包含的成员账号的授权范围。IAM策略授予权限的有效性受SCP限制,只有在SCP允许范围内的权限才能生效。
本章节介绍IAM服务基于策略授权场景中自定义策略和组织服务中SCP使用的元素,这些元素包含了操作(Action)、资源(Resource)和条件(Condition)。
操作(Action)
操作(Action)即为策略中支持的操作项。
- “访问级别”列描述如何对操作进行分类(list、read和write等)。此分类可帮助您了解在策略中相应操作对应的访问级别。
- “资源类型”列指每个操作是否支持资源级权限。
- 资源类型支持通配符号*表示所有。如果此列没有值(-),则必须在策略语句的Resource元素中指定所有资源类型(“*”)。
- 如果该列包含资源类型,则必须在具有该操作的语句中指定该资源的URN。
- 资源类型列中必需资源在表中用星号(*)标识,表示使用此操作必须指定该资源类型。
关于LakeFormation定义的资源类型的详细信息请参见资源类型(Resource)。
- “条件键”列包括了可以在策略语句的Condition元素中支持指定的键值。
- 如果该操作项资源类型列存在值,则表示条件键仅对列举的资源类型生效。
- 如果该操作项资源类型列没有值(-),则表示条件键对整个操作项生效。
- 如果此列没有值(-),表示此操作不支持指定条件键。
关于LakeFormation定义的条件键的详细信息请参见条件(Condition)。
- LakeFormation支持的操作项、API与操作项的关系请参见以下详细介绍:
- LakeFormation支持企业项目授权的API:
- GET /v1/{project_id}/instances
- API请求中包含“instance_id”的API,例如:GET /v1/{project_id}/instances/{instance_id}
LakeFormation Console API
您可以在自定义策略语句的Action元素中指定LakeFormation Console API相关操作。详细操作如表1所示。
操作项 |
描述 |
访问级别 |
资源类型(*为必须) |
条件键 |
---|---|---|---|---|
lakeformation:job:create |
创建LakeFormation任务的权限。 |
write |
- |
- |
lakeformation:job:describe |
查询LakeFormation任务的权限。 |
read |
- |
- |
lakeformation:job:drop |
删除LakeFormation任务的权限。 |
write |
- |
- |
lakeformation:job:alter |
修改LakeFormation任务的权限。 |
write |
- |
- |
lakeformation:job:exec |
执行LakeFormation任务的权限。 |
write |
- |
- |
lakeformation:instanceJob:create |
创建LakeFormation任务的权限。 |
write |
- |
- |
lakeformation:instanceJob:describe |
查询LakeFormation任务的权限。 |
read |
- |
- |
lakeformation:instanceJob:drop |
删除LakeFormation任务的权限。 |
write |
- |
- |
lakeformation:instanceJob:alter |
修改LakeFormation任务的权限。 |
write |
- |
- |
lakeformation:instanceJob:exec |
执行LakeFormation任务的权限。 |
write |
- |
- |
lakeformation:instance:create |
授予权限以创建实例。 |
write |
lakeformation:<region>:<account-id>:instance:<instance-id> * |
- |
- |
|
|||
lakeformation:instance:describe |
查询LakeFormation实例的权限。 |
read |
- |
- |
lakeformation:instance:drop |
授予权限以删除实例。 |
write |
lakeformation:<region>:<account-id>:instance:<instance-id> * |
|
lakeformation:instance:alter |
授予权限以变更实例。 |
write |
lakeformation:<region>:<account-id>:instance:<instance-id> * |
|
lakeformation:access:describe |
查询LakeFormation接入客户端的权限。 |
read |
- |
- |
lakeformation:instance:access |
查询或申请接入LakeFormation实例的权限。 |
write |
- |
- |
lakeformation:access:create |
创建LakeFormation接入客户端的权限。 |
write |
- |
- |
lakeformation:access:delete |
删除LakeFormation接入客户端的权限。 |
write |
- |
- |
lakeformation:agency:create |
创建LakeFormation委托的权限。 |
write |
- |
- |
lakeformation:agency:drop |
删除LakeFormation委托的权限。 |
write |
- |
- |
lakeformation:agency:describe |
查询LakeFormation委托的权限。 |
read |
- |
- |
lakeformation:accessService:describe |
查看LakeFormation接入服务的权限。 |
permission_management |
- |
- |
lakeformation:accessService:grant |
授权LakeFormation接入服务的权限。 |
permission_management |
- |
- |
lakeformation:accessTenant:grant |
授权LakeFormation接入租户的权限。 |
permission_management |
- |
- |
lakeformation:accessAgency:describe |
查询LakeFormation接入委托信息的权限。 |
permission_management |
- |
- |
lakeformation:agreement:describe |
查看LakeFormation服务协议的权限。 |
permission_management |
- |
- |
lakeformation:agreement:cancel |
取消LakeFormation服务协议授权的权限。 |
permission_management |
- |
- |
lakeformation:agreement:grant |
授权LakeFormation服务协议的权限。 |
permission_management |
- |
- |
lakeformation:obs:describe |
查询OBS桶列表 |
read |
- |
- |
lakeformation:tag:describe |
查询LakeFormation预定义资源标签的权限。 |
read |
- |
- |
lakeformation:instance:createSubscriber |
授予权限以新增元数据事件订阅者。 |
write |
lakeformation:<region>:<account-id>:instance:<instance-id> * |
|
lakeformation:instance:deleteSubscriber |
授予权限以删除元数据事件订阅者。 |
write |
lakeformation:<region>:<account-id>:instance:<instance-id> * |
|
lakeformation::authorizeLocation |
授予权限以将obs路径授权给LakeFormation服务。 |
permission_management |
- |
- |
lakeformation::listAuthorizedLocation |
授予权限以查询已授权给LakeFormation服务的OBS路径。 |
list |
- |
- |
lakeformation::cancelAuthorizeLocation |
授予权限以从LakeFormation服务中取消授权OBS路径。 |
permission_management |
- |
- |
lakeformation:instance:list |
授予权限以查询实例列表。 |
list |
lakeformation:<region>:<account-id>:instance:<instance-id> * |
|
lakeformation:instance:listLifecycle |
授予权限以查询实例级生命周期规则。 |
list |
lakeformation:<region>:<account-id>:instance:<instance-id> * |
|
lakeformation:instance:alterLifecycle |
授予权限以修改实例级生命周期规则。 |
write |
lakeformation:<region>:<account-id>:instance:<instance-id> * |
|
lakeformation:instance:show |
授予权限以查询实例详情。 |
read |
lakeformation:<region>:<account-id>:instance:<instance-id> * |
|
lakeformation:instance:recover |
授予权限以恢复实例。 |
write |
lakeformation:<region>:<account-id>:instance:<instance-id> * |
|
lakeformation:instance:createJob |
授予权限以湖仓构建任务。 |
write |
lakeformation:<region>:<account-id>:instance:<instance-id> * |
|
lakeformation:instance:listJob |
授予权限以查询lakeformation任务列表。 |
list |
lakeformation:<region>:<account-id>:instance:<instance-id> * |
|
lakeformation:instance:showJob |
授予权限以查询湖仓构建任务及日志。 |
read |
lakeformation:<region>:<account-id>:instance:<instance-id> * |
|
lakeformation:instance:dropJob |
授予权限以删除湖仓构建任务。 |
write |
lakeformation:<region>:<account-id>:instance:<instance-id> * |
|
lakeformation:instance:alterJob |
授予权限以变更湖仓构建任务。 |
write |
lakeformation:<region>:<account-id>:instance:<instance-id> * |
|
lakeformation:instance:startJob |
授予权限以开始湖仓构建任务。 |
write |
lakeformation:<region>:<account-id>:instance:<instance-id> * |
|
lakeformation:instance:stopJob |
授予权限以停止湖仓构建任务。 |
write |
lakeformation:<region>:<account-id>:instance:<instance-id> * |
|
lakeformation::grantAccessService |
授予权限以接入服务。 |
permission_management |
- |
- |
lakeformation::showAccessService |
授予权限以查询租户接入服务。 |
read |
- |
- |
lakeformation::createAgreement |
授予权限以注册用户协议。 |
permission_management |
- |
- |
lakeformation::showAgreement |
授予权限以查询用户协议。 |
read |
- |
- |
lakeformation::cancelAgreement |
授予权限以取消用户授权。 |
permission_management |
- |
- |
lakeformation:instance:listAccess |
授予权限以查询接入信息列表。 |
list |
lakeformation:<region>:<account-id>:instance:<instance-id> * |
|
lakeformation:instance:createAccess |
授予权限以接入湖仓构建实例。 |
write |
lakeformation:<region>:<account-id>:instance:<instance-id> * |
|
- |
lakeformation:vpcepIds |
|||
lakeformation:instance:listAccessClient |
授予权限以查询接入客户端列表。 |
list |
lakeformation:<region>:<account-id>:instance:<instance-id> * |
|
lakeformation:instance:createAccessClient |
授予权限以创建接入客户端。 |
write |
lakeformation:<region>:<account-id>:instance:<instance-id> * |
|
- |
lakeformation:vpcId |
|||
lakeformation:instance:showAccessClient |
授予权限以查询湖仓构建实例的接入客户端。 |
read |
lakeformation:<region>:<account-id>:instance:<instance-id> * |
|
lakeformation:instance:deleteAccessClient |
授予权限以删除湖仓构建实例的接入客户端。 |
write |
lakeformation:<region>:<account-id>:instance:<instance-id> * |
|
lakeformation:instance:alterAccessClient |
授予权限以修改湖仓构建实例的接入客户端。 |
write |
lakeformation:<region>:<account-id>:instance:<instance-id> * |
|
lakeformation::listTag |
授予权限以查询所有的标签。 |
list |
- |
- |
lakeformation:instance:alterInstanceTag |
授予权限以新增、修改或删除湖仓构建实例的标签。 |
tagging |
lakeformation:<region>:<account-id>:instance:<instance-id> * |
|
- |
|
|||
lakeformation::createAgency |
授予权限以给湖仓构建服务创建委托。 |
write |
- |
- |
lakeformation::showAgency |
授予权限以查询给湖仓构建服务创建的委托。 |
read |
- |
- |
lakeformation::dropAgency |
授予权限以删除给湖仓构建服务创建的委托。 |
write |
- |
- |
lakeformation:instance:createInstance |
授予权限以创建实例。 |
write |
lakeformation:<region>:<account-id>:instance:<instance-id> * |
- |
- |
|
|||
lakeformation:instance:update |
授予权限以变更实例。 |
write |
lakeformation:<region>:<account-id>:instance:<instance-id> * |
|
lakeformation::tagResource |
授予权限以给资源打标签。 |
tagging |
lakeformation:<region>:<account-id>:instance:<instance-id> * |
|
- |
|
|||
lakeformation::unTagResource |
授予权限以移除资源标签。 |
tagging |
lakeformation:<region>:<account-id>:instance:<instance-id> * |
|
- |
|
|||
lakeformation::listResourcesByTag |
授予权限以根据标签查询资源。 |
list |
- |
|
lakeformation::listTagsForResource |
查询单个资源上的标签。 |
list |
lakeformation:<region>:<account-id>:instance:<instance-id> * |
|
LakeFormation Console API通常对应着一个或多个操作项。表2展示了API与操作项的关系,以及该API需要依赖的操作项。
API |
对应的操作项 |
依赖的操作项 |
---|---|---|
lakeformation:instance:createInstance |
- |
|
lakeformation:instance:list |
- |
|
lakeformation:instance:show |
- |
|
lakeformation:instance:update |
- |
|
lakeformation:instance:update |
- |
|
lakeformation:instance:update |
- |
|
lakeformation:instance:recover |
- |
|
lakeformation::grantAccessService |
- |
|
lakeformation::showAccessService |
- |
|
lakeformation:instance:drop |
- |
|
lakeformation:agreement:grant |
- |
|
lakeformation:agreement:describe |
- |
|
lakeformation:agreement:cancel |
- |
|
lakeformation:obs:describe |
obs:bucket:ListAllMyBuckets |
|
lakeformation:obs:describe |
|
|
lakeformation:instance:listAccess |
- |
|
lakeformation:instance:createAccess |
- |
|
lakeformation:instance:listAccessClient |
- |
|
POST /v1/{project_id}/instances/{instance_id}/access-clients |
lakeformation:instance:createAccessClient |
- |
GET /v1/{project_id}/instances/{instance_id}/access-clients/{client_id} |
lakeformation:instance:showAccessClient |
- |
DELETE /v1/{project_id}/instances/{instance_id}/access-clients/{client_id} |
lakeformation:instance:deleteAccessClient |
- |
PUT /v1/{project_id}/instances/{instance_id}/access-clients/{client_id} |
lakeformation:instance:alterAccessClient |
- |
lakeformation:agency:create |
- |
|
lakeformation:agency:drop |
- |
|
lakeformation:agency:describe |
- |
|
lakeformation:instance:alterInstanceTag |
- |
|
- |
lakeformation:instance:listLifecycle |
- |
- |
lakeformation:instance:alterLifecycle |
- |
POST /v1/{project_id}/instances/{instance_id}/metadata-event/subscribers |
lakeformation:instance:createSubscriber |
- |
DELETE /v1/{project_id}/instances/{instance_id}/metadata-event/subscribers/{subscriber_name} |
lakeformation:instance:deleteSubscriber |
- |
lakeformation::authorizeLocation |
- |
|
lakeformation::listAuthorizedLocation |
- |
|
lakeformation::cancelAuthorizeLocation |
- |
|
lakeformation:instance:createJob |
- |
|
lakeformation:instance:listJob |
- |
|
DELETE /v1/{project_id}/instances/{instance_id}/lf-jobs/{job_id} |
lakeformation:instance:dropJob |
- |
GET /v1/{project_id}/instances/{instance_id}/lf-jobs/{job_id} |
lakeformation:instance:showJob |
- |
PUT /v1/{project_id}/instances/{instance_id}/lf-jobs/{job_id} |
lakeformation:instance:alterJob |
- |
POST /v1/{project_id}/instances/{instance_id}/lf-jobs/{job_id}/start |
lakeformation:instance:startJob |
- |
POST /v1/{project_id}/instances/{instance_id}/lf-jobs/{job_id}/stop |
lakeformation:instance:stopJob |
- |
GET /v1/{project_id}/instances/{instance_id}/lf-jobs/{job_id}/log |
lakeformation:instance:showJob |
- |
GET /v1/{project_id}/instances/{instance_id}/lf-jobs/{job_id}/history |
lakeformation:instance:showJob |
- |
lakeformation::createAgreement |
- |
|
lakeformation::showAgreement |
- |
|
lakeformation::cancelAgreement |
- |
|
lakeformation::createAgency |
|
|
lakeformation::dropAgency |
|
|
lakeformation::showAgency |
iam:agencies:listAgencies |
|
lakeformation::listTag |
- |
|
- |
lakeformation::listResourcesByTag |
- |
- |
lakeformation::listResourcesByTag |
- |
- |
lakeformation::tagResource |
- |
- |
lakeformation::unTagResource |
- |
- |
lakeformation::listTagsForResource |
- |
LakeFormation LakeCat API
您可以在自定义策略语句的Action元素中指定LakeFormation LakeCat API相关操作。详细操作如表3所示。
操作项 |
描述 |
访问级别 |
资源类型(*为必须) |
条件键 |
---|---|---|---|---|
lakeformation:model:describe |
查询LakeFormation元数据的模型的权限。 |
read |
- |
- |
lakeformation:model:create |
授予权限以创建模型。 |
write |
lakeformation:<region>:<account-id>:instance:<instance-id> * |
|
lakeformation:<region>:<account-id>:catalog:<instance-id>/<catalog-name> * |
- |
|||
lakeformation:<region>:<account-id>:model:<instance-id>/<catalog-name>/<model-name> * |
- |
|||
lakeformation:model:alter |
授予权限以修改模型。 |
write |
lakeformation:<region>:<account-id>:instance:<instance-id> * |
|
lakeformation:<region>:<account-id>:catalog:<instance-id>/<catalog-name> * |
- |
|||
lakeformation:<region>:<account-id>:model:<instance-id>/<catalog-name>/<model-name> * |
- |
|||
lakeformation:model:drop |
授予权限以删除模型。 |
write |
lakeformation:<region>:<account-id>:instance:<instance-id> * |
|
lakeformation:<region>:<account-id>:catalog:<instance-id>/<catalog-name> * |
- |
|||
lakeformation:<region>:<account-id>:model:<instance-id>/<catalog-name>/<model-name> * |
- |
|||
lakeformation:model:describeFile |
查询LakeFormation元数据的模型文件的权限。 |
read |
- |
- |
lakeformation:model:createFile |
授予权限以创建元模型文件。 |
write |
lakeformation:<region>:<account-id>:instance:<instance-id> * |
|
lakeformation:<region>:<account-id>:catalog:<instance-id>/<catalog-name> * |
- |
|||
lakeformation:<region>:<account-id>:model:<instance-id>/<catalog-name>/<model-name> * |
- |
|||
lakeformation:model:alterFile |
授予权限以修改元模型文件。 |
write |
lakeformation:<region>:<account-id>:instance:<instance-id> * |
|
lakeformation:<region>:<account-id>:catalog:<instance-id>/<catalog-name> * |
- |
|||
lakeformation:<region>:<account-id>:model:<instance-id>/<catalog-name>/<model-name> * |
- |
|||
lakeformation:model:dropFile |
授予权限以删除元模型文件。 |
write |
lakeformation:<region>:<account-id>:instance:<instance-id> * |
|
lakeformation:<region>:<account-id>:catalog:<instance-id>/<catalog-name> * |
- |
|||
lakeformation:<region>:<account-id>:model:<instance-id>/<catalog-name>/<model-name> * |
- |
|||
lakeformation:dataset:describe |
查询LakeFormation元数据的数据集的权限。 |
read |
- |
- |
lakeformation:dataset:create |
授予权限以创建数据集。 |
write |
lakeformation:<region>:<account-id>:instance:<instance-id> * |
|
lakeformation:<region>:<account-id>:catalog:<instance-id>/<catalog-name> * |
- |
|||
lakeformation:<region>:<account-id>:dataset:<instance-id>/<catalog-name>/<dataset-name> * |
- |
|||
lakeformation:dataset:alter |
授予权限以修改数据集。 |
write |
lakeformation:<region>:<account-id>:instance:<instance-id> * |
|
lakeformation:<region>:<account-id>:catalog:<instance-id>/<catalog-name> * |
- |
|||
lakeformation:<region>:<account-id>:dataset:<instance-id>/<catalog-name>/<dataset-name> * |
- |
|||
lakeformation:dataset:drop |
授予权限以删除数据集。 |
write |
lakeformation:<region>:<account-id>:instance:<instance-id> * |
|
lakeformation:<region>:<account-id>:catalog:<instance-id>/<catalog-name> * |
- |
|||
lakeformation:<region>:<account-id>:dataset:<instance-id>/<catalog-name>/<dataset-name> * |
- |
|||
lakeformation:dataset:describeFileGroup |
查询LakeFormation元数据的数据集文件分组的权限。 |
read |
- |
- |
lakeformation:dataset:createFileGroup |
授予权限以创建数据集文件组。 |
write |
lakeformation:<region>:<account-id>:instance:<instance-id> * |
|
lakeformation:<region>:<account-id>:catalog:<instance-id>/<catalog-name> * |
- |
|||
lakeformation:<region>:<account-id>:dataset:<instance-id>/<catalog-name>/<dataset-name> * |
- |
|||
lakeformation:dataset:alterFileGroup |
授予权限以修改数据集文件组。 |
write |
lakeformation:<region>:<account-id>:instance:<instance-id> * |
|
lakeformation:<region>:<account-id>:catalog:<instance-id>/<catalog-name> * |
- |
|||
lakeformation:<region>:<account-id>:dataset:<instance-id>/<catalog-name>/<dataset-name> * |
- |
|||
lakeformation:dataset:dropFileGroup |
授予权限以删除数据集文件组。 |
write |
lakeformation:<region>:<account-id>:instance:<instance-id> * |
|
lakeformation:<region>:<account-id>:catalog:<instance-id>/<catalog-name> * |
- |
|||
lakeformation:<region>:<account-id>:dataset:<instance-id>/<catalog-name>/<dataset-name> * |
- |
|||
lakeformation:dataset:describeFile |
查询LakeFormation元数据的数据集文件的权限。 |
read |
- |
- |
lakeformation:dataset:createFile |
授予权限以创建数据集文件。 |
write |
lakeformation:<region>:<account-id>:instance:<instance-id> * |
|
lakeformation:<region>:<account-id>:catalog:<instance-id>/<catalog-name> * |
- |
|||
lakeformation:<region>:<account-id>:dataset:<instance-id>/<catalog-name>/<dataset-name> * |
- |
|||
lakeformation:dataset:alterFile |
授予权限以修改数据集文件。 |
write |
lakeformation:<region>:<account-id>:instance:<instance-id> * |
|
lakeformation:<region>:<account-id>:catalog:<instance-id>/<catalog-name> * |
- |
|||
lakeformation:<region>:<account-id>:dataset:<instance-id>/<catalog-name>/<dataset-name> * |
- |
|||
lakeformation:dataset:dropFile |
授予权限以删除数据集文件。 |
write |
lakeformation:<region>:<account-id>:instance:<instance-id> * |
|
lakeformation:<region>:<account-id>:catalog:<instance-id>/<catalog-name> * |
- |
|||
lakeformation:<region>:<account-id>:dataset:<instance-id>/<catalog-name>/<dataset-name> * |
- |
|||
lakeformation:function:describe |
查询LakeFormation元数据的函数的权限。 |
read |
- |
- |
lakeformation:function:drop |
授予权限以删除函数。 |
write |
lakeformation:<region>:<account-id>:instance:<instance-id> * |
|
lakeformation:<region>:<account-id>:catalog:<instance-id>/<catalog-name> * |
- |
|||
lakeformation:<region>:<account-id>:database:<instance-id>/<catalog-name>/<database-name> * |
- |
|||
lakeformation:<region>:<account-id>:table:<instance-id>/<catalog-name>/<database-name>/<table-name> * |
- |
|||
lakeformation:function:alter |
授予权限以修改函数。 |
write |
lakeformation:<region>:<account-id>:instance:<instance-id> * |
|
lakeformation:<region>:<account-id>:catalog:<instance-id>/<catalog-name> * |
- |
|||
lakeformation:<region>:<account-id>:database:<instance-id>/<catalog-name>/<database-name> * |
- |
|||
lakeformation:<region>:<account-id>:table:<instance-id>/<catalog-name>/<database-name>/<table-name> * |
- |
|||
lakeformation:function:create |
授予权限以创建函数。 |
write |
lakeformation:<region>:<account-id>:instance:<instance-id> * |
|
lakeformation:<region>:<account-id>:catalog:<instance-id>/<catalog-name> * |
- |
|||
lakeformation:<region>:<account-id>:database:<instance-id>/<catalog-name>/<database-name> * |
- |
|||
lakeformation:<region>:<account-id>:table:<instance-id>/<catalog-name>/<database-name>/<table-name> * |
- |
|||
lakeformation:catalog:describe |
查询LakeFormation元数据的数据目录的权限。 |
read |
- |
- |
lakeformation:catalog:create |
授予权限以创建数据目录。 |
write |
lakeformation:<region>:<account-id>:instance:<instance-id> * |
|
lakeformation:<region>:<account-id>:catalog:<instance-id>/<catalog-name> * |
- |
|||
lakeformation:catalog:alter |
授予权限以修改数据目录。 |
write |
lakeformation:<region>:<account-id>:instance:<instance-id> * |
|
lakeformation:<region>:<account-id>:catalog:<instance-id>/<catalog-name> * |
- |
|||
lakeformation:catalog:drop |
授予权限以删除数据目录。 |
write |
lakeformation:<region>:<account-id>:instance:<instance-id> * |
|
lakeformation:<region>:<account-id>:catalog:<instance-id>/<catalog-name> * |
- |
|||
lakeformation:database:describe |
查询LakeFormation元数据的数据库的权限。 |
read |
- |
- |
lakeformation:database:create |
授予权限以创建数据库。 |
write |
lakeformation:<region>:<account-id>:instance:<instance-id> * |
|
lakeformation:<region>:<account-id>:catalog:<instance-id>/<catalog-name> * |
- |
|||
lakeformation:<region>:<account-id>:database:<instance-id>/<catalog-name>/<database-name> * |
- |
|||
lakeformation:database:alter |
授予权限以修改数据库。 |
write |
lakeformation:<region>:<account-id>:instance:<instance-id> * |
|
lakeformation:<region>:<account-id>:catalog:<instance-id>/<catalog-name> * |
- |
|||
lakeformation:<region>:<account-id>:database:<instance-id>/<catalog-name>/<database-name> * |
- |
|||
lakeformation:database:drop |
授予权限以删除数据库。 |
write |
lakeformation:<region>:<account-id>:instance:<instance-id> * |
|
lakeformation:<region>:<account-id>:catalog:<instance-id>/<catalog-name> * |
- |
|||
lakeformation:<region>:<account-id>:database:<instance-id>/<catalog-name>/<database-name> * |
- |
|||
lakeformation:table:describe |
查询LakeFormation元数据的数据表的权限。 |
read |
- |
- |
lakeformation:table:alter |
授予权限以修改数据库表详情,包括分区信息、列统计信息、表数据概况。 |
write |
lakeformation:<region>:<account-id>:instance:<instance-id> * |
|
lakeformation:<region>:<account-id>:catalog:<instance-id>/<catalog-name> * |
- |
|||
lakeformation:<region>:<account-id>:database:<instance-id>/<catalog-name>/<database-name> * |
- |
|||
lakeformation:<region>:<account-id>:table:<instance-id>/<catalog-name>/<database-name>/<table-name> * |
- |
|||
lakeformation:table:create |
授予权限以创建数据库表。 |
write |
lakeformation:<region>:<account-id>:instance:<instance-id> * |
|
lakeformation:<region>:<account-id>:catalog:<instance-id>/<catalog-name> * |
- |
|||
lakeformation:<region>:<account-id>:database:<instance-id>/<catalog-name>/<database-name> * |
- |
|||
lakeformation:<region>:<account-id>:table:<instance-id>/<catalog-name>/<database-name>/<table-name> * |
- |
|||
lakeformation:table:drop |
授予权限以删除数据库表。 |
write |
lakeformation:<region>:<account-id>:instance:<instance-id> * |
|
lakeformation:<region>:<account-id>:catalog:<instance-id>/<catalog-name> * |
- |
|||
lakeformation:<region>:<account-id>:database:<instance-id>/<catalog-name>/<database-name> * |
- |
|||
lakeformation:<region>:<account-id>:table:<instance-id>/<catalog-name>/<database-name>/<table-name> * |
- |
|||
lakeformation:transaction:operate |
操作LakeFormation事务的权限。 |
write |
- |
- |
lakeformation:user:describe |
查询LakeFormation用户以及关联角色关系的权限。 |
read |
- |
- |
lakeformation:policy:create |
创建LakeFormation权限策略的权限。 |
write |
- |
- |
lakeformation:policy:export |
批量查询LakeFormation权限策略的权限。 |
read |
- |
- |
lakeformation:policy:drop |
删除LakeFormation权限策略的权限。 |
write |
- |
- |
lakeformation:policy:describe |
查询LakeFormation权限策略的权限。 |
read |
- |
- |
lakeformation:group:describe |
查询LakeFormation用户组以及关联角色关系的权限。 |
read |
- |
- |
lakeformation:group:alter |
修改LakeFormation用户组以及关联角色关系的权限。 |
write |
- |
- |
lakeformation:instance:describe |
查询LakeFormation实例的权限。 |
read |
- |
- |
lakeformation:role:create |
创建LakeFormation角色的权限。 |
write |
- |
- |
lakeformation:role:describe |
查询LakeFormation角色的权限。 |
read |
- |
- |
lakeformation:role:drop |
删除LakeFormation角色的权限。 |
write |
- |
- |
lakeformation:role:alter |
修改LakeFormation角色以及关联用户组关系的权限。 |
write |
- |
- |
lakeformation:credential:describe |
获取访问LakeFormation认证信息的权限。 |
read |
- |
- |
lakeformation:configuration:describe |
查询用户配置的权限。 |
read |
- |
- |
lakeformation:user:alter |
修改LakeFormation用户以及关联角色关系的权限。 |
write |
- |
- |
lakeformation:tableFile:alter |
修改文件的权限。 |
write |
- |
- |
lakeformation:tableFile:describe |
查询文件的权限。 |
read |
- |
- |
lakeformation:tableFile:drop |
删除文件的权限。 |
write |
- |
- |
lakeformation:tableFile:create |
创建文件的权限。 |
write |
- |
- |
lakeformation:tableFileGroup:create |
创建文件组的权限。 |
write |
- |
- |
lakeformation:tableFileGroup:describe |
查询文件组的权限。 |
read |
- |
- |
lakeformation:tableFileGroup:alter |
修改文件组的权限。 |
write |
- |
- |
lakeformation:tableFileGroup:drop |
删除文件组的权限。 |
write |
- |
- |
lakeformation:metadata:restore |
恢复元数据的权限。 |
write |
- |
- |
lakeformation:metadata:clear |
清除元数据的权限。 |
write |
- |
- |
lakeformation:metadataEvent:describe |
查询元数据事件的权限。 |
read |
- |
- |
lakeformation:policy:delegate |
将权限策略委托给其他授权主体的权限。 |
write |
- |
- |
lakeformation:catalog:list |
授予权限以查询数据目录列表。 |
list |
lakeformation:<region>:<account-id>:instance:<instance-id> * |
|
lakeformation:<region>:<account-id>:catalog:<instance-id>/<catalog-name> * |
- |
|||
lakeformation:catalog:show |
授予权限以查询数据目录详情。 |
read |
lakeformation:<region>:<account-id>:instance:<instance-id> * |
|
lakeformation:<region>:<account-id>:catalog:<instance-id>/<catalog-name> * |
- |
|||
lakeformation:database:list |
授予权限以查询数据库列表。 |
list |
lakeformation:<region>:<account-id>:instance:<instance-id> * |
|
lakeformation:<region>:<account-id>:catalog:<instance-id>/<catalog-name> * |
- |
|||
lakeformation:<region>:<account-id>:database:<instance-id>/<catalog-name>/<database-name> * |
- |
|||
lakeformation:database:show |
授予权限以查询数据库详情。 |
read |
lakeformation:<region>:<account-id>:instance:<instance-id> * |
|
lakeformation:<region>:<account-id>:catalog:<instance-id>/<catalog-name> * |
- |
|||
lakeformation:<region>:<account-id>:database:<instance-id>/<catalog-name>/<database-name> * |
- |
|||
lakeformation:table:list |
授予权限以查询数据库表列表。 |
list |
lakeformation:<region>:<account-id>:instance:<instance-id> * |
|
lakeformation:<region>:<account-id>:catalog:<instance-id>/<catalog-name> * |
- |
|||
lakeformation:<region>:<account-id>:database:<instance-id>/<catalog-name>/<database-name> * |
- |
|||
lakeformation:<region>:<account-id>:table:<instance-id>/<catalog-name>/<database-name>/<table-name> * |
- |
|||
lakeformation:table:show |
授予权限以查询数据库表详情,包括分区信息、列统计信息、表数据概况。 |
read |
lakeformation:<region>:<account-id>:instance:<instance-id> * |
|
lakeformation:<region>:<account-id>:catalog:<instance-id>/<catalog-name> * |
- |
|||
lakeformation:<region>:<account-id>:database:<instance-id>/<catalog-name>/<database-name> * |
- |
|||
lakeformation:<region>:<account-id>:table:<instance-id>/<catalog-name>/<database-name>/<table-name> * |
- |
|||
lakeformation:function:list |
授予权限以查询函数列表。 |
list |
lakeformation:<region>:<account-id>:instance:<instance-id> * |
|
lakeformation:<region>:<account-id>:catalog:<instance-id>/<catalog-name> * |
- |
|||
lakeformation:<region>:<account-id>:database:<instance-id>/<catalog-name>/<database-name> * |
- |
|||
lakeformation:<region>:<account-id>:table:<instance-id>/<catalog-name>/<database-name>/<table-name> * |
- |
|||
lakeformation:function:show |
授予权限以查询函数详细信息。 |
read |
lakeformation:<region>:<account-id>:instance:<instance-id> * |
|
lakeformation:<region>:<account-id>:catalog:<instance-id>/<catalog-name> * |
- |
|||
lakeformation:<region>:<account-id>:database:<instance-id>/<catalog-name>/<database-name> * |
- |
|||
lakeformation:<region>:<account-id>:table:<instance-id>/<catalog-name>/<database-name>/<table-name> * |
- |
|||
lakeformation:model:list |
授予权限以查询模型列表。 |
list |
lakeformation:<region>:<account-id>:instance:<instance-id> * |
|
lakeformation:<region>:<account-id>:catalog:<instance-id>/<catalog-name> * |
- |
|||
lakeformation:<region>:<account-id>:model:<instance-id>/<catalog-name>/<model-name> * |
- |
|||
lakeformation:model:show |
授予权限以查询模型详情。 |
read |
lakeformation:<region>:<account-id>:instance:<instance-id> * |
|
lakeformation:<region>:<account-id>:catalog:<instance-id>/<catalog-name> * |
- |
|||
lakeformation:<region>:<account-id>:model:<instance-id>/<catalog-name>/<model-name> * |
- |
|||
lakeformation:model:listFile |
授予权限以查询元模型文件列表。 |
list |
lakeformation:<region>:<account-id>:instance:<instance-id> * |
|
lakeformation:<region>:<account-id>:catalog:<instance-id>/<catalog-name> * |
- |
|||
lakeformation:<region>:<account-id>:model:<instance-id>/<catalog-name>/<model-name> * |
- |
|||
lakeformation:dataset:list |
授予权限以查询数据集列表。 |
list |
lakeformation:<region>:<account-id>:instance:<instance-id> * |
|
lakeformation:<region>:<account-id>:catalog:<instance-id>/<catalog-name> * |
- |
|||
lakeformation:<region>:<account-id>:dataset:<instance-id>/<catalog-name>/<dataset-name> * |
- |
|||
lakeformation:dataset:show |
授予权限以查询数据集详情。 |
read |
lakeformation:<region>:<account-id>:instance:<instance-id> * |
|
lakeformation:<region>:<account-id>:catalog:<instance-id>/<catalog-name> * |
- |
|||
lakeformation:<region>:<account-id>:dataset:<instance-id>/<catalog-name>/<dataset-name> * |
- |
|||
lakeformation:dataset:listFileGroup |
授予权限以查询数据集文件组列表。 |
list |
lakeformation:<region>:<account-id>:instance:<instance-id> * |
|
lakeformation:<region>:<account-id>:catalog:<instance-id>/<catalog-name> * |
- |
|||
lakeformation:<region>:<account-id>:dataset:<instance-id>/<catalog-name>/<dataset-name> * |
- |
|||
lakeformation:dataset:showFileGroup |
授予权限以查询数据集文件组详情。 |
read |
lakeformation:<region>:<account-id>:instance:<instance-id> * |
|
lakeformation:<region>:<account-id>:catalog:<instance-id>/<catalog-name> * |
- |
|||
lakeformation:<region>:<account-id>:dataset:<instance-id>/<catalog-name>/<dataset-name> * |
- |
|||
lakeformation:dataset:listFile |
授予权限以查询数据集文件列表。 |
list |
lakeformation:<region>:<account-id>:instance:<instance-id> * |
|
lakeformation:<region>:<account-id>:catalog:<instance-id>/<catalog-name> * |
- |
|||
lakeformation:<region>:<account-id>:dataset:<instance-id>/<catalog-name>/<dataset-name> * |
- |
|||
lakeformation:instance:authorization |
授予权限以对授权主体进行元数据授权。 |
permission_management |
lakeformation:<region>:<account-id>:instance:<instance-id> * |
|
lakeformation:instance:listPolicy |
授予权限以查询元数据授权策略列表。 |
list |
lakeformation:<region>:<account-id>:instance:<instance-id> * |
|
lakeformation:instance:revokeAuthorization |
授予权限以取消元数据授权。 |
permission_management |
lakeformation:<region>:<account-id>:instance:<instance-id> * |
|
lakeformation:instance:checkPermission |
授予权限以鉴权主体是否有对元数据的权限。 |
permission_management |
lakeformation:<region>:<account-id>:instance:<instance-id> * |
|
lakeformation:instance:listUser |
授予权限以查询用户列表。 |
list |
lakeformation:<region>:<account-id>:instance:<instance-id> * |
|
lakeformation:instance:bindingRole |
授予权限以绑定角色到主体。 |
permission_management |
lakeformation:<region>:<account-id>:instance:<instance-id> * |
g:ResourceTag/<tag-key> |
lakeformation:instance:unbindingRole |
授予权限以从主体中解绑角色。 |
permission_management |
lakeformation:<region>:<account-id>:instance:<instance-id> * |
|
lakeformation:instance:updateRole |
授予权限以更新主体中的角色。 |
permission_management |
lakeformation:<region>:<account-id>:instance:<instance-id> * |
|
lakeformation:instance:listPrincipalRole |
授予权限以查询主体中的角色。 |
list |
lakeformation:<region>:<account-id>:instance:<instance-id> * |
|
lakeformation:instance:listUserGroup |
授予权限以查询账号的用户组列表。 |
list |
lakeformation:<region>:<account-id>:instance:<instance-id> * |
|
lakeformation:instance:createRole |
授予权限以创建角色。 |
write |
lakeformation:<region>:<account-id>:instance:<instance-id> * |
|
lakeformation:instance:listRole |
授予权限以查询角色列表。 |
list |
lakeformation:<region>:<account-id>:instance:<instance-id> * |
|
lakeformation:instance:dropRole |
授予权限以删除角色。 |
write |
lakeformation:<region>:<account-id>:instance:<instance-id> * |
|
lakeformation:instance:describeRole |
授予权限以查询角色详情。 |
read |
lakeformation:<region>:<account-id>:instance:<instance-id> * |
|
lakeformation:instance:alterRole |
授予权限以修改角色。 |
write |
lakeformation:<region>:<account-id>:instance:<instance-id> * |
|
lakeformation:instance:listPrincipal |
授予权限以查询角色绑定的所有主体。 |
list |
lakeformation:<region>:<account-id>:instance:<instance-id> * |
|
lakeformation:instance:bindingPrincipal |
授予权限以在角色中加入主体。 |
permission_management |
lakeformation:<region>:<account-id>:instance:<instance-id> * |
|
lakeformation:instance:unbindingPrincipal |
授予权限以在角色中移除主体。 |
permission_management |
lakeformation:<region>:<account-id>:instance:<instance-id> * |
|
lakeformation:instance:updatePrincipal |
授予权限以在更新角色中的主体。 |
permission_management |
lakeformation:<region>:<account-id>:instance:<instance-id> * |
|
lakeformation:instance:describeCountMeta |
授予权限以查询元数据数量。 |
read |
lakeformation:<region>:<account-id>:instance:<instance-id> * |
|
lakeformation:instance:createCredential |
授予为LakeFormation授权主体创建临时访问密钥的权限。 |
permission_management |
lakeformation:<region>:<account-id>:instance:<instance-id> * |
|
lakeformation:instance:listConfig |
授予权限以查询用户配置列表。 |
list |
lakeformation:<region>:<account-id>:instance:<instance-id> * |
|
lakeformation:instance:describeMetadataEvent |
授予权限以获取元数据事件。 |
read |
lakeformation:<region>:<account-id>:instance:<instance-id> * |
|
LakeFormation LakeCat API通常对应着一个或多个操作项。表4展示了API与操作项的关系,以及该API需要依赖的操作项。
API |
对应的操作项 |
依赖的操作项 |
---|---|---|
- |
lakeformation:model:create |
- |
- |
lakeformation:model:describe |
- |
- |
lakeformation:model:describe |
- |
- |
lakeformation:model:alter |
- |
- |
lakeformation:model:drop |
- |
- |
lakeformation:model:createFile |
- |
- |
lakeformation:model:describeFile |
- |
- |
lakeformation:model:alterFile |
- |
- |
lakeformation:model:dropFile |
- |
- |
lakeformation:dataset:create |
- |
- |
lakeformation:dataset:describe |
- |
- |
lakeformation:dataset:describe |
- |
- |
lakeformation:dataset:alter |
- |
- |
lakeformation:dataset:createFileGroup |
- |
- |
lakeformation:dataset:describeFileGroup |
- |
- |
lakeformation:dataset:describeFileGroup |
- |
- |
lakeformation:dataset:alterFileGroup |
- |
- |
lakeformation:dataset:dropFileGroup |
- |
- |
lakeformation:dataset:describeFile |
- |
- |
lakeformation:dataset:alterFile |
- |
GET /v1/{project_id}/instances/{instance_id}/catalogs/{catalog_name}/functions |
lakeformation:function:describe |
- |
lakeformation:function:describe |
- |
|
lakeformation:function:describe |
- |
|
lakeformation:function:drop |
- |
|
lakeformation:function:alter |
- |
|
lakeformation:function:create |
- |
|
lakeformation:function:describe |
- |
|
- |
lakeformation:function:describe |
- |
lakeformation:catalog:describe |
- |
|
- |
lakeformation:catalog:describe |
- |
lakeformation:catalog:create |
- |
|
PUT /v1/{project_id}/instances/{instance_id}/catalogs/{catalog_name} |
lakeformation:catalog:alter |
- |
DELETE /v1/{project_id}/instances/{instance_id}/catalogs/{catalog_name} |
lakeformation:catalog:drop |
- |
GET /v1/{project_id}/instances/{instance_id}/catalogs/{catalog_name} |
lakeformation:catalog:describe |
- |
GET /v1/{project_id}/instances/{instance_id}/catalogs/{catalog_name}/databases |
lakeformation:database:describe |
- |
- |
lakeformation:database:describe |
- |
POST /v1/{project_id}/instances/{instance_id}/catalogs/{catalog_name}/databases |
lakeformation:database:create |
- |
GET /v1/{project_id}/instances/{instance_id}/catalogs/{catalog_name}/databases/{database_name} |
lakeformation:database:describe |
- |
PUT /v1/{project_id}/instances/{instance_id}/catalogs/{catalog_name}/databases/{database_name} |
lakeformation:database:alter |
- |
DELETE /v1/{project_id}/instances/{instance_id}/catalogs/{catalog_name}/databases/{database_name} |
lakeformation:database:drop |
- |
GET /v1/{project_id}/instances/{instance_id}/catalogs/{catalog_name}/databases/names |
lakeformation:database:describe |
- |
GET /v1/{project_id}/instances/{instance_id}/catalogs/{catalog_name}/databases/tables |
lakeformation:table:describe |
- |
lakeformation:table:describe |
- |
|
lakeformation:table:describe |
- |
|
- |
lakeformation:table:describe |
- |
lakeformation:table:create |
- |
|
lakeformation:table:describe |
- |
|
lakeformation:table:alter |
- |
|
lakeformation:table:drop |
- |
|
lakeformation:table:describe |
- |
|
lakeformation:table:describe |
- |
|
lakeformation:table:alter |
- |
|
lakeformation:table:alter |
- |
|
lakeformation:table:alter |
- |
|
lakeformation:table:describe |
- |
|
lakeformation:table:alter |
- |
|
lakeformation:table:alter |
- |
|
lakeformation:table:describe |
- |
|
lakeformation:table:describe |
- |
|
lakeformation:table:describe |
- |
|
lakeformation:table:describe |
- |
|
lakeformation:table:alter |
- |
|
lakeformation:table:alter |
- |
|
lakeformation:user:describe |
- |
|
POST /v1/{project_id}/instances/{instance_id}/policies/grant |
lakeformation:policy:create |
- |
- |
lakeformation:policy:create |
- |
GET /v1/{project_id}/instances/{instance_id}/policies/policy |
lakeformation:policy:export |
- |
POST /v1/{project_id}/instances/{instance_id}/policies/revoke |
lakeformation:policy:drop |
- |
lakeformation:policy:describe |
- |
|
lakeformation:policy:export |
- |
|
lakeformation:group:describe |
- |
|
- |
lakeformation:group:alter |
- |
- |
lakeformation:group:alter |
- |
- |
lakeformation:group:alter |
- |
- |
lakeformation:group:describe |
- |
lakeformation:instance:describe |
- |
|
lakeformation:role:create |
- |
|
lakeformation:role:describe |
- |
|
DELETE /v1/{project_id}/instances/{instance_id}/roles/{role_name} |
lakeformation:role:drop |
- |
GET /v1/{project_id}/instances/{instance_id}/roles/{role_name} |
lakeformation:role:describe |
- |
PUT /v1/{project_id}/instances/{instance_id}/roles/{role_name} |
lakeformation:role:alter |
- |
lakeformation:role:describe |
- |
|
GET /v1/{project_id}/instances/{instance_id}/roles/{role_name}/principals |
lakeformation:role:describe |
- |
POST /v1/{project_id}/instances/{instance_id}/roles/{role_name}/grant-principals |
lakeformation:role:alter |
- |
POST /v1/{project_id}/instances/{instance_id}/roles/{role_name}/revoke-principals |
lakeformation:role:alter |
- |
PUT /v1/{project_id}/instances/{instance_id}/roles/{role_name}/update-principals |
lakeformation:role:alter |
- |
lakeformation:credential:describe |
- |
|
lakeformation:configuration:describe |
- |
|
POST /v1/{project_id}/instances/{instance_id}/users/{user_name}/grant-roles |
lakeformation:user:alter |
- |
POST /v1/{project_id}/instances/{instance_id}/users/{user_name}/revoke-roles |
lakeformation:user:alter |
- |
PUT /v1/{project_id}/instances/{instance_id}/users/{user_name}/update-roles |
lakeformation:user:alter |
- |
GET /v1/{project_id}/instances/{instance_id}/users/{user_name}/roles |
lakeformation:user:describe |
- |
POST /v1/{project_id}/instances/{instance_id}/policies/check-permission |
lakeformation:policy:describe |
- |
- |
lakeformation:metadata:restore |
- |
- |
lakeformation:metadata:clear |
- |
lakeformation:metadataEvent:describe |
- |
|
- |
lakeformation:table:describe |
- |
- |
lakeformation:table:alter |
- |
- |
lakeformation:table:describe |
- |
- |
lakeformation:dataset:dropFile |
- |
- |
lakeformation:dataset:createFile |
- |
- |
lakeformation:dataset:drop |
- |
资源类型(Resource)
资源类型(Resource)表示身份策略所作用的资源。如表5中的某些操作指定了可以在该操作指定的资源类型,则必须在具有该操作的身份策略语句中指定该资源的URN,身份策略仅作用于此资源;如未指定,Resource默认为“*”,则身份策略将应用到所有资源。您也可以在身份策略中设置条件,从而指定资源类型。
LakeFormation定义了以下可以在自定义身份策略的Resource元素中使用的资源类型。
资源类型 |
URN |
---|---|
catalog |
lakeformation:<region>:<account-id>:catalog:<instance-id>/<catalog-name> |
database |
lakeformation:<region>:<account-id>:database:<instance-id>/<catalog-name>/<database-name> |
table |
lakeformation:<region>:<account-id>:table:<instance-id>/<catalog-name>/<database-name>/<table-name> |
function |
lakeformation:<region>:<account-id>:function:<instance-id>/<catalog-name>/<database-name>/<function-name> |
model |
lakeformation:<region>:<account-id>:model:<instance-id>/<catalog-name>/<model-name> |
dataset |
lakeformation:<region>:<account-id>:dataset:<instance-id>/<catalog-name>/<dataset-name> |
instance |
lakeformation:<region>:<account-id>:instance:<instance-id> |