Ключевое слово в защите информации
КЛЮЧЕВОЕ СЛОВО
в защите информации
Получить ГОСТ TLS-сертификат для домена (SSL-сертификат)
Добро пожаловать, Гость! Чтобы использовать все возможности Вход или Регистрация.

Уведомление

Icon
Error

Опции
К последнему сообщению К первому непрочитанному
Offline StBandi777  
#1 Оставлено : 10 июня 2024 г. 17:36:37(UTC)
StBandi777

Статус: Новичок

Группы: Участники
Зарегистрирован: 10.06.2024(UTC)
Сообщений: 6

Добрый день! Возникла проблема при попытке получить список отзывов во время проверки сертификата (операция SSLHandshake)

Есть 3 ресурса, указанных в сертификате, где находится один и тот же список отзывов

2 из них (1ый и 2ой) находятся на ресурсе, доступном по протоколу LDAP. С наших серверов туда доступа нет.
Однако 3ий ресурс доступен по протоколу HTTP.

Подскажите пожалуйста, есть ли возможность настроить проверку таким образом чтобы список отзывов скачивался сразу или хотя бы через fallback с 3-его ресурса?

Параметры настройки SSL контекста:

Security.addProvider(new JCP());
Security.addProvider(new RevCheck());
Security.addProvider(new CryptoProvider());
Security.addProvider(new Provider());
String trustStorePath = AppContext.getProperty("trustStorePath");
String trustStorePass = AppContext.getProperty("trustStorePass");
System.setProperty("com.sun.security.enableCRLDP", "true");
System.setProperty("com.ibm.security.enableCRLDP", "true");
KeyStore keyStore = KeyStore.getInstance("CertStore", "JCP");
keyStore.load(new FileInputStream(trustStorePath), trustStorePass.toCharArray());
TrustManagerFactory tmf = TrustManagerFactory.getInstance("GostX509", "JTLS");
tmf.init(keyStore);
SSLContext ctx = SSLContext.getInstance("GostTLSv1.2", "JTLS"); // TLS v.1.2
ctx.init(null, tmf.getTrustManagers(), null);

Отредактировано пользователем 10 июня 2024 г. 17:39:02(UTC)  | Причина: Не указана

Offline Евгений Афанасьев  
#2 Оставлено : 11 июня 2024 г. 22:30:48(UTC)
Евгений Афанасьев

Статус: Сотрудник

Группы: Участники
Зарегистрирован: 06.12.2008(UTC)
Сообщений: 4,064
Российская Федерация
Откуда: Крипто-Про

Сказал(а) «Спасибо»: 21 раз
Поблагодарили: 740 раз в 698 постах
Здравствуйте.
Попробуйте сборку из последних на сайте.
Offline StBandi777  
#3 Оставлено : 13 июня 2024 г. 14:06:23(UTC)
StBandi777

Статус: Новичок

Группы: Участники
Зарегистрирован: 10.06.2024(UTC)
Сообщений: 6

Подскажите пожалуйста, от какого числа последняя сертифицированная версия JCP? Кажется, у нас стоит последняя версия
Offline Евгений Афанасьев  
#4 Оставлено : 13 июня 2024 г. 15:15:51(UTC)
Евгений Афанасьев

Статус: Сотрудник

Группы: Участники
Зарегистрирован: 06.12.2008(UTC)
Сообщений: 4,064
Российская Федерация
Откуда: Крипто-Про

Сказал(а) «Спасибо»: 21 раз
Поблагодарили: 740 раз в 698 постах
Offline StBandi777  
#5 Оставлено : 13 июня 2024 г. 15:22:08(UTC)
StBandi777

Статус: Новичок

Группы: Участники
Зарегистрирован: 10.06.2024(UTC)
Сообщений: 6

У нас получилось открыть доступ по протоколу ldap удаленного сервера, однако время от времени возникают ошибки ReadTimeout при попытке скачать список отзывов. Подскажите пожалуйста как можно настроить LdapCtx на использование пула соединений и в каком месте можно настроить конфигурацию для этого пула

