2016-08-05 12 views
0

У меня есть приложение для запуска Java, которое запускает локальный сервер websocket. Это приложение получает некоторые данные, подписывает эти данные и возвращает подписанные данные в браузер через соединение с веб-сайтами. Я использую контейнер Tyrus как мой локальный сервер websocket. Недавно я обнаружил, что застрял: браузер пытается установить соединение с ws в контексте ssl, но мой ws-сервер не поддерживает защищенные соединения в сети.Возможно ли запустить автономный сервер веб-сервера Tyrus с SSL?

я получил следующее сообщение об ошибке:

Mixed Content: The page at ' https://example.com ' was loaded over HTTPS, but attempted to connect to the insecure WebSocket endpoint 'ws://localhost:8025/sign/'. This request has been blocked; this endpoint must be available over WSS.

Uncaught SecurityError: Failed to construct 'WebSocket': An insecure WebSocket connection may not be initiated from a page loaded over HTTPS.

Другими словами, Тир не дает мне что-то вроде этого:

new org.glassfish.tyrus.server.Server.Server("wss", "localhost", 8025, "/sign", null, MyClass.class); 

Есть ли способ, что я могу запустить Тир сервер с SSL или кто-то знает другой автономный сервер websocket?

Заранее спасибо

ответ

1

я узнал, что Нетти IO (https://github.com/netty/netty) имеет возможность обеспечить безопасные розетки в автономном способом. Однако я отказался, потому что мне нужно было предоставить действительный цифровой сертификат (jks) внутри моего приложения для веб-запуска java. Это огромная проблема безопасности, поскольку каждый может декомпилировать банку и использовать этот сертификат для создания веб-сайта или подписывать документы с моими учетными данными.

Итак, я переместил свою логику на сервер веб-сокетов, созданный JBoss.

 Смежные вопросы

  • Нет связанных вопросов^_^