すべてのプロダクト
Search
ドキュメントセンター

EventBridge:サービスリンクロール

最終更新日:Jan 11, 2025

このトピックでは、EventBridge のサービスリンクロールの背景情報、ポリシードキュメント、使用上の注意、FAQ について説明します。

背景情報

EventBridge は、機能を実装するために別のAlibaba Cloudサービスにアクセスする必要がある場合があります。この場合、EventBridge は、特定のサービスリンクロールを引き受けて、Alibaba Cloudサービスにアクセスするための権限を取得する必要があります。詳細については、「サービスリンクロール」をご参照ください。

EventBridge は、以下のサービスリンクロールを自動的に作成できます。

AliyunServiceRoleForEventBridgeSendToFC

EventBridge は、AliyunServiceRoleForEventBridgeSendToFC ロールを引き受けて、Function Compute で関数を呼び出す権限を取得します。

次のサンプルコードは、AliyunServiceRoleForEventBridgeSendToFC ロールにアタッチされている AliyunServiceRolePolicyForEventBridgeSendToFC ポリシーのドキュメントを示しています。

{
    "Version": "1",
    "Statement": [
        {
            "Action": [
                "fc:InvokeFunction", // 関数の呼び出し
                "fc:ListServices", // サービスの一覧表示
                "fc:ListFunctions" // 関数の一覧表示
                "fc:ListServiceVersions", // サービスバージョンの一覧表示
                "fc:ListAliases", // エイリアスの一覧表示
                "fc:RegisterEventSource", // イベントソースの登録
                "fc:DeregisterEventSource", // イベントソースの登録解除
                "fc:ListEventSources" // イベントソースの一覧表示
            ],
            "Resource": "*",
            "Effect": "Allow"
        },
        {
            "Action": "ram:DeleteServiceLinkedRole",
            "Resource": "*",
            "Effect": "Allow",
            "Condition": {
                "StringEquals": {
                    "ram:ServiceName": "sendevent-fc.eventbridge.aliyuncs.com"
                }
            }
        }
    ]
}

AliyunServiceRoleForEventBridgeSendToMNS

EventBridge は、AliyunServiceRoleForEventBridgeSendToMNS ロールを引き受けて、Simple Message Queue (formerly MNS) (SMQ) でメッセージを送信および公開するための権限を取得します。

次のサンプルコードは、AliyunServiceRoleForEventBridgeSendToMNS ロールにアタッチされている AliyunServiceRolePolicyForEventBridgeSendToMNS ポリシーのドキュメントを示しています。

{
    "Version": "1",
    "Statement": [
        {
            "Action": [
                "mns:SendMessage", // メッセージの送信
                "mns:GetQueueAttributes", // キュー属性の取得
                "mns:PublishMessage", // メッセージの公開
                "mns:ListQueue", // キューの一覧表示
                "mns:ListTopic", // トピックの一覧表示
                "mns:ReceiveMessage", // メッセージの受信
                "mns:BatchReceiveMessage", // メッセージのバッチ受信
                "mns:PeekMessage", // メッセージのピーク
                "mns:BatchPeekMessage", // メッセージのバッチピーク
                "mns:ChangeMessageVisibility", // メッセージの可視性の変更
                "mns:DeleteMessage" // メッセージの削除
            ],
            "Resource": "*",
            "Effect": "Allow"
        },
        {
            "Action": "ram:DeleteServiceLinkedRole",
            "Resource": "*",
            "Effect": "Allow",
            "Condition": {
                "StringEquals": {
                    "ram:ServiceName": "sendevent-mns.eventbridge.aliyuncs.com"
                }
            }
        }
    ]
}

AliyunServiceRoleForEventBridgeSendToSMS

EventBridge は、AliyunServiceRoleForEventBridgeSendToSMS ロールを引き受けて、Short Message Service (SMS) にアクセスしてテキストメッセージを送信する権限を取得します。

次のサンプルコードは、AliyunServiceRoleForEventBridgeSendToSMS ロールにアタッチされている AliyunServiceRolePolicyForEventBridgeSendToSMS ポリシーのドキュメントを示しています。