Пытался добавить в catalina.properties следующие настройки

com.sun.jndi.ldap.connect.pool=true
com.sun.jndi.ldap.connect.pool.maxsize=64
com.sun.jndi.ldap.connect.pool.prefsize=32
com.sun.jndi.ldap.connect.pool.timeout=240000
com.sun.jndi.ldap.connect.pool.initsize=8

Однако, кажется, они игнорируются и ошибка остается
Offline StBandi777  
#6 Оставлено : 13 июня 2024 г. 15:23:09(UTC)
StBandi777

Статус: Новичок

Группы: Участники
Зарегистрирован: 10.06.2024(UTC)
Сообщений: 6

июн 13, 2024 3:00:07 PM ru.CryptoPro.reprov.certpath.DistributionPointFetcher a
WARNING: Exception getting CRL from CertStore:
java.security.cert.CertStoreException: javax.naming.CommunicationException: Read timed out [Root exception is java.net.SocketTimeoutException: Read timed out]; remaining name 'cn=ca-*****,o=*****,l=*****,st=****,c=***'
at ru.CryptoPro.reprov.certpath.LDAPCertStore.a(Unknown Source)
at ru.CryptoPro.reprov.certpath.LDAPCertStore.engineGetCRLs(Unknown Source)
at java.security.cert.CertStore.getCRLs(CertStore.java:181)
at ru.CryptoPro.reprov.certpath.URICertStore.engineGetCRLs(Unknown Source)
at java.security.cert.CertStore.getCRLs(CertStore.java:181)
at ru.CryptoPro.reprov.certpath.DistributionPointFetcher.a(Unknown Source)
at ru.CryptoPro.reprov.certpath.DistributionPointFetcher.a(Unknown Source)
at ru.CryptoPro.reprov.certpath.DistributionPointFetcher.getCRLs(Unknown Source)
at ru.CryptoPro.reprov.certpath.CrlRevocationChecker.a(Unknown Source)
at ru.CryptoPro.reprov.certpath.CrlRevocationChecker.a(Unknown Source)
at ru.CryptoPro.reprov.certpath.CrlRevocationChecker.a(Unknown Source)
at ru.CryptoPro.reprov.certpath.CrlRevocationChecker.a(Unknown Source)
at ru.CryptoPro.reprov.certpath.CrlRevocationChecker.a(Unknown Source)
at ru.CryptoPro.reprov.certpath.CrlRevocationChecker.a(Unknown Source)
at ru.CryptoPro.reprov.certpath.CrlRevocationChecker.check(Unknown Source)
at sun.security.provider.certpath.PKIXMasterCertPathValidator.validate(PKIXMasterCertPathValidator.java:125)
at sun.security.provider.certpath.PKIXCertPathValidator.validate(PKIXCertPathValidator.java:220)
at sun.security.provider.certpath.PKIXCertPathValidator.validate(PKIXCertPathValidator.java:140)
at sun.security.provider.certpath.PKIXCertPathValidator.engineValidate(PKIXCertPathValidator.java:79)
at java.security.cert.CertPathValidator.validate(CertPathValidator.java:292)
at ru.CryptoPro.reprov.CPCertPathValidator.engineValidate(Unknown Source)
at java.security.cert.CertPathValidator.validate(CertPathValidator.java:292)
at ru.CryptoPro.ssl.pc_4.cl_2.a(Unknown Source)
at ru.CryptoPro.ssl.pc_4.cl_2.a(Unknown Source)
at ru.CryptoPro.ssl.pc_4.cl_4.b(Unknown Source)
at ru.CryptoPro.ssl.cl_121.a(Unknown Source)
at ru.CryptoPro.ssl.cl_121.a(Unknown Source)
at ru.CryptoPro.ssl.cl_121.checkServerTrusted(Unknown Source)
at ru.CryptoPro.ssl.cl_16.a(Unknown Source)
at ru.CryptoPro.ssl.cl_16.a(Unknown Source)
at ru.CryptoPro.ssl.cl_59.s(Unknown Source)
at ru.CryptoPro.ssl.cl_59.a(Unknown Source)
at ru.CryptoPro.ssl.SSLSocketImpl.a(Unknown Source)
at ru.CryptoPro.ssl.SSLSocketImpl.n(Unknown Source)
at ru.CryptoPro.ssl.SSLSocketImpl.b(Unknown Source)
at ru.CryptoPro.ssl.SSLSocketImpl.startHandshake(Unknown Source)
at org.apache.http.conn.ssl.SSLConnectionSocketFactory.createLayeredSocket(SSLConnectionSocketFactory.java:396)
at org.apache.http.conn.ssl.SSLConnectionSocketFactory.connectSocket(SSLConnectionSocketFactory.java:355)
at org.apache.http.impl.conn.DefaultHttpClientConnectionOperator.connect(DefaultHttpClientConnectionOperator.java:142)
at org.apache.http.impl.conn.PoolingHttpClientConnectionManager.connect(PoolingHttpClientConnectionManager.java:373)
at org.apache.http.impl.execchain.MainClientExec.establishRoute(MainClientExec.java:394)
at org.apache.http.impl.execchain.MainClientExec.execute(MainClientExec.java:237)
at org.apache.http.impl.execchain.ProtocolExec.execute(ProtocolExec.java:185)
at org.apache.http.impl.execchain.RetryExec.execute(RetryExec.java:89)
at org.apache.http.impl.execchain.RedirectExec.execute(RedirectExec.java:110)
at org.apache.http.impl.client.InternalHttpClient.doExecute(InternalHttpClient.java:185)
at org.apache.http.impl.client.CloseableHttpClient.execute(CloseableHttpClient.java:83)
at org.apache.http.impl.client.CloseableHttpClient.execute(CloseableHttpClient.java:56)
at org.springframework.http.client.HttpComponentsClientHttpRequest.executeInternal(HttpComponentsClientHttpRequest.java:82)
at org.springframework.http.client.AbstractBufferingClientHttpRequest.executeInternal(AbstractBufferingClientHttpRequest.java:48)
at org.springframework.http.client.AbstractClientHttpRequest.execute(AbstractClientHttpRequest.java:50)
at org.springframework.http.client.InterceptingClientHttpRequest$RequestExecution.execute(InterceptingClientHttpRequest.java:91)
at com.haulmont.sberins.core.app.isointegration.IsoIntegrationWorkerBean$1.intercept(IsoIntegrationWorkerBean.java:138)
at org.springframework.http.client.InterceptingClientHttpRequest$RequestExecution.execute(InterceptingClientHttpRequest.java:81)
at org.springframework.http.client.InterceptingClientHttpRequest.executeInternal(InterceptingClientHttpRequest.java:67)
at org.springframework.http.client.AbstractBufferingClientHttpRequest.executeInternal(AbstractBufferingClientHttpRequest.java:48)
at org.springframework.http.client.AbstractClientHttpRequest.execute(AbstractClientHttpRequest.java:50)
at org.springframework.web.client.RestTemplate.doExecute(RestTemplate.java:519)
at org.springframework.web.client.RestTemplate.execute(RestTemplate.java:482)
at org.springframework.web.client.RestTemplate.getForEntity(RestTemplate.java:264)
at com.haulmont.sberins.core.app.isointegration.api.request.GetChangeBpiStatusesRequest.sendRequest(GetChangeBpiStatusesRequest.java:26)
at com.haulmont.sberins.core.app.isointegration.IsoIntegrationWorkerBean.sendRequest(IsoIntegrationWorkerBean.java:415)
at com.haulmont.sberins.core.app.isointegration.IsoIntegrationWorkerBean.changeBpiStatuses(IsoIntegrationWorkerBean.java:312)
at com.haulmont.sberins.core.app.isointegration.IsoIntegrationWorkerBean.changeBpiStatuses(IsoIntegrationWorkerBean.java:256)
at com.haulmont.sberins.core.app.isointegration.IsoIntegrationWorkerBean.scheduleChangeBpiStatuses(IsoIntegrationWorkerBean.java:268)
at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:62)
at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
at java.lang.reflect.Method.invoke(Method.java:498)
at org.springframework.aop.support.AopUtils.invokeJoinpointUsingReflection(AopUtils.java:317)
at org.springframework.aop.framework.ReflectiveMethodInvocation.invokeJoinpoint(ReflectiveMethodInvocation.java:183)
at org.springframework.aop.framework.ReflectiveMethodInvocation.proceed(ReflectiveMethodInvocation.java:150)
at org.springframework.aop.interceptor.ExposeInvocationInterceptor.invoke(ExposeInvocationInterceptor.java:91)
at org.springframework.aop.framework.ReflectiveMethodInvocation.proceed(ReflectiveMethodInvocation.java:172)
at org.springframework.aop.framework.JdkDynamicAopProxy.invoke(JdkDynamicAopProxy.java:204)
at com.sun.proxy.$Proxy539.scheduleChangeBpiStatuses(Unknown Source)
at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:62)
at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
at java.lang.reflect.Method.invoke(Method.java:498)
at com.haulmont.cuba.core.app.scheduling.RunnerBean.executeTask(RunnerBean.java:197)
at com.haulmont.cuba.core.app.scheduling.RunnerBean$2.run(RunnerBean.java:105)
at java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:511)
at java.util.concurrent.FutureTask.run(FutureTask.java:266)
at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1149)
at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:624)
at java.lang.Thread.run(Thread.java:748)
Caused by: javax.naming.CommunicationException: Read timed out [Root exception is java.net.SocketTimeoutException: Read timed out]; remaining name 'cn=ca-*****,o=*****,l=*****,st=****,c=***'
at com.sun.jndi.ldap.LdapCtx.doSearch(LdapCtx.java:2030)
at com.sun.jndi.ldap.LdapCtx.doSearchOnce(LdapCtx.java:1961)
at com.sun.jndi.ldap.LdapCtx.c_getAttributes(LdapCtx.java:1353)
at com.sun.jndi.toolkit.ctx.ComponentDirContext.p_getAttributes(ComponentDirContext.java:235)
at com.sun.jndi.toolkit.ctx.PartialCompositeDirContext.getAttributes(PartialCompositeDirContext.java:141)
at com.sun.jndi.toolkit.ctx.PartialCompositeDirContext.getAttributes(PartialCompositeDirContext.java:129)
at javax.naming.directory.InitialDirContext.getAttributes(InitialDirContext.java:142)
at ru.CryptoPro.reprov.certpath.LDAPCertStore$LDAPRequest.a(Unknown Source)
at ru.CryptoPro.reprov.certpath.LDAPCertStore$LDAPRequest.b(Unknown Source)
... 87 more
Caused by: java.net.SocketTimeoutException: Read timed out
at java.net.SocketInputStream.socketRead0(Native Method)
at java.net.SocketInputStream.socketRead(SocketInputStream.java:116)
at java.net.SocketInputStream.read(SocketInputStream.java:171)
at java.net.SocketInputStream.read(SocketInputStream.java:141)
at java.io.BufferedInputStream.fill(BufferedInputStream.java:246)
at java.io.BufferedInputStream.read1(BufferedInputStream.java:286)
at java.io.BufferedInputStream.read(BufferedInputStream.java:345)
at com.sun.jndi.ldap.Connection.run(Connection.java:872)
... 1 more

Отредактировано пользователем 13 июня 2024 г. 15:26:12(UTC)  | Причина: Не указана

RSS Лента  Atom Лента
Пользователи, просматривающие эту тему
Guest (2)
Быстрый переход  
Вы не можете создавать новые темы в этом форуме.
Вы не можете отвечать в этом форуме.
Вы не можете удалять Ваши сообщения в этом форуме.
Вы не можете редактировать Ваши сообщения в этом форуме.
Вы не можете создавать опросы в этом форуме.
Вы не можете голосовать в этом форуме.