教程:数据开发前的RAM用户授权与数据库账号准备

更新时间:

使用RAM用户登录阿里云控制台访问云资源时,认证实体为RAM用户,需要为RAM用户授予云资源的相关权限。而云原生数据仓库 AnalyticDB MySQL 版数据库是通过数据库账号鉴权认证。因此在使用RAM用户开发AnalyticDB for MySQL数据前,您需要参考本文档为其授予集群的管理权限(例如AliyunADBFullAccess)和数据库的操作权限(例如读写、变更等),以确保RAM用户能正常访问集群并成功读写数据。

步骤一:为RAM用户授权

RAM用户在开发SQL作业和Spark作业时,需要具备不同的权限。所需权限及授权方法如下:

RAM用户开发XIHE SQL作业

所需权限

AliyunADBFullAccess:管理AnalyticDB for MySQL集群的权限。

授权方法

使用阿里云主账号为RAM用户授权

RAM用户开发Spark作业

所需权限

  • AliyunADBFullAccess:管理AnalyticDB for MySQL集群的权限。

  • AliyunADBSparkProcessingDataRole:用于授权AnalyticDB for MySQL Spark访问同账号下的其他云资源,如访问OSS目录,OTS数据等。

  • 访问其他阿里云账号资源的权限(非必需):例如,阿里云账号A(主账号)需要跨账号访问阿里云账号B(主账号)中的数据,需要为B账号创建RAM角色,为A账号创建RAM用户,并允许RAM用户扮演B账号创建RAM角色,完成数据开发。

授权方法

使用阿里云主账号为RAM用户授权。授权方法,请参见RAM用户授权账号授权

步骤二:创建数据库普通账号

  1. 登录云原生数据仓库AnalyticDB MySQL控制台

  2. 在集群的账号管理 > 用户账号页面,单击创建账号

  3. 账号类型下拉列表中,选择普通账号,配置账号名称、密码等参数后,单击确定

详细步骤请参见创建数据库账号

步骤三:为数据库普通账号授权

数据库普通账号默认无任何库、表的权限。您可以通过XIHE SQL或登录AnalyticDB for MySQL控制台,手动为数据库普通账号授予库、表的操作权限。

  1. 用户账号页面,单击普通账号对应操作列的权限,在下拉列表中单击编辑权限

  2. 授权层级下拉列表和权限配置区域中,选择权限级别以及对应的权限,然后单击image按钮。

    image

  3. 单击确定,完成授权。

通过SQL语句授权的方法以及控制台授权的详细步骤请参见GRANT授权数据库账号

步骤四:绑定RAM用户与数据库账号

通过AnalyticDB for MySQL控制台开发数据时,AnalyticDB for MySQL会校验当前登录的RAM用户是否具有访问AnalyticDB for MySQL数据的权限,因此,需要将创建的数据库普通账号与RAM用户绑定,以确保RAM用户可以正常读写库表数据。

  1. 用户账号页面,单击目标账号操作列的RAM绑定管理

  2. RAM绑定管理面板中,输入RAM账号ID,并单击确定

    说明

    绑定后,AnalyticDB for MySQL在执行所有操作前,都会基于当前RAM用户和数据库账号的绑定关系来判断是否有足够权限。如果您想要使用其他RAM用户完成数据开发,可以参考后续步骤修改绑定关系。

详细步骤请参见绑定RAM用户与数据库账号

后续步骤

若无需再使用RAM用户开发数据、或想修改数据库普通账号与RAM用户的绑定关系,您可以修改、解除RAM用户与数据库普通账号的绑定关系或直接删除数据库普通账号。

换绑或解绑RAM用户

  1. 用户账号页面,单击目标账号操作列的RAM绑定管理

  2. RAM绑定管理面板中,单击RAM账号ID后的image按钮。

  3. 输入新RAM用户的RAM账号ID。仅修改绑定关系时执行该操作,解绑RAM用户可跳过该步骤。

  4. 单击确定

详细步骤请参见解绑或换绑RAM用户与数据库账号

删除数据库普通账号

  1. 进入账号管理 > 用户账号页面。

  2. 单击普通账号对应操作列的删除,删除数据库普通账号。