创建腾讯云存储连接

本步骤的目标是:允许 Lakehouse 集群访问腾讯上的对象存储 COS。为了完成这个目标,可以通过腾讯云访问管理提供的两种身份认证方式:访问密钥角色授权

基于访问密钥

CREATE STORAGE CONNECTION my_conn 
  TYPE COS
  ACCESS_KEY = '<access_key>'
  SECRET_KEY = '<secret_key>'
  REGION = 'ap-shanghai'
  APP_ID = '1310000503';

参数:

  • TYPE:为对象存储类型,腾讯云应填写 COS(大小写不限)

  • ACCESS_KEY / SECRET_KEY:为腾讯云的访问密钥,获取方式参考:访问密钥

  • REGION:指腾讯云对象存储 COS 的数据中心所在的地域。相同地域内云器Lakehouse访问腾讯云COS时,COS服务将自动路由至内网访问。具体取值请参考腾讯云文档:地域和访问域名

  • APP_ID:腾讯云存储桶的命名由存储桶名称(BucketName)和 APPID 两部分组成,两者以中划线“-”相连。例如 examplebucket-1310000503,其中 examplebucket 为用户自定义,1310000503 为系统生成数字串(APPID)。

基于角色授权

STEP1: 数据创建权限策略 (LakehouseAccess ):

  • 登录腾讯云,进入访问管理产品控制台
  • 访问管理页面左侧导航栏进入策略,在权限控制界面选择 新建自定义策略 -> 按策略生成器创建 -> 可视化策略生成器
  • 可视化策略生成器页签中:服务Service): 选择 对象存储(cos);操作(Action):选择全部操作(可根据实际需要的操作,做更细粒度的选择);资源(Resource):根据需要选择全部资源或者特定资源。本示例中选择特定资源,为上海区的 cz-volume-sh-1311343935
  • 点击下一步,填写策略名称为 LakehouseAccess 和描述后,点击完成

STEP2:客户侧创建角色(LakehouseRole)

  • 进入腾讯云访问管理产品控制台
  • 访问管理页面左侧导航栏进入角色 -> 新建角色 -> 腾讯云账户, 选择其他主账号,在 账号ID 中输入 100029595716(云器的腾讯云主账号),其它选项保持默认,点击下一步
  • 配置角色策略配置中,将刚才新建的 LakehouseAccess 自定义策略授权给当前角色。点击下一步,在角色命名中填写 LakehouseRole 完成创建。
  • 创建成功后,在角色列表中,进入角色 LakehouseRole 的详情页,获取该角色的 RoleARN 信息:  qcs::cam::uin/1000*******:roleName/LakehouseRole

STEP3:Lakehouse 侧创建 Connection

  • 在 Studio 或者 Lakehouse JDBC 客户端中执行以下命令:
CREATE STORAGE CONNECTION my_tx_connection_arn
   TYPE cos
   REGION = 'ap-shanghai'
   ROLE_ARN = 'qcs::cam::uin/1000********:roleName/LakehouseRole'
   APP_ID = '131****35';
  • 在创建存储连接的过程中,Lakehouse 会生成此EXTERNAL ID,可以将此EXTERNAL ID 配置到 COS 账号的角色校验中实现访问控制:
-- 查看 EXTERNAL ID 
DESC CONNECITON my_tx_connection_arn ;

  • 客户侧:进入腾讯云访问管理控制台中,角色 -> LakehouseRole -> 角色载体-> 管理载体,选择 添加账户 -> 选择当前主账号,并填写主账号ID:100029595716(云器的腾讯云主账号),并勾选开启校验,输入刚才 DESC 结果中的 EXTERNAL_ID,点击 确定-> 更新

联系我们
预约咨询
微信咨询
电话咨询