【问题标题】:Securing PubSub push endpoints in node app engine?在节点应用程序引擎中保护 PubSub 推送端点?
【发布时间】:2017-08-30 21:39:11
【问题描述】:

我正在使用 pubsub 将消息推送到柔性环境中以节点编写的 App Engine 应用程序中。有没有办法可以将我的端点限制为仅来自 pubsub 的流量?

在标准环境中,App Engine 具有可以定义仅管理员请求和安全端点的处理程序。但是,此功能在柔性环境中不可用。是否可以仅为 Google 请求设置防火墙规则(防火墙似乎是应用程序范围的,而不是端点?),是否有保护端点的标准方法或者我是否需要自定义滚动解决方案?

【问题讨论】:

    标签: node.js google-app-engine google-cloud-pubsub


    【解决方案1】:

    事实证明,Google 已针对此 in the docs 发布了解决方案。

    解决办法是:

    在您的 app.yaml 环境中创建令牌:

    env_variables:
     PUBSUB_TOPIC: <your-topic-name>
     # This token is used to verify that requests originate from your
     # application. It can be any sufficiently random string.
     PUBSUB_VERIFICATION_TOKEN: <your-verification-token>
    

    将令牌与您的消息一起发送:

     https://YOUR_APP_ID.appspot.com/pubsub/push?token=YOUR_TOKEN \
    --ack-deadline 10
    

    检查推送处理程序中的令牌:

      if (req.query.token !== PUBSUB_VERIFICATION_TOKEN) {
        res.status(400).send();
        return;
      }
    

    RTFM!

    【讨论】:

    • 虽然这在技术上可行,但它是一种实现安全性的相当原始的方法......有没有更好的方法?
    猜你喜欢
    • 1970-01-01
    • 2023-03-19
    • 2019-03-13
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2017-07-17
    相关资源
    最近更新 更多