Прикрепите политику к EventBus с помощью CDK и отправьте события кросс-аккаунта в Eventbus

Я пытаюсь отправить событие из другой учетной записи AWS в мою учетную запись, которая содержит шину событий.

Для этого я пытаюсь привязать роль / политику к EventBus, но не могу. Я попытался использовать grantPutEvents, но и там не повезло. Как это сделать? (добавить / прикрепить Политику)

Также, если я прикреплю политику с принципалом в качестве идентификатора учетной записи другой учетной записи AWS и ресурса в качестве ARN EventBus, позволит ли это мне отправлять события? Или мне нужно сделать что-то еще?

2 ответа

Я знаю, что эта ветка довольно старая, и вы, вероятно, тем временем нашли решение самостоятельно, но я просто хотел оставить свое решение для всех, кто сталкивается с этой проблемой, особенно потому, что я не нашел никакой другой информации об этом в Интернете.

Мне удалось добавить запись «Политика на основе ресурсов», используя базовый класс 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',
});

Тебе нужно:

  • Учетная запись отправителя: правило EventBridge для шины событий отправителя. целью правила является шина событий в учетной записи-получателе
  • Учетная запись получателя: обновите политику на основе ресурсов шины событий получателя, чтобы позволить учетной записи отправителя помещать события

эта ссылка https://docs.aws.amazon.com/eventbridge/latest/userguide/eb-cross-account.html должна вам помочь.

Другие вопросы по тегам