{
    "Version": "1",
    "Statement": [
        {
            "Action": [
                "dysms:SendSms", // SMS の送信
                "dysms:SendBatchSms", // SMS のバッチ送信
                "dysms:QuerySendDetails", // 送信詳細のクエリ
                "dysms:QuerySmsSign", // SMS 署名のクエリ
                "dysms:QuerySmsTemplate" // SMS テンプレートのクエリ
            ],
            "Resource": "*",
            "Effect": "Allow"
        },
        {
            "Action": "ram:DeleteServiceLinkedRole",
            "Resource": "*",
            "Effect": "Allow",
            "Condition": {
                "StringEquals": {
                    "ram:ServiceName": "sendevent-sms.eventbridge.aliyuncs.com"
                }
            }
        }
    ]
}

AliyunServiceRoleForEventBridgeSendToDirectMail

EventBridge は、AliyunServiceRoleForEventBridgeSendToDirectMail ロールを引き受けて、Direct Mail にアクセスしてメールを送信する権限を取得します。

次のサンプルコードは、AliyunServiceRoleForEventBridgeSendToDirectMail ロールにアタッチされている AliyunServiceRolePolicyForEventBridgeSendToDirectMail ポリシーのドキュメントを示しています。

{
    "Version": "1",
    "Statement": [
        {
            "Action": [
                "dm:SingleSendMail", // 単一メールの送信
                "dm:BatchSendMail", // メールの一括送信
                "dm:QueryMailAddressByParam" // パラメータによるメールアドレスのクエリ
            ],
            "Resource": "*",
            "Effect": "Allow"
        },
        {
            "Action": "ram:DeleteServiceLinkedRole",
            "Resource": "*",
            "Effect": "Allow",
            "Condition": {
                "StringEquals": {
                    "ram:ServiceName": "sendevent-directmail.eventbridge.aliyuncs.com"
                }
            }
        }
    ]
}

AliyunServiceRoleForEventBridgeSourceRocketMQ

EventBridge は、AliyunServiceRoleForEventBridgeSourceRocketMQ ロールを引き受けて、ApsaraMQ for RocketMQ のリソースにアクセスする権限を取得します。

次のサンプルコードは、AliyunServiceRoleForEventBridgeSourceRocketMQ ロールにアタッチされている AliyunServiceRolePolicyForEventBridgeSourceRocketMQ ポリシーのドキュメントを示しています。

{
    "Version":"1",
    "Statement":[
        {
            "Action":[
                "mq:QueryInstanceBaseInfo", // インスタンスの基本情報のクエリ
                "mq:QueryConsumerStatus", // コンシューマー状態のクエリ
                "mq:SUB" // メッセージの購読
            ],
            "Resource":"*",
            "Effect":"Allow"
        },
        {
            "Action":"ram:DeleteServiceLinkedRole",
            "Resource":"*",
            "Effect":"Allow",
            "Condition":{
                "StringEquals":{
                    "ram:ServiceName":"source-rocketmq.eventbridge.aliyuncs.com"
                }
            }
        }
    ]
}

AliyunServiceRoleForEventBridgeSendToRocketMQ

EventBridge は、AliyunServiceRoleForEventBridgeSendToRocketMQ ロールを引き受けて、ApsaraMQ for RocketMQ にメッセージを公開する権限を取得します。

次のサンプルコードは、AliyunServiceRoleForEventBridgeSendToRocketMQ ロールにアタッチされている AliyunServiceRolePolicyForEventBridgeSendToRocketMQ ポリシーのドキュメントを示しています。

