我正在使用一个服务,它将通过HTTP请求将数据转发到您选择的URL。
有什么简单的方法可以用一篇文章发布到Pubsub上吗?我使用的服务(Hologram.io. so的高级Webhook Builder)不能存储任何文件,所以我不能上传Google服务帐户JSON密钥文件。
谢谢,莱恩
发布于 2021-07-09 07:58:10
在用例中有两个挑战:
格式
您需要自定义webhook以符合PubSub格式。有些webhoock是足够定制的,但这并不是所有的情况。如果不能按照PubSub期望的方式自定义web钩子调用,则需要使用中间层(例如云函数或云运行)。
Authentication
直接到PubSub或使用中间层,情况是一样的:请求者(web钩子)需要经过身份验证并授权访问Google服务。
其中一个不好的,可能的做法,是设置allUsers授权访问您的资源。这里有一个带有PubSub主题的示例

别干那事。即使您通过定义模式(从而拒绝所有与此模式不兼容的消息)来增加“您”进程的安全性,让资源在没有身份验证的情况下公开访问也是犯罪行为!
在web钩子上下文中(我以前在我的公司中有过这种情况),我建议您使用静态身份验证(一个长期存在的身份验证头;而不是作为Google令牌的短暂(1h) );例如,一个API键。这并不完美,因为在API密钥泄漏的情况下,坏角色将能够使用此漏洞很长一段时间(尽快旋转您的API键!),但它比没有安全!
我写了一个关于这个用例的很老的文章(使用ESPv2和Cloud ),但是在Google管理服务API上,原理和配置几乎是一样的。在本文中,我为云运行、云函数和App创建了一个代理,但是您可以通过设置正确的目标PubSub来做同样的事情。
https://stackoverflow.com/questions/68311929
复制相似问题