更新时间:2023-07-06 GMT+08:00

配置委托权限

概述

大部分场景下,FunctionGraph都需要与其他云服务协同工作,通过创建云服务委托,让FunctionGraph以您的身份使用其他云服务,代替您进行一些资源运维工作。

应用场景

若您在FunctionGraph服务中使用如下场景,请先创建委托,对应授权项参见表1 常见授权项选择进行选择。

表1 常见授权项选择

场景

授权项

说明

使用自定义镜像

SWR Admin

SWR Admin:容器镜像服务(SWR)管理员,拥有该服务下的所有权限。

如何创建自定义镜像,请参见使用容器镜像部署函数

挂载sfs turbo文件系统

SFS Administrator或Tenant administrator

SFS Administrator:弹性文件服务(SFS)管理员,拥有该服务下的所有权限。

Tenant administrator:全部云服务管理员(除IAM管理权限),拥有该权限的用户可以对企业拥有的所有云资源执行任意操作。

如何挂载挂载sfs turbo文件系统,请参见添加sfs turbo文件系统

挂载ECS共享目录

Tenant Guest及VPC Administrator

Tenant Guest:全部云服务只读权限(除IAM权限)

VPC Administrator:网络管理员

需要给函数设置委托至少拥有Tenant Guest以及VPC Administrator权限。

如何挂载ECS共享目录,请参见添加ECS共享目录

配置跨域VPC访问

VPC Administrator

拥有VPC Administrator权限的用户可以对VPC内所有资源执行任意操作。在函数配置跨VPC访问时,则函数必须配置具备VPC管理权限的委托。

如何配置跨域VPC访问,请参见配置网络

创建OBS桶和OBS触发器

Tenant Administrator

Tenant administrator:全部云服务管理员(除IAM管理权限),拥有该权限的用户可以对企业拥有的所有云资源执行任意操作。

如何创建OBS触发器,请参见使用OBS触发器

创建委托

如下示例表示:为FuntionGraph赋予Tenant Administrator权限,仅在授权区域生效。

按照如下参数设置委托,创建委托的具体步骤请参见如何创建委托

  1. 登录统一身份认证服务(IAM)控制台。
  2. 在统一身份认证服务(IAM)的左侧导航窗格中,选择“委托”页签,单击右上方的“+创建委托”。
    图1 创建委托
  3. 开始配置委托。
    图2 填写基本信息
    • 委托名称:serverless-trust。
    • 委托类型:选择“云服务”。
    • 云服务:选择“函数工作流 FunctionGraph”。
    • 持续时间:选择“永久”。
    • 描述:填写描述信息。
  1. 单击“下一步”,进入委托选择页面,在右方搜索框中搜索需要添加的权限并勾选。此处以添加Tenant Administrator权限为例。
    图3 选择策略
    表2 委托权限示例

    权限名称

    使用描述/场景

    Tenant Administrator

    全部云服务管理员(除IAM管理权限),拥有该权限的用户可以对企业拥有的所有云资源执行任意操作。

  2. 单击“下一步”,选择权限的作用范围。

配置函数委托

  1. 登录函数工作流控制台,在左侧的导航栏选择“函数 > 函数列表”。
  2. 选择待配置的函数,单击进入函数详情页。
  3. 选择“设置 > 权限”,单击“创建委托”,参见2~5,根据实际业务场景,配置函数委托。
    表3 配置函数委托参数说明

    参数

    说明

    函数配置委托

    选择已创建的函数委托。

    函数执行委托

    勾选“为函数执行单独设置委托”,需配置此参数。

    • 在创建函数过程中选择委托时,勾选“为函数执行单独设置委托”时,弹出“函数执行委托”,函数执行委托与函数配置委托可独立设置,这将减小不必要的性能损耗;不勾选时,函数执行委托和函数配置委托将使用同一委托,即使用同一个选择的委托或不使用任何委托。如图4所示。
      图4 设置委托
    • 函数配置委托,比如函数需要创建DIS触发器,则需要配置具有DIS访问权限的委托。当没有使用任何函数配置委托或者函数配置委托不存在时,不能创建DIS触发器。
    • 函数执行委托配置后用户可以通过函数执行入口方法中的context参数获取具有委托中权限的token、AK、SK,用于访问其他云服务。
  1. 配置完成后单击“保存”。

修改委托

修改委托:如果需要修改委托的权限、持续时间、描述等,可以在IAM控制台修改委托。

FunctionGraph相关委托修改后,约10分钟生效(如context.getToken更新)。