{
    "Version":"1",
    "Statement":[
        {
            "Action":[
                "mq:PUB", // メッセージの公開
                "mq:QueryInstanceBaseInfo", // インスタンスの基本情報のクエリ
                "mq:QueryTopicStatus", // トピック状態のクエリ
                "mq:QueryConsumerAccumulate", // コンシューマー累積のクエリ
                "mq:QueryConsumerStatus" // コンシューマー状態のクエリ
            ],
            "Resource":"*",
            "Effect":"Allow"
        },
        {
            "Action":"ram:DeleteServiceLinkedRole",
            "Resource":"*",
            "Effect":"Allow",
            "Condition":{
                "StringEquals":{
                    "ram:ServiceName":"sendevent-rocketmq.eventbridge.aliyuncs.com"
                }
            }
        }
    ]
}

AliyunServiceRoleForEventBridgeConnectVPC

EventBridge は、AliyunServiceRoleForEventBridgeConnectVPC ロールを引き受けて、Virtual Private Cloud (VPC) のリソースにアクセスする権限を取得します。

次のサンプルコードは、AliyunServiceRoleForEventBridgeConnectVPC ロールにアタッチされている AliyunServiceRolePolicyForEventBridgeConnectVPC ポリシーのドキュメントを示しています。

{
    "Version":"1",
    "Statement":[
        {
            "Action":[
                "vpc:DescribeVpcs", // VPC の記述
                "vpc:DescribeVSwitches", // VSwitch の記述
                "vpc:DescribeVSwitchAttributes" // VSwitch 属性の記述
            ],
            "Resource":"*",
            "Effect":"Allow"
        },
        {
            "Action":[
                "ecs:DescribeSecurityGroups", // セキュリティグループの記述
                "ecs:CreateSecurityGroup", // セキュリティグループの作成
                "ecs:CreateNetworkInterface", // ネットワークインターフェイスの作成
                "ecs:DeleteNetworkInterface", // ネットワークインターフェイスの削除
                "ecs:DescribeNetworkInterfaces", // ネットワークインターフェイスの記述
                "ecs:CreateNetworkInterfacePermission", // ネットワークインターフェイス権限の作成
                "ecs:DescribeNetworkInterfacePermissions", // ネットワークインターフェイス権限の記述
                "ecs:DeleteNetworkInterfacePermission" // ネットワークインターフェイス権限の削除
            ],
            "Resource":"*",
            "Effect":"Allow"
        },
        {
            "Action":"ram:DeleteServiceLinkedRole",
            "Resource":"*",
            "Effect":"Allow",
            "Condition":{
                "StringEquals":{
                    "ram:ServiceName":"connect-vpc.eventbridge.aliyuncs.com"
                }
            }
        }
    ]
}

AliyunServiceRoleForEventBridgeSourceActionTrail

EventBridge は、AliyunServiceRoleForEventBridgeSourceActionTrail ロールを引き受けて、ActionTrail にアクセスして操作レコードをクエリおよび配信する権限を取得します。

次のサンプルコードは、AliyunServiceRoleForEventBridgeSourceActionTrail ロールにアタッチされている AliyunServiceRolePolicyForEventBridgeSourceActionTrail ポリシーのドキュメントを示しています。

{
    "Version": "1",
    "Statement": [
        {
            "Action": [
                "actiontrail:CreateServiceTrail", // サービストレイルの作成
                "actiontrail:DeleteServiceTrail" // サービストレイルの削除
            ],
            "Resource": "*",
            "Effect": "Allow"
        },
        {
            "Action": "ram:DeleteServiceLinkedRole",
            "Resource": "*",
            "Effect": "Allow",
            "Condition": {
                "StringEquals": {
                    "ram:ServiceName": "source-actiontrail.eventbridge.aliyuncs.com"
                }
            }
        }
    ]
}

AliyunServiceRoleForEventBridgeSourceRabbitMQ

EventBridge は、AliyunServiceRoleForEventBridgeSourceRabbitMQ ロールを引き受けて、ApsaraMQ for RabbitMQ のリソースにアクセスする権限を取得します。

次のサンプルコードは、AliyunServiceRoleForEventBridgeSourceRabbitMQ ロールにアタッチされている AliyunServiceRolePolicyForEventBridgeSourceRabbitMQ ポリシーのドキュメントを示しています。

