Отключение проверки сертификата при WSS соединении

Discussion in 'Общие вопросы' started by Denis, May 18, 2017 at 1:26 PM.

  1. Denis

    Denis New Member

    Добрый день, есть ли возможность отключить проверку сертификата при соединении по WSS?
  2. Max

    Max Administrator Staff Member

    Такие проверки выполняет сам браузер. Например Google Chrome.
    Некоторые браузеры могут запускаться из командной строки с пониженными настройками безопасности.
    Если такой вариант отключения проверок сертификатов устраивает, можно поискать способ запуска браузера без проверки сертификатов.

    Сервер никаких проверок сертификатов не выполняет. Он просто отдает браузеру тот сертификат, который в нем установлен.
    Т.е. на стороне сервера повлиять на проверки нельзя. Только импортировать корректный сертификат, который будет заведомо принят браузером.
  3. Denis

    Denis New Member

    Прошу прощения, наверноне не корректно сформулировал вопрос.
    Меня интересует есть ли возможность установить доверие всем сертификатам на стороне Android SDK? т.к. сейчас падает Handshake exception при установлении WSS соединения по причине невалдного сертификата на SIP сервере, который работатет по WebSockets.

    WebSocketChannelClient.class
    public void connect(final String wsUrl) {
    ...
    if(WebSocketChannelClient.this.wsServerUrl.startsWith("wss://")) {
    SSLContext e = SSLContext.getInstance("TLS");
    e.init((KeyManager[])null, new TrustManager[]{WebSocketChannelClient.this.new TrustAllX509TrustManager(null)}, new SecureRandom());
    SSLSocketFactory factory = e.getSocketFactory();WebSocketChannelClient.this.ws.setSocket(factory.createSocket());
    }
    ...
    }

    Хотелось бы иметь возможность установить "верить всем сертификатам", т.к. на этапе разработки часто бывает что на сервер нет валидного сертификата.

    Спасибо.
  4. Max

    Max Administrator Staff Member

    Тогда проще использовать без шифрования ws://host:8080
    Или обязательно нужен SSL на этапе разработки?

Share This Page