事件总线EventBridge的权限管理是通过阿里云的访问控制RAM(Resource Access Management)产品实现的。使用RAM可以让您避免与其他用户共享云账号密钥,即AccessKey(包含AccessKey ID和AccessKey Secret),按需为用户分配最小权限。本文介绍事件总线EventBridge在RAM中的权限策略和示例。

背景信息

在RAM中,权限策略是用权限策略语法和结构描述的一组权限的集合,可以精确地描述被授权的Resource(资源集)、Action(操作集)以及授权条件。更多信息,请参见权限策略语法和结构

事件总线EventBridge支持的RAM的权限策略有以下类型:

  • 系统策略

    系统策略统一由阿里云创建,您只能使用不能修改,策略的版本更新由阿里云维护。

  • 自定义策略

    自定义策略可由您自主创建、更新和删除,策略的版本更新由您自己维护。您需到RAM控制台编辑相应权限策略,再给相应用户授予该权限。

注意事项

  • 对资源进行增删改查操作的API是一对一(One Action over One Resource)的权限校验。
  • 在执行鉴权的时候需要对资源进行Action校验。例如UpdateRule API需要验证访问者具备eventbus/$eventbus的UpdateRule Action权限。

系统策略

事件总线EventBridge提供以下系统默认的权限策略。

权限策略名称 说明
AliyunEventBridgeFullAccess 事件总线EventBridge的管理权限,等同于阿里云账号的权限,被授予该权限的RAM用户可执行发布事件和控制台所有操作。
AliyunEventBridgeReadOnlyAccess 事件总线EventBridge的只读权限,被授予该权限的RAM用户仅可通过访问控制台或调用API读取资源信息。
AliyunEventBridgeResourceCreatePolicy 事件总线EventBridge的创建资源权限,被授予该权限的RAM用户可通过访问控制台或调用API创建资源。
AliyunEventBridgeResourceUpdatePolicy 事件总线EventBridge的编辑资源权限,被授予该权限的RAM用户仅可通过访问控制台或调用API编辑资源。
AliyunEventBridgeResourceDeletePolicy 事件总线EventBridge的删除资源权限,被授予该权限的RAM用户仅可通过访问控制台或调用API删除资源。
AliyunEventBridgePutEventsPolicy 事件总线EventBridge的发布事件权限,被授予该权限的RAM用户仅可通过访问控制台或调用API发布事件。

自定义策略

自定义策略可以满足您更细粒度的授权需求。事件总线EventBridge提供以下自定义策略。

API Action Resource
CreateEventBus eventbridge:CreateEventBus acs:eventbridge:$regionId:$accountId:eventbus/*
GetEventBus eventbridge:GetEventBus acs:eventbridge:$regionId:$accountId:eventbus/$eventbus
DeleteEventBus eventbridge:DeleteEventBus acs:eventbridge:$regionId:$accountId:eventbus/$eventbus
ListEventBuses eventbridge:ListEventBuses acs:eventbridge:$regionId:$accountId:eventbus/*
CreateRule eventbridge:CreateRule acs:eventbridge:$regionId:$accountId:eventbus/$eventbus/rule/*
GetRule eventbridge:GetRule acs:eventbridge:$regionId:$accountId:eventbus/$eventbus/rule/$rule
UpdateRule eventbridge:UpdateRule acs:eventbridge:$regionId:$accountId:eventbus/$eventbus/rule/$rule
EnableRule eventbridge:EnableRule acs:eventbridge:$regionId:$accountId:eventbus/$eventbus/rule/$rule
DisableRule eventbridge:DisableRule acs:eventbridge:$regionId:$accountId:eventbus/$eventbus/rule/$rule
DeleteRule eventbridge:DeleteRule acs:eventbridge:$regionId:$accountId:eventbus/$eventbus/rule/$rule
ListRules eventbridge:ListRules acs:eventbridge:$regionId:$accountId:eventbus/$eventbus/rule/*
UpdateTargets eventbridge:UpdateTargets acs:eventbridge:$regionId:$accountId:eventbus/$eventbus/rule/$rule
DeleteTargets eventbridge:DeleteTargets acs:eventbridge:$regionId:$accountId:eventbus/$eventbus/rule/$rule
ListTargets eventbridge:ListTargets acs:eventbridge:$regionId:$accountId:eventbus/$eventbus/rule/$rule
PutEvents eventbridge:PutEvents acs:eventbridge:$regionId:$accountId:eventbus/$eventbus

自定义策略示例

授权管理事件总线权限策略,请按以下示例设置。

{
    "Statement":[
        {
            "Effect":"Allow",
            "Action":[
                "eventbridge:CreateEventBus",
                "eventbridge:GetEventBus",
                "eventbridge:DeleteEventBus",
                "eventbridge:ListEventBuses"
            ],
            "Resource":"acs:eventbridge:*:*:eventbus/*"
        }
    ],
    "Version":"1"
}