使用 CDK 将策略附加到 EventBus 并将跨账户事件发送到 Eventbus

Sam*_*sai 3 amazon-web-services amazon-iam aws-cdk aws-event-bridge

我想要做的是将事件从不同的 AWS 帐户发送到我包含 eventbus 的帐户。

为此,我尝试将角色/策略附加到 EventBus,但我无法做到。我尝试使用 grantPutEvents 但也没有运气。这个怎么做?(添加/附加策略)

此外,如果我附加策略,其中主体作为其他 AWS 账户的账户 ID,资源作为 EventBus 的 ARN,这是否允许我发送事件?或者我需要做更多的事情吗?

Dem*_*i95 8

我能够通过使用 CfnEventBusPolicy 基类并按其名称引用相应的总线来添加“基于资源的策略”条目:

const defaultBus = event.EventBus.fromEventBusName(this, 'default-bus', 'default');
new event.CfnEventBusPolicy(this, 'xaccount-policy', {
        statementId: 'AllowXAccountPushEvents',
        action: 'events:PutEvents',
        eventBusName: defaultBus.eventBusName,
        principal: 'account-id-goes-here',
});
Run Code Online (Sandbox Code Playgroud)