跨项目推送 pub sub 和防火墙规则

Cross project push pub sub and firewall rules

我有一个项目,称之为Project A。我已经创建了对 Project B 拥有的 Pub/Sub 主题的订阅。此订阅配置为向我的端点传送推送通知。我想创建一些防火墙规则来限制对处理 pub/sub 通知的实例的访问,以便在传递通知时只有 Google 可以访问这些实例。我不希望主机有任何其他入站流量。我该怎么做?

我认为这不可能。从 https://cloud.google.com/pubsub/docs/subscriber#pubsub-pull-messages-csharp

Currently the only supported endpoint is an HTTPS server that can accept Webhook delivery. Note that the HTTPS URL for the Webhook must be accessible from the public web. The receiving endpoint may be decoupled from the Pub/Sub subscription; so messages from multiple subscriptions may be sent to a single endpoint.

回答可能与您相关的较大问题:

如何防止攻击者向我的端点发布虚假消息?

该问题的答案是在项目 A 和项目 B 之间共享一个秘密,并在消息属性中包含该秘密的工件。使用私钥对消息进行签名,并将签名包含在属性中。然后,端点接收消息并根据 public 密钥验证签名。