我了解 App Engine 实例的可配置性有限,但当它们处于调试模式时,可以通过 SSH 访问它们。在这种情况下,我们通过以下方式连接它们:
gcloud app instances ssh --project=$PROJECT --service $SERVICE --version $VERSION $INSTANCE_ID
我们希望将 Cloud IAP 添加到组合中。我读过的所有内容都表明应该对流量的终点完全透明。IAP 不会终止 ssh 连接,它只是决定是否将流量传递到目的地或丢弃。因此,我们无法更改实例的内部 SSH 配置应该不是问题。如果它现在工作,它应该在通过 IAP 隧道时工作。
但是我发现的所有说明都只讨论了为计算实例设置它,并连接到:
gcloud compute ssh --tunnel-through-iap $INSTANCE_ID
gcloud app instances ssh
不支持--tunnel-through-iap
参数。App Engine 应用不会作为资源显示在 Identity-Aware Proxy 管理页面的“SSH 和 TCP 资源”部分中,仅显示在“HTTPS 资源”下。
这真的不可能吗?如果是这样,为什么不呢?如果 IAP 对网络流量像预期的那样透明,那么它应该不需要 App Engine 端的任何特殊支持。