IAP为应用程序引擎和计算引擎访问打开两个会话



上下文

我有3项服务在GCP中运行。其中一个是在AppEngine中运行的SPA,另外两个是在计算引擎中运行的API。我在他们面前用单域配置了HTTPS负载均衡器,并启用了IAP(使用Identity Platform方法(。

问题

问题是,我在成功登录后得到的cookie只适用于AppEngine请求,所有对计算引擎的请求最终都是302。有没有办法让它为所有受IAP保护的服务工作?

更多信息

当我直接访问计算引擎资源时,IAP不会检测到通过AppEngine资源打开的会话,所以我必须再次登录,然后AppEngine和计算引擎服务都可以正常工作。

首次登录后的Cookie(应用程序引擎资源(Cookie应用程序引擎

第二次登录后的Cookie(计算引擎资源(Cookie应用程序引擎+计算引擎

看起来IAP设置了两个不同的会话,即使域是相同的。除了编码的有效载荷之外,我找不到这两个cookie之间的任何区别。

发现问题在于IAP中的应用程序引擎和计算引擎服务具有不同的客户端ID,因此修复方法是手动更改它,使所有服务都具有相同的客户端ID。

最新更新