如何在 Spring Boot 中使用 rsocket 配置 SSL/TLS?

Kam*_*Wan 5 spring-boot rsocket rsocket-java

我已阅读stackoverflow 中的相关问题。但是,答案仅告诉如何配置身份验证检查。我需要在 Spring Boot 中使用 rsocket 加密所有传输的数据。如何在带有 SSL/TLS 的 Spring Boot 中使用 tls。当我初始化 rsocket 客户端时,我找不到任何支持的方法,如下所示,尽管我知道 rsocket 本身可以支持 SSL/TLS。我找到了一些例子:例子

        this.rsocketRequester = rsocketRequesterBuilder.setupRoute("sidecar-client")
            .setupData("test_data")
            .rsocketConnector(connector -> connector.acceptor(responder))
            .connectTcp("localhost", 7000)
            .block();

Run Code Online (Sandbox Code Playgroud)
Summary of my question:
1. Does rsocket in springboot support SSL/TLS ?
2. If spring boot support rsocket with SSL/TLS, are there any examples can be referenced
Run Code Online (Sandbox Code Playgroud)

Yur*_*mke 3

是的,修改你的例子

安全 TCP (SSL)

this.rsocketRequester = rsocketRequesterBuilder.setupRoute("sidecar-client")
            .setupData("test_data")
            .rsocketConnector(connector -> connector.acceptor(responder))
            .connect(TcpClientTransport.create(TcpClient.create().secure().host("localhost").port(7000)))
            .block();
Run Code Online (Sandbox Code Playgroud)

或安全网络套接字

this.rsocketRequester = rsocketRequesterBuilder.setupRoute("sidecar-client")
            .setupData("test_data")
            .rsocketConnector(connector -> connector.acceptor(responder))
                  .connectWebSocket(URI.create("https://rsocket-demo.herokuapp.com/rsocket"))
            .block();
Run Code Online (Sandbox Code Playgroud)