在 K8s 应用程序中使用 OAuth2.0 的 TLS
TLS with OAuth2.0 in K8s application
我正在尝试使用 TLS 配置我的 K8s 应用程序。我在那个 pod 中有 2 个容器,一个是 OAuth2.0 代理容器,另一个容器有我的后端代码。
我正在使用 OAuth2.0 来执行此操作。所以基本上,在 OAuth2.0 代理 pod 中,我提供了 tls-cert-file 和 tls-key-file。当我使用 OAuth2.0 进行授权时,我想我可以使用同一个 pod 来启用 HTTPS。但是,在 OAuth 提供商重定向到我的应用程序后,我收到 502 错误网关。
这是我在 OAuth 容器中得到的错误:
Error proxying to upstream server: tls: first record does not look like a TLS handshake
现在我想知道这是不是我只在 OAuth 容器上配置了 TLS 而没有在后端容器上配置?
或者这是其他原因并且在 OAuth 容器上配置 TLS 就足够了吗?
经过更多的修改,我发现了问题所在。我上面提到的错误基本上意味着我们正在尝试将 HTTPS 请求发送到通常接受 HTTP 请求的服务器。
在我的 OAuth 代理配置文件中,我已将 upstream
更改为 https
而它应该是 HTTP
.
进行此更改后,我能够建立端到端的加密连接。
我正在尝试使用 TLS 配置我的 K8s 应用程序。我在那个 pod 中有 2 个容器,一个是 OAuth2.0 代理容器,另一个容器有我的后端代码。
我正在使用 OAuth2.0 来执行此操作。所以基本上,在 OAuth2.0 代理 pod 中,我提供了 tls-cert-file 和 tls-key-file。当我使用 OAuth2.0 进行授权时,我想我可以使用同一个 pod 来启用 HTTPS。但是,在 OAuth 提供商重定向到我的应用程序后,我收到 502 错误网关。
这是我在 OAuth 容器中得到的错误:
Error proxying to upstream server: tls: first record does not look like a TLS handshake
现在我想知道这是不是我只在 OAuth 容器上配置了 TLS 而没有在后端容器上配置?
或者这是其他原因并且在 OAuth 容器上配置 TLS 就足够了吗?
经过更多的修改,我发现了问题所在。我上面提到的错误基本上意味着我们正在尝试将 HTTPS 请求发送到通常接受 HTTP 请求的服务器。
在我的 OAuth 代理配置文件中,我已将 upstream
更改为 https
而它应该是 HTTP
.
进行此更改后,我能够建立端到端的加密连接。