{
    "Version": "1",
    "Statement": [
        {
            "Action": [
                "amqp:ListInstance", // インスタンスの一覧表示
                "amqp:ListVhost", // 仮想ホストの一覧表示
                "amqp:ListExchange", // 交換機の一覧表示
                "amqp:GetVhost", // 仮想ホストの取得
                "amqp:GetExchange", // 交換機の取得
                "amqp:GetQueue", // キューの取得
                "amqp:BasicRecover", // メッセージの回復
                "amqp:BasicCancel", // コンシューマーのキャンセル
                "amqp:BasicConsume", // メッセージの消費
                "amqp:BasicAck", // メッセージの確認応答
                "amqp:BasicNack", // メッセージの否定応答
                "amqp:BasicReject", // メッセージの拒否
                "amqp:QueuePurge", // キューのクリア
                "amqp:BasicGet" // メッセージの取得
            ],
            "Resource": "*",
            "Effect": "Allow"
        },
        {
            "Action": "ram:DeleteServiceLinkedRole",
            "Resource": "*",
            "Effect": "Allow",
            "Condition": {
                "StringEquals": {
                    "ram:ServiceName": "source-rabbitmq.eventbridge.aliyuncs.com"
                }
            }
        }
    ]
}

AliyunServiceRoleForEventBridgeSendToRabbitMQ

EventBridge は、AliyunServiceRoleForEventBridgeSendToRabbitMQ ロールを引き受けて、ApsaraMQ for RabbitMQ にメッセージを公開する権限を取得します。

次のサンプルコードは、AliyunServiceRoleForEventBridgeSendToRabbitMQ ロールにアタッチされている AliyunServiceRolePolicyForEventBridgeSendToRabbitMQ ポリシーのドキュメントを示しています。

{
    "Version":"1",
    "Statement":[
        {
            "Action":[
                "amqp:ListInstance", // インスタンスの一覧表示
                "amqp:ListVhost", // 仮想ホストの一覧表示
                "amqp:ListExchange", // 交換機の一覧表示
                "amqp:GetVhost", // 仮想ホストの取得
                "amqp:CreateExchange", // 交換機の作成
                "amqp:GetExchange", // 交換機の取得
                "amqp:CreateQueue", // キューの作成
                "amqp:GetQueue", // キューの取得
                "amqp:BasicRecover", // メッセージの回復
                "amqp:BasicPublish", // メッセージの公開
                "amqp:BasicAck", // メッセージの確認応答
                "amqp:BasicNack" // メッセージの否定応答
            ],
            "Resource":"*",
            "Effect":"Allow"
        },
        {
            "Action":"ram:DeleteServiceLinkedRole",
            "Resource":"*",
            "Effect":"Allow",
            "Condition":{
                "StringEquals":{
                    "ram:ServiceName":"sendevent-rabbitmq.eventbridge.aliyuncs.com"
                }
            }
        }
    ]
}

AliyunServiceRoleForEventBridgeSourceKafka

EventBridge は、AliyunServiceRoleForEventBridgeSourceKafka ロールを引き受けて、ApsaraMQ for Kafka のリソースにアクセスする権限を取得します。

次のサンプルコードは、AliyunServiceRoleForEventBridgeSourceKafka ロールにアタッチされている AliyunServiceRolePolicyForEventBridgeSourceKafka ポリシーのドキュメントを示しています。

{
  "Version": "1",
  "Statement": [
    {
      "Effect": "Allow",
      "Action": [
        "alikafka:ListInstance", // インスタンスの一覧表示
        "alikafka:ListSaslUser" // SASL ユーザーの一覧表示
      ],
      "Resource": "*"
    },
    {
      "Effect": "Allow",
      "Action": "ram:DeleteServiceLinkedRole",
      "Resource": "*",
      "Condition": {
        "StringEquals": {
          "ram:ServiceName": "source-kafka.eventbridge.aliyuncs.com"
        }
      }
    }
  ]
}

AliyunServiceRoleForEventBridgeSendToKafka

