Amazon web services 如何跨帐户使用AWS CDK创建VpcEndpointService和InterfaceVpcEndpoint?

Amazon web services 如何跨帐户使用AWS CDK创建VpcEndpointService和InterfaceVpcEndpoint?,amazon-web-services,amazon-ec2,amazon-vpc,aws-cdk,Amazon Web Services,Amazon Ec2,Amazon Vpc,Aws Cdk,我想在帐户a中创建一个VpcEndpointService,它将在那里的专有网络中提供服务。我希望在帐户B中有一个InterfaceVpcEndpoint(或CfnVPCEndpoint,如有必要),它将连接到端点服务。我认为这应该允许在帐户B的VPC中运行的服务连接到帐户A中运行的服务,而不需要通过internet进行通信。(我不能使用VPC对等,因为VPC有重叠的CIDR) 在账户A中: export class StackA extends Stack { public reado

我想在帐户a中创建一个
VpcEndpointService
,它将在那里的专有网络中提供服务。我希望在帐户B中有一个
InterfaceVpcEndpoint
(或
CfnVPCEndpoint
,如有必要),它将连接到端点服务。我认为这应该允许在帐户B的VPC中运行的服务连接到帐户A中运行的服务,而不需要通过internet进行通信。(我不能使用VPC对等,因为VPC有重叠的CIDR)

在账户A中:

export class StackA extends Stack {
    public readonly vpcEndpointService: VpcEndpointService;

    ...

    this.vpcEndpointService = new VpcEndpointService(this, 'MyEndpoint', {...});
在账户B中:

export interface StackBConfig {
    vpcEndpointService: VpcEndpointService;
}

new InterfaceVpcEndpoint(this, 'VPCEndpoint', {
  service: new InterfaceVpcEndpointService(config.vpcEndpointService.vpcEndpointServiceName),
  ...
});
但是,当我尝试合成时,会收到以下错误消息:

错误:堆栈“StackB”无法使用来自堆栈的交叉引用 “斯塔卡”。只有堆栈支持跨堆栈引用 部署到同一环境或嵌套堆栈及其 父堆栈


如何使用CDK创建VPC服务及其使用端点?我需要能够从第二个帐户中引用VPCEndpointService(或服务名称),但我不知道如何做到这一点。

我没有答案,但我只想说我现在遇到了同样的问题。我遇到了类似的情况,我只能从堆栈(应用程序)A导出VPCEndpointService名称,但VPCEndpoint需要整个对象,而不仅仅是名称