【问题标题】:appengine service to service queries not workingappengine 服务到服务查询不起作用
【发布时间】:2017-06-05 18:41:19
【问题描述】:

我关注了那些instructions

我有一个应用引擎,其中部署了 2 个服务(我们称它们为 AB)。 appengine 配置了 IAP。 (身份感知代理)

我无法让B 查询A。如果我简单地用urlfetch.fetch 调用它,调用get 会用302 重定向到似乎是登录页面的地方。该呼叫未登录A,因此似乎在其他地方被截获。

据我了解,这应该可行...

无论如何,我尝试使用 Authorization 标头,就像我们在查询 google API 时需要做的那样。仍然没有运气,然后我得到一个401{'www-authenticate': 'Bearer error="invalid id token"'}

我该怎么办?我必须使用钥匙吗?在某处激活 API 开关以允许服务间通信?

此外,他们提到X-Appengine-Inbound-Appid 需要在那里。我怎么知道它是否是自动添加的?正如文档中提到的那样,我将follow_redirects 设置为 false,但我不知道如何查看传出流量以确认它是否正常工作。

【问题讨论】:

    标签: python-2.7 google-app-engine urlfetch google-iap


    【解决方案1】:

    需要做两件事。

    1. 在 IAP 配置页面中,您需要允许应用程序本身。因此,在右侧窗格中,单击“添加”,然后添加应用程序。 (类似于<app-id>@appspot.gserviceaccount.com
    2. 您需要在请求中添加正确的"Authorization" : "Bearer <>" 标头。您可以按照Authenticating from a service account 获取token_response['id_token'] 放入标题。是的,这是相当多的代码。

    请注意,即使我添加了新访问权限,它仍然没有显示在右侧窗格中。这可能与 IAP 仍处于测试阶段有关。

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2023-03-05
      相关资源
      最近更新 更多