我刚刚开始尝试配置 Envoy Gateway。
我按照快速入门指南操作,很快就安装并运行了。它为我创建了一个负载均衡器,我可以在其后面访问我的服务。
我想在服务前面添加 jwt 身份验证,因此我添加了SecurityPolicy
包含我的 jwks URL 的相应配置
...
jwt:
providers:
- name: buildkite
remoteJWKS:
uri: https://agent.buildkite.com/.well-known/jwks
但是,一旦应用,我在尝试访问该 URL 时会在日志中收到错误:
[2023-12-07 05:36:29.436][1][debug][connection] [source/common/network/connection_impl.cc:278] [Tags: "ConnectionId":"19"] closing socket: 0
[2023-12-07 05:36:29.436][1][debug][connection] [source/extensions/transport_sockets/tls/ssl_socket.cc:241] [Tags: "ConnectionId":"19"] remote address:108.139.10.123:443,TLS_error:|268436496:SSL routines:OPENSSL_internal:SSLV3_ALERT_HANDSHAKE_FAILURE|268435610:SSL routines:OPENSSL_internal:HANDSHAKE_FAILURE_ON_CLIENT_HELLO:TLS_error_end:TLS_error_end
Envoy 文档认为这可能是因为它默认不验证证书。
我的假设正确吗?如果正确,我需要修改哪些资源来添加 TLS 支持。
Envoy Proxy 文档建议如下:
validation_context:
trusted_ca:
filename: certs/cacert.pem
...但如果将其添加到我的网关部署则它将无法启动。