当您需通过事件源如对象存储OSS触发函数执行时,可授予该事件源触发函数的权限,该权限是触发器级别的,每个触发器的角色均可以被授予相应权限,该角色也可以同时被授予不同触发器。本文以授予OSS访问函数计算的权限为例,介绍授予事件源访问函数计算权限的应用场景和操作步骤。

应用场景

以OSS事件源触发函数计算代码执行为例,当存在一个OSS Bucket A和函数B,需要将此Bucket A的上传文件事件触发函数计算的函数B时,您需要创建一个OSS触发器并授予相应权限策略。访问控制提供系统授权策略AliyunOSSEventNotificationRole,该策略具有OSS事件源触发函数计算代码执行的权限。在创建触发器时,您可以为触发器绑定一个角色,既可以新建一个新角色也可以使用已有角色。然后将策略AliyunOSSEventNotificationRole绑定到该角色内,成功绑定该策略后OSS事件源就可以触发函数计算代码执行。buhuoshijianyuanfangshujisuan

操作步骤

  1. 登录函数计算控制台
  2. 在函数详情页面,单击触发器管理页签,从版本或别名下拉列表选择要创建触发器的版本或别名,然后单击创建触发器
    创建触发器
  3. 在创建触发器面板,填写相关信息。然后单击确定
    说明 其他类型的触发器的权限配置过程基本一致,按需选择相应的服务类型即可。HTTP触发器事件源在您创建HTTP函数时已成功创建。
    参数 操作 本文示例
    触发器类型 选择对象存储 OSS 对象存储 OSS
    名称 填写自定义的触发器名称。 oss-trigger
    版本或别名 默认值为LATEST,如果您需要创建其他版本或别名的触发器,需先在函数详情页的版本或别名下拉列表选择该版本。关于版本简介,请参见版本简介 LATEST
    Bucket 名称 选择已创建的OSS Bucket。 bucket-zh****
    文件前缀 输入要匹配的文件名称的前缀。强烈建议您配置前缀和后缀,避免触发事件嵌套循环触发引起额外费用。另外,一个Bucket的不同触发器如果指定了相同的事件类型,则前缀和后缀不能重复。详细信息,请参见。 source
    文件后缀 输入要匹配的文件名称的后缀。强烈建议您配置前缀和后缀,避免触发事件嵌套循环触发引起额外费用。另外,一个Bucket的不同触发器如果指定了相同的事件类型,则前缀和后缀不能重复。详细信息,请参见。 zip

    触发事件

    选择一个或多个触发事件。关于对象存储OSS的事件类型,请参见OSS事件定义

    本示例选择oss:ObjectCreated:PutObject

    oss:ObjectCreated:PutObject
    角色名称 选择AliyunOSSEventNotificationRole
    说明 如果您第一次创建该类型的触发器,则需要在单击确定后,在弹出的对话框中选择立即授权
    AliyunOSSEventNotificationRole
  4. 单击确定