目前我正在使用 OAuth2-proxy 和 Istio 处理 OIDC。我们现在想升级到 Anthos,因为我们主要使用 GCP。一切正常,但我需要配置
envoyExtAuthzHttp
。以前我会运行 kubectl edit configmap istio -n istio-system
并添加以下内容...
extensionProviders:
- name: oauth2-proxy
envoyExtAuthzHttp:
service: http-oauth-proxy.istio-system.svc.cluster.local
port: 4180
includeRequestHeadersInCheck: ['cookie']
headersToUpstreamOnAllow: ['authorization']
headersToDownstreamOnDeny: ['content-type', 'set-cookie']
但是,ASM 似乎没有安装该配置映射...
来自服务器的错误(未找到):未找到 configmaps“istio”
我注意到有一个
istio-asm-managed
配置图。所以我尝试添加配置,但当我这样做时,我不确定如何重新启动 ASM,因为我习惯使用的这个命令不起作用kubectl rollout restart deployment/istiod -n istio-system
。
当我尝试访问该网站而不是被重定向时,我看到......
RBAC:访问被拒绝
在研究了按照此处迁移步骤时 asmcli 所做的操作之后,对我来说最有效的是在启用 Anthos Service Mesh 之前在 istio-system 中设置此配置映射:
apiVersion: v1
data:
mesh: |
extensionProviders:
...<your settings here>...
kind: ConfigMap
metadata:
name: istio-asm-managed-rapid
namespace: istio-system
在启用 ASM 之前,我尚未验证是否确实有必要这样做,但我就是这么做的。
数据
envoyExtAuthzHttp: headersToDownstreamOnDeny: