diff --git a/packages/@aws-cdk/aws-events/lib/rule.ts b/packages/@aws-cdk/aws-events/lib/rule.ts index ee9a5b60f8052..1420a87627f8b 100644 --- a/packages/@aws-cdk/aws-events/lib/rule.ts +++ b/packages/@aws-cdk/aws-events/lib/rule.ts @@ -397,7 +397,7 @@ export class Rule extends Resource implements IRule { }); new CfnEventBusPolicy(eventBusPolicyStack, 'GivePermToOtherAccount', { action: 'events:PutEvents', - statementId: `Allow-account-${sourceAccount}`, + statementId: `Allow-account-${sourceAccount}-${this.node.addr}`, principal: sourceAccount, }); } diff --git a/packages/@aws-cdk/aws-events/test/rule.test.ts b/packages/@aws-cdk/aws-events/test/rule.test.ts index 10bf6f3839518..84f7c03f81d11 100644 --- a/packages/@aws-cdk/aws-events/test/rule.test.ts +++ b/packages/@aws-cdk/aws-events/test/rule.test.ts @@ -901,6 +901,7 @@ describe('rule', () => { const app = new cdk.App(); const sourceAccount = '123456789012'; + const nodeAddr = 'c810f4680339b01edf1f157c4fd07da73469742773'; const sourceStack = new cdk.Stack(app, 'SourceStack', { env: { account: sourceAccount, @@ -982,7 +983,7 @@ describe('rule', () => { const eventBusPolicyStack = app.node.findChild(`EventBusPolicy-${sourceAccount}-us-west-2-${targetAccount}`) as cdk.Stack; Template.fromStack(eventBusPolicyStack).hasResourceProperties('AWS::Events::EventBusPolicy', { 'Action': 'events:PutEvents', - 'StatementId': `Allow-account-${sourceAccount}`, + 'StatementId': `Allow-account-${sourceAccount}-${nodeAddr}`, 'Principal': sourceAccount, }); });