如何保护由GCS触发的App Engine发布/订阅推送端点?

时间:2019-08-28 09:28:07

标签: google-app-engine google-cloud-platform google-cloud-storage google-cloud-pubsub

我试图找到一种方法来保护我的Google Cloud App Engine标准环境终结点,该终结点订阅到由在Google Cloud Storage上创建文件而触发的推送发布/订阅主题。

由于只能将IP地址设置为App Engine的防火墙规则,并且pub / sub没有预定义的IP地址集,因此无法使用此功能。由于我无法控制pub / sub请求,因此也无法在pub / sub调用上使用自定义标头并在应用程序引擎上检查其有效性。

关于如何保护App Engine端点的任何建议?

谢谢

1 个答案:

答案 0 :(得分:0)

Cloud Pub / Sub推送在基于IP的防火墙规则中不能很好地发挥作用。使推送通知基于IP地址的安全性不是最有效的方法

  

OAuth和服务帐户可用于验证对的Google产品的访问权限,例如Cloud Pub/Sub。只要未将特定服务帐户中未包括在内的外人,就可以阻止外人访问您的Pub / Sub API。

此外,为了确保您的推送通知的安全,我将采用以下两种解决方案之一:

  
    

确认推送通知源自Cloud Pub / Sub 。您可以配置 endpoints ,使其仅接受包含机密token的邮件。

         

设置您自己的推送代理。一个简单的无状态服务可能会从Pub / Sub中提取消息,并将消息从固定IP地址推送到您的Webhook。 Pub / Sub通过提供可伸缩性和可用性在此设置中提供价值。

  

此外,我不确定您是否已经完全实现了该功能并且无法正常工作,但是来自另一个Stackoverflow问题的此link可能会有所帮助