EventBridge は、AliyunServiceRoleForEventBridgeSendToKafka ロールを引き受けて、ApsaraMQ for Kafka にメッセージを公開する権限を取得します。

次のサンプルコードは、AliyunServiceRoleForEventBridgeSendToKafka ロールにアタッチされている AliyunServiceRolePolicyForEventBridgeSendToKafka ポリシーのドキュメントを示しています。

{
  "Version": "1",
  "Statement": [
    {
      "Effect": "Allow",
      "Action": [
        "alikafka:ListInstance", // インスタンスの一覧表示
        "alikafka:ListSaslUser" // SASL ユーザーの一覧表示
      ],
      "Resource": "*"
    },
    {
      "Effect": "Allow",
      "Action": "ram:DeleteServiceLinkedRole",
      "Resource": "*",
      "Condition": {
        "StringEquals": {
          "ram:ServiceName": "sendevent-kafka.eventbridge.aliyuncs.com"
        }
      }
    }
  ]
}

AliyunServiceRoleForEventBridgeSendToRDS

EventBridge は、AliyunServiceRoleForEventBridgeSendToRDS ロールを引き受けて、ApsaraDB RDS にデータを配信する権限を取得します。

次のサンプルコードは、AliyunServiceRoleForEventBridgeSendToRDS ロールにアタッチされている AliyunServiceRolePolicyForEventBridgeSendToRDS ポリシーのドキュメントを示しています。

{
    "Version": "1",
    "Statement": [
        {
            "Action": [
                "rds:DescribeDBInstanceAttribute", // DB インスタンス属性の記述
                "rds:DescribeDatabases", // データベースの記述
                "rds:DescribeAccounts" // アカウントの記述
            ],
            "Resource": "*",
            "Effect": "Allow"
        },
        {
            "Action": "ram:DeleteServiceLinkedRole",
            "Resource": "*",
            "Effect": "Allow",
            "Condition": {
                "StringEquals": {
                    "ram:ServiceName": "sendevent-rds.eventbridge.aliyuncs.com"
                }
            }
        }
    ]
}

AliyunServiceRoleForEventBridgeSourceCMS

EventBridge は、AliyunServiceRoleForEventBridgeSourceKafka ロールを引き受けて、CloudMonitor のリソースにアクセスする権限を取得します。

次のサンプルコードは、AliyunServiceRoleForEventBridgeSourceCMS ロールにアタッチされている AliyunServiceRolePolicyForEventBridgeSourceCMS ポリシーのドキュメントを示しています。

{
    "Version": "1",
    "Statement": [
        {
            "Effect": "Allow",
            "Action": [
                "cms:DescribeSystemEventAttribute", // システムイベント属性の記述
                "cms:DescribeSystemEventCount", // システムイベント数の記述
                "cms:DescribeSystemEventHistogram" // システムイベントヒストグラムの記述
            ],
            "Resource": "*"
        },
        {
            "Action": "ram:DeleteServiceLinkedRole",
            "Resource": "*",
            "Effect": "Allow",
            "Condition": {
                "StringEquals": {
                    "ram:ServiceName": "source-cms.eventbridge.aliyuncs.com"
                }
            }
        }
    ]
}

AliyunServiceRoleForEventBridgeSendToSAE

EventBridge は、AliyunServiceRoleForEventBridgeSendToSAE ロールを引き受けて、Serverless App Engine (SAE) にアクセスし、SAE にデータを配信します。

次のサンプルコードは、AliyunServiceRoleForEventBridgeSendToSAE ロールにアタッチされている AliyunServiceRolePolicyForEventBridgeSendToSAE ポリシーのドキュメントを示しています。

{
    "Version": "1",
    "Statement": [
        {
            "Action": [
              "sae:ExecJob" // ジョブの実行
            ],
            "Resource": "*"
            "Effect": "Allow"
        },
        {
            "Action": "ram:DeleteServiceLinkedRole",
            "Resource": "*",
            "Effect": "Allow",
            "Condition": {
                "StringEquals": {
                    "ram:ServiceName": "sendevent-sae.eventbridge.aliyuncs.com"
                }
            }
        }
    ]
}

