我需要不使用OAuth或Google SDK将消息发布到Google Cloud Pub / Sub,而是使用Api键 (类似于"how to publish to pub/sub with just an api key")。
medium上有关于如何保护推送订阅的指南, 但我不知道如何以某种方式配置端点,以便仅使用api键就可以发送发布/订阅发布请求。
能否请您分享一个匹配的示例端点配置(yaml文件)?
答案 0 :(得分:2)
您在文章中引用的文章是关于如何保护目标终结点(使用强制订阅从Pub / Sub进行调用),而不是如何从HTTP Request来保护Pub / Sub本身。
不幸的是,如果您需要在不使用OAuth的情况下调用发布/订阅(而是使用API密钥)不是开箱即用的,则需要实现一些功能。
请参考官方文档:https://cloud.google.com/pubsub/docs/authentication “ Cloud Pub / Sub不支持API密钥作为身份验证方法。”
如果您想实现此目标:
您需要在Pub / Sub的前面创建一个后端,将Cloud Endpoints(带有ESP https://cloud.google.com/endpoints/docs/openapi/deploy-api-backend)放在具有openapi.yaml中配置的API密钥安全性的后端的前面,然后从后端创建一个调用发布/订阅。
HTTP请求->云端点(在Compute Engine,App Engine,GKE等中的ESP)->后端(在Compute Engine,App Engine,GKE等中)->发布/订阅
如果您需要有关实现方式的更多信息,可以查看Cloud Endpoints(https://cloud.google.com/endpoints/docs)的文档。