google-app-engine – IAP签名标题和AppEngine标准Python 3.7运行时

是否有必要在AppEngine Standard
Python 3.7运行时验证来自IAP的签名头?

IAP文档没有提及Python 3.7运行时的细节.

IAP documentation说:

> AppEngine Standard应使用Users API
>需要验证才能在AppEngine Flex中保护应用程序

用户API不适用于标准3.7.签名标题是.可以验证标头.

我可以看到AppEngine环境添加了一些标题.我想知道X-Appengine值是否可以被隐式信任(即,AppEngine在验证来自IAP的头后是否附加了这些值)?

X-Appengine-User-Id: <user id>
X-Appengine-Auth-Domain: <domain>
X-Appengine-User-Email: <user email>
...
X-Goog-Iap-Jwt-Assertion: <assertion>
X-Goog-Authenticated-User-Email: accounts.google.com:<user email> 
X-Goog-Authenticated-User-Id: accounts.google.com:<user id>

最佳答案 从
App Engine-specific headers开始:

For login:admin or login:required handlers specified in
app.yaml, App Engine also provides the following set of headers:

  • X-AppEngine-User-Email, with example header: “ange@example.com”
  • X-AppEngine-Auth-Domain,with example header: “example.com”
  • X-AppEngine-User-ID, with example header: “100979712376541954724”

所以他们可以信任不来自GAE之外.但我不确定它们与IAP基础设施的关系.

由于不支持Users API,我会遵循灵活环境的建议,从这个角度看,它似乎更接近Python3运行时 – 我验证了签名的头文件.

点赞