Я сталкиваюсь с проблемой с Httpserver от Apache httpcore после обновления библиотеки с версии 5.2.3 до 5.3. Когда аутентификация клиента (SetNeedClientAuth (true)) включена, и TrustStore не настроен, сервер не отвечает, а клиент испытывает тайм -аут. Эта проблема не возникла в версии 5.2.3, где сервер будет обрабатывать запрос по -разному. После обновления сервер, кажется, висит, не предоставляя никакого ответа.
шаги для воспроизведения:
включить аутентификацию клиента на сервере с помощью socket.setneedclientauth (true).
Не настраивайте доверие для сервера. Аутентификация клиента включена.
орг.springframework.web.client.resourceccessexception: ошибка ввода/вывода при пост -запросе «https: localhost: 56433/hello»: Построение пути PKIX Не удалось: sun.security.provider.certpath.suncertpathbuilderex: Uncable revitiate. />
Фактическое поведение:
Сервер не отвечает, а клиент времени выходит. /> < /ul>
HttpServer server = ServerBootstrap.bootstrap()
.setSocketConfig(SocketConfig.custom()
.setSoTimeout(Timeout.ofSeconds(2))
.build())
.setListenerPort(8443)
.setSslContext(createSSLContext()) // SSLContext without truststore
.setSslSetupHandler(socket -> socket.setNeedClientAuth(true))
.register("/hello", (request, response, context) -> {
response.setCode(HttpStatus.SC_OK);
response.setEntity(new StringEntity("Hello", ContentType.TEXT_PLAIN));
})
.create();
server.start();
< /code>
public static SSLContext createSSLContext() throws Exception {
// Load the keystore
KeyStore keyStore = KeyStore.getInstance("JKS");
keyStore.load(SSLUtil.class.getResourceAsStream("/keystore.jks"), "keystorePassword".toCharArray());
// Initialize KeyManagerFactory with the keystore
KeyManagerFactory keyManagerFactory = KeyManagerFactory.getInstance(KeyManagerFactory.getDefaultAlgorithm());
keyManagerFactory.init(keyStore, "keyPassword".toCharArray());
// Initialize TrustManagerFactory without a truststore (missing truststore configuration)
TrustManagerFactory trustManagerFactory = TrustManagerFactory.getInstance(TrustManagerFactory.getDefaultAlgorithm());
trustManagerFactory.init((KeyStore) null); // No truststore provided
// Create and initialize the SSLContext
SSLContext sslContext = SSLContext.getInstance("TLS");
sslContext.init(keyManagerFactory.getKeyManagers(), trustManagerFactory.getTrustManagers(), null);
return sslContext;
}
< /code>
Из -за этой проблемы некоторые из модульных тестовых случаев начинаются после обновления библиотеки. Если да, то для обработки этого сценария требуется обходной путь или изменение конфигурации? Или есть изменение поведения в версии 5.3, которое мне нужно учитывать?
Подробнее здесь: https://stackoverflow.com/questions/795 ... ith-needcl
Apache httpcore 5.3.3. Проблема конфигурации SSLContext: Тайм -аут сервера с indclientauth ⇐ Apache
1745519265
Anonymous
Я сталкиваюсь с проблемой с Httpserver от Apache httpcore после обновления библиотеки с версии 5.2.3 до 5.3. Когда аутентификация клиента (SetNeedClientAuth (true)) включена, и TrustStore не настроен, сервер не отвечает, а клиент испытывает тайм -аут. Эта проблема не возникла в версии 5.2.3, где сервер будет обрабатывать запрос по -разному. После обновления сервер, кажется, висит, не предоставляя никакого ответа.
шаги для воспроизведения:
включить аутентификацию клиента на сервере с помощью socket.setneedclientauth (true).
Не настраивайте доверие для сервера. Аутентификация клиента включена.
орг.springframework.web.client.resourceccessexception: ошибка ввода/вывода при пост -запросе «https: localhost: 56433/hello»: Построение пути PKIX Не удалось: sun.security.provider.certpath.suncertpathbuilderex: Uncable revitiate. />
Фактическое поведение:
Сервер не отвечает, а клиент времени выходит. /> < /ul>
HttpServer server = ServerBootstrap.bootstrap()
.setSocketConfig(SocketConfig.custom()
.setSoTimeout(Timeout.ofSeconds(2))
.build())
.setListenerPort(8443)
.setSslContext(createSSLContext()) // SSLContext without truststore
.setSslSetupHandler(socket -> socket.setNeedClientAuth(true))
.register("/hello", (request, response, context) -> {
response.setCode(HttpStatus.SC_OK);
response.setEntity(new StringEntity("Hello", ContentType.TEXT_PLAIN));
})
.create();
server.start();
< /code>
public static SSLContext createSSLContext() throws Exception {
// Load the keystore
KeyStore keyStore = KeyStore.getInstance("JKS");
keyStore.load(SSLUtil.class.getResourceAsStream("/keystore.jks"), "keystorePassword".toCharArray());
// Initialize KeyManagerFactory with the keystore
KeyManagerFactory keyManagerFactory = KeyManagerFactory.getInstance(KeyManagerFactory.getDefaultAlgorithm());
keyManagerFactory.init(keyStore, "keyPassword".toCharArray());
// Initialize TrustManagerFactory without a truststore (missing truststore configuration)
TrustManagerFactory trustManagerFactory = TrustManagerFactory.getInstance(TrustManagerFactory.getDefaultAlgorithm());
trustManagerFactory.init((KeyStore) null); // No truststore provided
// Create and initialize the SSLContext
SSLContext sslContext = SSLContext.getInstance("TLS");
sslContext.init(keyManagerFactory.getKeyManagers(), trustManagerFactory.getTrustManagers(), null);
return sslContext;
}
< /code>
Из -за этой проблемы некоторые из модульных тестовых случаев начинаются после обновления библиотеки. Если да, то для обработки этого сценария требуется обходной путь или изменение конфигурации? Или есть изменение поведения в версии 5.3, которое мне нужно учитывать?
Подробнее здесь: [url]https://stackoverflow.com/questions/79591264/apache-httpcore-5-3-3-sslcontext-configuration-issue-server-timeout-with-needcl[/url]
Ответить
1 сообщение
• Страница 1 из 1
Перейти
- Кемерово-IT
- ↳ Javascript
- ↳ C#
- ↳ JAVA
- ↳ Elasticsearch aggregation
- ↳ Python
- ↳ Php
- ↳ Android
- ↳ Html
- ↳ Jquery
- ↳ C++
- ↳ IOS
- ↳ CSS
- ↳ Excel
- ↳ Linux
- ↳ Apache
- ↳ MySql
- Детский мир
- Для души
- ↳ Музыкальные инструменты даром
- ↳ Печатная продукция даром
- Внешняя красота и здоровье
- ↳ Одежда и обувь для взрослых даром
- ↳ Товары для здоровья
- ↳ Физкультура и спорт
- Техника - даром!
- ↳ Автомобилистам
- ↳ Компьютерная техника
- ↳ Плиты: газовые и электрические
- ↳ Холодильники
- ↳ Стиральные машины
- ↳ Телевизоры
- ↳ Телефоны, смартфоны, плашеты
- ↳ Швейные машинки
- ↳ Прочая электроника и техника
- ↳ Фототехника
- Ремонт и интерьер
- ↳ Стройматериалы, инструмент
- ↳ Мебель и предметы интерьера даром
- ↳ Cантехника
- Другие темы
- ↳ Разное даром
- ↳ Давай меняться!
- ↳ Отдам\возьму за копеечку
- ↳ Работа и подработка в Кемерове
- ↳ Давай с тобой поговорим...
Мобильная версия