AliyunServiceRoleForEventBridgeSourceMqtt

EventBridge は、AliyunServiceRoleForEventBridgeSourceCMS ロールを引き受けて、ApsaraMQ for MQTT のリソースにアクセスする権限を取得します。

次のサンプルコードは、AliyunServiceRoleForEventBridgeSourceMqtt ロールにアタッチされている AliyunServiceRolePolicyForEventBridgeSourceMqtt ポリシーのドキュメントを示しています。

{
    "Version": "1",
    "Statement": [
        {
            "Action": [
                "mq:SUB" // メッセージの購読
            ],
            "Resource": "*",
            "Effect": "Allow"
        },
        {
            "Action": "ram:DeleteServiceLinkedRole",
            "Resource": "*",
            "Effect": "Allow",
            "Condition": {
                "StringEquals": {
                    "ram:ServiceName": "source-mqtt.eventbridge.aliyuncs.com"
                }
            }
        }
    ]
}

使用上の注意

サービスリンクロールを削除すると、EventBridge は対応する Alibaba Cloud サービスにイベントを公開できなくなります。ご注意ください。対応する機能を使用するには、必要なロールを再作成する必要があります。詳細については、「サービスリンクロールの作成」をご参照ください。

サービスリンクロールの削除方法については、「サービスリンクロールの削除」をご参照ください。

FAQ

Resource Access Management (RAM) ユーザーのために EventBridge のサービスリンクロールが自動的に作成されないのはなぜですか。

Alibaba Cloudアカウントにサービスリンクロールが作成されている場合、RAMユーザーはAlibaba Cloudアカウントのサービスリンクロールを継承します。RAMユーザーがサービスリンクロールを継承できない場合は、RAMコンソールにログインし、次のカスタムポリシーを作成して、RAMユーザーにアタッチします。

{
    "Version":"1",
    "Statement":[
        {
            "Action":"ram:CreateServiceLinkedRole", // サービスリンクロールの作成
            "Resource":"acs:ram:*:Alibaba Cloud account ID:role/*",
            "Effect":"Allow",
            "Condition":{
                "StringEquals":{
                    "ram:ServiceName":[
                        "sendevent-fc.eventbridge.aliyuncs.com",
                        "sendevent-mns.eventbridge.aliyuncs.com",
                        "sendevent-sms.eventbridge.aliyuncs.com",
                        "sendevent-directmail.eventbridge.aliyuncs.com",
                        "source-rocketmq.eventbridge.aliyuncs.com",
                        "source-mns.eventbridge.aliyuncs.com",
                        "source-cms.eventbridge.aliyuncs.com",
                        "source-mqtt.eventbridge.aliyuncs.com",
                        "source-sls.eventbridge.aliyuncs.com",
                        "sendevent-sae.eventbridge.aliyuncs.com",
                        "sendevent-rocketmq.eventbridge.aliyuncs.com",
                        "connect-vpc.eventbridge.aliyuncs.com",
                        "source-actiontrail.eventbridge.aliyuncs.com",
                        "source-rabbitmq.eventbridge.aliyuncs.com",                      
                        "sendevent-rabbitmq.eventbridge.aliyuncs.com",
                        "source-kafka.eventbridge.aliyuncs.com",
                        "sendevent-kafka.eventbridge.aliyuncs.com",
                        "sendevent-rds.eventbridge.aliyuncs.com",
                        "sendevent-arms.eventbridge.aliyuncs.com"
                    ]
                }
            }
        }
    ]
}
説明

Alibaba Cloud account ID をAlibaba Cloudアカウントの ID に置き換えます。

カスタムポリシーをRAMユーザーにアタッチした後も、RAMユーザーのサービスリンクロールが自動的に作成されない場合は、AliyunEventBridgeFullAccess ポリシーをRAMユーザーにアタッチします。RAMユーザーにアタッチされたサンプルポリシーについては、「ポリシーと例」をご参照ください。