是否有必要在AppEngine Standard Python 3.7运行时中从IAP验证签名的标头?
IAP文档中没有提及Python 3.7运行时的细节。
IAP documentation说:
Users API对Standard 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>
答案 0 :(得分:1)
来自App Engine-specific headers:
对于在中指定的
login:admin
或login:required
处理程序app.yaml
,App Engine还提供了以下标头集:
X-AppEngine-User-Email
,带有示例标题:“ ange@example.com”X-AppEngine-Auth-Domain
,带有示例标题:“ example.com”X-AppEngine-User-ID
,带有示例标头:“ 100979712376541954724”
因此可以相信它们不会来自GAE之外。但是我不确定它们与下面的IAP有何关系。
由于不支持Users API,因此我将遵循有关灵活环境的建议,从这个角度来看,该环境似乎更接近Python3运行时-我将验证签名标头。