我在Auth 2.0中使用Keycloak(最新版本)来验证身份验证,提供令牌(JWT)并使用提供的令牌,允许根据权限访问应用程序URL。 Keycloak目前在Kubernates运行,Istio为Gateway。对于Keycloak,这是使用的策略:
apiVersion: authentication.istio.io/v1alpha1
kind: Policy
metadata:
name: application-auth-policy
spec:
targets:
- name: notification
origins:
- jwt:
issuer: http://<service_name>http.<namespace>.svc.cluster.local:8080/auth/realms/istio
jwksUri: http://<service_name>http.<namespace>.svc.cluster.local:8080/auth/realms/istio/protocol/openid-connect/certs
principalBinding: USE_ORIGIN
客户在此Keycloak中注册并为其创建了RSA。发行者可以正常生成令牌,并且策略已成功应用。
问题:
其他人有类似的问题吗?
该问题通过两个选项解决:1。通过外部服务器ip和外部端口替换服务名称和端口(对于issuer和jwksUri)2。禁用mTLS及其策略的使用(已知问题:https://github.com/istio/istio/issues/10062)。