gpt4 book ai didi

ssl - 如何以编程方式为 Tyrus WebSocket @ServerEndpoint 启用 WSS

转载 作者:太空宇宙 更新时间:2023-11-03 13:05:14 27 4
gpt4 key购买 nike

我有一个具有 REST 端点和 WebSocket 端点的微服务。

它使用 Spring 连接 Grizzly 和 Tyrus,并使用 JAX-RS 过滤器和 ServerEndpointConfig.Configurator 通过 SSO 添加身份验证。我已使用 SSLContextConfigurator 和 SSLEngineConfigurator 以及(当前)自签名证书将 SSL 添加到 REST 端点。

我没有看到在 Tyrus 1.14 中对 org.glassfish.tyrus.server.Server 执行相同操作的方法。

事实上,代码硬连接了协议(protocol)名称,这让我想知道这是否可能:

LOGGER.info("WebSocket 注册的应用程序:URL 都以 ws://"+ this.hostName + ":"+ this.getPort());

有个类似的问题here但它需要将 WAR 文件部署到完整的 Glassfish 实例。我想以编程方式执行此操作。

最佳答案

使用 https://stackoverflow.com/a/27239122/17641 中的建议解决了


listener = new NetworkListener("灰熊", "0.0.0.0", port);
listener.setSecure(true);
listener.setSSLEngineConfig(new SSLEngineConfigurator(getSslContextConfigurator()).setClientMode(false).setNeedClientAuth(false));

其中 getSslContextConfigurator 使用 keystore byte[] 和密码构造一个 org.glassfish.grizzly.ssl.SSLContextConfigurator

关于ssl - 如何以编程方式为 Tyrus WebSocket @ServerEndpoint 启用 WSS,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/53849572/

27 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com