湖仓构建 LAKEFORMATION-创建用户并授权使用LakeFormation:LakeFormation服务权限

时间:2024-03-26 20:12:53

LakeFormation服务权限

默认情况下,管理员创建的IAM用户没有任何权限,需要将其加入用户组,并给用户组授予策略或角色,才能使得用户组中的用户获得对应的权限,这一过程称为授权。授权后,用户就可以基于被授予的权限对云服务进行操作。

权限根据授权精细程度分为角色和策略。

  • 角色:IAM最初提供的一种根据用户的工作职能定义权限的粗粒度授权机制。该机制以服务为粒度,提供有限的服务相关角色用于授权。由于各服务之间存在业务依赖关系,因此给用户授予角色时,可能需要一并授予依赖的其他角色,才能正确完成业务。角色并不能满足用户对精细化授权的要求,无法完全达到企业对权限最小化的安全管控要求。
    • IAM项目只读授权指导:当租户管理员需要给某个子用户分配LakeFormation服务在某个IAM项目下的只读权限。可以给该用户创建一个用户组,同时在用户组将LakeFormation ReadOnlyAccess系统策略授权给指定IAM项目即可。
    • 企业项目授权指导:当租户管理员需要给某个子用户分配LakeFormation服务在某个企业项目下的所有操作权限。可以给该用户创建一个用户组,同时在用户组中将LakeFormation CommonAccess授权给全局,将LakeFormation FullAccess授权给指定企业项目即可。
  • 策略:IAM最新提供的一种细粒度授权的能力,可以精确到具体服务的操作、资源以及请求条件等。基于策略的授权是一种更加灵活的授权方式,能够满足企业对权限最小化的安全管控要求。多数细粒度策略以API接口为粒度进行权限拆分,LakeFormation的自定义IAM策略操作可参考创建LakeFormation自定义IAM策略
表1 LakeFormation系统权限

系统角色/策略名称

描述

类别

依赖关系

LakeFormation FullAccess

LakeFormation管理员权限,拥有该权限的用户可以操作并使用所有LakeFormation服务功能。

系统策略

LakeFormation ReadOnlyAccess

LakeFormation只读权限,拥有该权限的用户可以执行LakeFormation所有查询类功能。

系统策略

LakeFormation CommonAccess

LakeFormation基础权限,包含LakeFormation服务协议查看/授权/取消,以及OBS、TMS等周边依赖服务的基础权限集合。

系统策略

表2 LakeFormation细粒度权限

操作类型

操作项

描述

只读

lakeformation:instance:describe

查询LakeFormation实例的权限。

lakeformation:catalog:describe

查询LakeFormation元数据的数据目录的权限。

lakeformation:database:describe

查询LakeFormation元数据的数据库的权限。

lakeformation:table:describe

查询LakeFormation元数据的数据表的权限。

lakeformation:function:describe

查询LakeFormation元数据的函数的权限。

lakeformation:policy:describe

查询LakeFormation权限策略的权限。

lakeformation:policy:export

批量查询LakeFormation权限策略的权限。

lakeformation:agency:describe

查询LakeFormation委托的权限。

lakeformation:credential:describe

获取访问LakeFormation认证信息的权限。

lakeformation:group:describe

查询LakeFormation用户组以及关联角色关系的权限。

lakeformation:user:describe

查询LakeFormation用户以及关联角色关系的权限。

lakeformation:role:describe

查询LakeFormation角色的权限。

lakeformation:configuration:describe

查询用户配置的权限。

lakeformation:access:describe

查询LakeFormation接入客户端的权限。

lakeformation:job:describe

查询LakeFormation任务的权限。

lakeformation:instance:create

创建LakeFormation实例的权限。

lakeformation:role:create

创建LakeFormation角色的权限。

lakeformation:policy:create

创建LakeFormation权限策略的权限。

lakeformation:function:create

创建LakeFormation元数据的函数的权限。

lakeformation:catalog:create

创建LakeFormation元数据的数据目录的权限。

lakeformation:database:create

创建LakeFormation元数据的数据库的权限。

lakeformation:table:create

创建LakeFormation元数据的数据表的权限。

lakeformation:access:create

创建LakeFormation接入客户端的权限。

lakeformation:agency:create

创建LakeFormation委托的权限。

lakeformation:job:create

创建LakeFormation任务的权限。

lakeformation:instance:alter

修改LakeFormation实例的权限。

lakeformation:catalog:alter

修改LakeFormation元数据的数据目录的权限。

lakeformation:database:alter

修改LakeFormation元数据的数据库的权限。

lakeformation:table:alter

修改LakeFormation元数据的数据表的权限。

lakeformation:function:alter

修改LakeFormation元数据的函数的权限。

lakeformation:role:alter

修改LakeFormation角色以及关联用户组关系的权限。

lakeformation:group:alter

修改LakeFormation用户组以及关联角色关系的权限。

lakeformation:user:alter

修改LakeFormation用户以及关联角色关系的权限。

lakeformation:job:alter

修改LakeFormation任务的权限。

lakeformation:instance:drop

删除LakeFormation实例的权限。

lakeformation:role:drop

删除LakeFormation角色的权限。

lakeformation:policy:drop

删除LakeFormation权限策略权限。

lakeformation:function:drop

删除LakeFormation元数据的函数的权限。

lakeformation:catalog:drop

删除LakeFormation元数据的数据目录的权限。

lakeformation:database:drop

删除LakeFormation元数据的数据库的权限。

lakeformation:table:drop

删除LakeFormation元数据的数据表的权限。

lakeformation:access:delete

删除LakeFormation接入客户端的权限。

lakeformation:agency:drop

删除LakeFormation委托的权限。

lakeformation:job:drop

删除LakeFormation任务的权限。

lakeformation:transaction:operate

操作LakeFormation事务的权限。

lakeformation:instance:access

查询或申请接入LakeFormation实例的权限。

lakeformation:job:exec

执行LakeFormation任务的权限。

support.huaweicloud.com/usermanual-lakeformation/lakeformation_03_00004.html