【发布时间】:2021-06-07 11:16:39
【问题描述】:
我有一个应用程序在前端做出反应,在后端有一个节点服务。该应用程序部署在 GKE 集群中。这两个应用程序都作为 NodePort 服务公开,扇出入口路径如下:
- host: example.com
http:
paths:
- backend:
serviceName: frontend-service
servicePort: 3000
path: /*
- backend:
serviceName: backend-service
servicePort: 5000
path: /api/*
我已为这两种服务启用了使用 IAP 的身份验证。为 Kubernetes 服务启用 IAP 时,会单独创建新的 Client Id 和 Client Secret。但是我需要从前端为后端 API 提供身份验证,因为他们有 2 个不同的帐户,这是不可能的,即当我从前端调用后端 API 服务时,身份验证失败,因为 cookie FE 提供的与后端服务不匹配。
处理这种情况的最佳方法是什么。有没有办法为这两种服务使用相同的客户端凭据,如果是,那是正确的方法还是有办法直接使用 IAP 对 Rest API 进行身份验证。
【问题讨论】:
-
是否让两个服务使用相同的BackendConfig(因此使用相同的 IAP 客户端
secret)作为您的设置选项?
标签: authentication kubernetes google-cloud-platform google-kubernetes-engine kubernetes-ingress