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

Уведомление

Icon
Error

3 Страницы123>
Опции
К последнему сообщению К первому непрочитанному
Offline VoprosRo  
#1 Оставлено : 7 ноября 2018 г. 15:25:16(UTC)
VoprosRo

Статус: Активный участник

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

Сказал(а) «Спасибо»: 12 раз
Добрый день, имеется лицензия для Java CSP.
Но для работы Java CSP нужно установить JCP.
JCP просит лицензию, получается для JCP лицензию отдельно также нужно покупать?
То есть лицензии и для CSP, и для Java CSP, и для JCP?
Online Евгений Афанасьев  
#2 Оставлено : 7 ноября 2018 г. 16:14:11(UTC)
Евгений Афанасьев

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

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

Сказал(а) «Спасибо»: 20 раз
Поблагодарили: 704 раз в 665 постах
Здравствуйте.
Автор: VoprosRo Перейти к цитате
Добрый день, имеется лицензия для Java CSP.
Но для работы Java CSP нужно установить JCP.
JCP просит лицензию, получается для JCP лицензию отдельно также нужно покупать?
То есть лицензии и для CSP, и для Java CSP, и для JCP?

Для JCSP надо установить JCP, как зависимость. Если используется JCSP, то состояние лицензии JCP неважно, если он (JCP) не используется. Для JCSP лицензия нужна в том случае, если у CSP - серверная лицензия, иначе лицензия для JCSP не нужна (она не проверяется). Таким образом, нужна либо клиентская лицензия на CSP (тогда для JCSP лицензия не нужна), либо серверная для CSP и лицензия для JCSP.

thanks 1 пользователь поблагодарил Евгений Афанасьев за этот пост.
VoprosRo оставлено 07.11.2018(UTC)
Offline VoprosRo  
#3 Оставлено : 7 ноября 2018 г. 21:18:25(UTC)
VoprosRo

Статус: Активный участник

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

Сказал(а) «Спасибо»: 12 раз
Спасибо за ответ.
Поясните, что значит установить как зависимость?
Я устанавливаю jcp вместе с jcsp следующим образом:

Java Cryptographic Provider[yes - press Enter]:
Encryption module[yes - press Enter]:
Card module for cards and tokens, requires OCF (deprecated)[no - press Enter]:
Card module for cards and tokens[no - press Enter]:
Java TLS Provider[no - press Enter]:
CAdES, XAdES modules (acquire bouncycastle: bc*-jdk15on-1.50)[no - press Enter]:
Native Java Cryptographic Provider (requires Crypto-Pro CSP)[no - press Enter]:yes
Java Cryptographic Provider, serial number[trial, 3 months, yes - press Enter]:
Native Java Cryptographic Provider (requires Crypto-Pro CSP), serial number[trial, 3 months, yes - press Enter]:
Default provider:(0 - JCP, 1 - Java CSP)[0 - press Enter]:1

1. Верно ли я выполняю установку?
Я устанавливаю и JCP и JCSP, но лицензию ввожу только для JCSP?

2. Из архива java-csp-5.0.39267.zip я использую JCSP.jar, JCPxml.jar и JCP.jar(так как у JCPxml.jar есть ссылки на JCP.jar).
Но в коде использую провайдер JCSP, а именно keyStore = KeyStore.getInstance(JCSP.HD_STORE_NAME, JCSP.PROVIDER_NAME); (Единственное место, где я вызываю JCSP)
Это значит, что я использую JCSP, а JCP не использую?

3. Если лицензия для JCP не введена, при этом в коде я использую JCSP провайдер. Может ли быть такое, что через 3 месяца подпись перестанет работать?
Будет ли JCP и далее просить ввести лицензию?

Отредактировано пользователем 8 ноября 2018 г. 11:21:11(UTC)  | Причина: Не указана

Online Евгений Афанасьев  
#4 Оставлено : 9 ноября 2018 г. 9:50:58(UTC)
Евгений Афанасьев

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

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

Сказал(а) «Спасибо»: 20 раз
Поблагодарили: 704 раз в 665 постах
Автор: VoprosRo Перейти к цитате
Спасибо за ответ.
Поясните, что значит установить как зависимость?
Я устанавливаю jcp вместе с jcsp следующим образом:
...
Default provider:(0 - JCP, 1 - Java CSP)[0 - press Enter]:1

1. Верно ли я выполняю установку?
Я устанавливаю и JCP и JCSP, но лицензию ввожу только для JCSP?

2. Из архива java-csp-5.0.39267.zip я использую JCSP.jar, JCPxml.jar и JCP.jar(так как у JCPxml.jar есть ссылки на JCP.jar).
Но в коде использую провайдер JCSP, а именно keyStore = KeyStore.getInstance(JCSP.HD_STORE_NAME, JCSP.PROVIDER_NAME); (Единственное место, где я вызываю JCSP)
Это значит, что я использую JCSP, а JCP не использую?

3. Если лицензия для JCP не введена, при этом в коде я использую JCSP провайдер. Может ли быть такое, что через 3 месяца подпись перестанет работать?
Будет ли JCP и далее просить ввести лицензию?

У JCP и JCSP есть общие константы и классы/интерфейсы, поэтому для JCSP нужен JCP.
1. Да, установка верная. В панели управления на закладке "Алгоритмы", как и при установке, тоже можно указать провайдер по умолчанию. Лицензия для JCSP может не потребоваться, если у КриптоПро CSP лицензия - клиентская, если же у КриптоПро CSP лицензия - серверная, то да - для JCSP нужна лицензия. Если JCP не используется, лицензия ему не нужна.
2. Да, все верно, но, наверняка, что-то еще делается с ключом, поэтому нужно везде (чаще всего, это метод getInstance()) указать провайдер JCSP, а не JCP : например, Signature.getInstance(<algorithm>, JCSP.PROVIDER_NAME) и т.п.
3. Нет, если см. п.2. JCP не будет просить лицензию, если не используется (если в KeyStore был передан JCSP, а JCP).


thanks 1 пользователь поблагодарил Евгений Афанасьев за этот пост.
VoprosRo оставлено 09.11.2018(UTC)
Offline VoprosRo  
#5 Оставлено : 22 ноября 2018 г. 10:40:01(UTC)
VoprosRo

Статус: Активный участник

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

Сказал(а) «Спасибо»: 12 раз
Доброго времени суток.
JCSP, JCP и CSP установлены в контейнер docker с операционной системой Ubuntu 18.04.1 LTS.
JCSP в /usr/lib/jvm/jdk1.8.0_171/jre/ команда: "./setup_console.sh $JAVA_HOME/jre/ -force -en -install -jre $JAVA_HOME/jre/ -jcsp -default_provider 1 -serial_jcsp ${jcsp_license}"
JCP в /var/opt/cprocsp/ команда "./setup_console.sh $JAVA_HOME/jre/ -force -en -install -jre $JAVA_HOME/jre/ -jcp -jcryptop -default_provider 1" БЕЗ ЛИЦЕНЗИИ
Для CSP "./cpconfig -license -set ${csp_license}"

Для JCSP и CSP ввожу лицензии в формате XXXXX-XXXXX-XXXXX-XXXXX-XXXXX, для JCP не ввожу.
При проверке лицензий вижу следующие результаты(в примере вместо X - цифра или буква):
Для CSP:
Код:
root@62007ca094f9:/opt/cprocsp/sbin/amd64# /opt/cprocsp/sbin/amd64/cpconfig -license -view
License validity:
XXXXX-XXXXX-XXXXX-XXXXX-XXXXX
license  - permanent
License type: Server.


Для JCSP:
Код:
root@62007ca094f9:/# java -classpath JCSP.jar ru.CryptoPro.JCSP.JCSPLicense
License verify:
Type: Server, sign and encrypt
Allowed amount of cores: Unlimited
Serial number: XXXXX-XXXXX-XXXXX-XX
Validity: Permanent
Valid license.


Для JCP:
Код:
root@62007ca094f9:/# java -classpath JCP.jar ru.CryptoPro.JCP.tools.License
License verify:
Type: Server, sign and encrypt
Allowed amount of cores: Unlimited
Serial number: XXXXX-XXXXX-XXXXX-XX
Validity: Until Feb 20, 2019
Valid license.


При подписании сообщения появляется следующая ошибка: License check failed. length not equals serial length
(Если посмотреть на количество символов в серийном номере для JCSP и JCP(пробной!), то длина, действительно, не равна 29. С другой стороны может это проблема в отображении номера в терминале, ведь пробная версия в JCP работает.)
Код:

java.security.ProviderException: License check failed
        at ru.CryptoPro.JCSP.Key.AbstractKeySpec.a(Unknown Source)
        at ru.CryptoPro.JCSP.Key.AbstractKeySpec.read(Unknown Source)
        at ru.CryptoPro.JCSP.KeyStore.CSPStore.a(Unknown Source)
        at ru.CryptoPro.JCSP.KeyStore.CSPStore.a(Unknown Source)
        at ru.CryptoPro.JCSP.KeyStore.CSPStore.engineGetKey(Unknown Source)
        at ru.CryptoPro.JCSP.KeyStore.MetaCSPStore.engineGetKey(Unknown Source)
        at ru.CryptoPro.JCSP.KeyStore.JCSPMetaCSPStore.engineGetKey(Unknown Source)
        at java.security.KeyStore.getKey(KeyStore.java:1023)
        at cryptoPro.sign.Sign.sign(Sign.java:189)
        at SpringBootApplication.Controller.testMethod(Controller.java:20)
        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.web.method.support.InvocableHandlerMethod.doInvoke(InvocableHandlerMethod.java:205)
        at org.springframework.web.method.support.InvocableHandlerMethod.invokeForRequest(InvocableHandlerMethod.java:133)
        at org.springframework.web.servlet.mvc.method.annotation.ServletInvocableHandlerMethod.invokeAndHandle(ServletInvocableHandlerMethod.java:97)
        at org.springframework.web.servlet.mvc.method.annotation.RequestMappingHandlerAdapter.invokeHandlerMethod(RequestMappingHandlerAdapter.java:827)
        at org.springframework.web.servlet.mvc.method.annotation.RequestMappingHandlerAdapter.handleInternal(RequestMappingHandlerAdapter.java:738)
        at org.springframework.web.servlet.mvc.method.AbstractHandlerMethodAdapter.handle(AbstractHandlerMethodAdapter.java:85)
        at org.springframework.web.servlet.DispatcherServlet.doDispatch(DispatcherServlet.java:967)
        at org.springframework.web.servlet.DispatcherServlet.doService(DispatcherServlet.java:901)
        at org.springframework.web.servlet.FrameworkServlet.processRequest(FrameworkServlet.java:970)
        at org.springframework.web.servlet.FrameworkServlet.doPost(FrameworkServlet.java:872)
        at javax.servlet.http.HttpServlet.service(HttpServlet.java:661)
        at org.springframework.web.servlet.FrameworkServlet.service(FrameworkServlet.java:846)
        at javax.servlet.http.HttpServlet.service(HttpServlet.java:742)
        at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:231)
        at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:166)
        at org.apache.tomcat.websocket.server.WsFilter.doFilter(WsFilter.java:52)
        at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:193)
        at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:166)
        at org.springframework.web.filter.RequestContextFilter.doFilterInternal(RequestContextFilter.java:99)
        at org.springframework.web.filter.OncePerRequestFilter.doFilter(OncePerRequestFilter.java:107)
        at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:193)
        at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:166)
        at org.springframework.web.filter.HttpPutFormContentFilter.doFilterInternal(HttpPutFormContentFilter.java:109)
        at org.springframework.web.filter.OncePerRequestFilter.doFilter(OncePerRequestFilter.java:107)
        at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:193)
        at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:166)
        at org.springframework.web.filter.HiddenHttpMethodFilter.doFilterInternal(HiddenHttpMethodFilter.java:81)
        at org.springframework.web.filter.OncePerRequestFilter.doFilter(OncePerRequestFilter.java:107)
        at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:193)
        at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:166)
        at org.springframework.web.filter.CharacterEncodingFilter.doFilterInternal(CharacterEncodingFilter.java:197)
        at org.springframework.web.filter.OncePerRequestFilter.doFilter(OncePerRequestFilter.java:107)
        at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:193)
        at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:166)
        at org.apache.catalina.core.StandardWrapperValve.invoke(StandardWrapperValve.java:198)
        at org.apache.catalina.core.StandardContextValve.invoke(StandardContextValve.java:96)
        at org.apache.catalina.authenticator.AuthenticatorBase.invoke(AuthenticatorBase.java:496)
        at org.apache.catalina.core.StandardHostValve.invoke(StandardHostValve.java:140)
        at org.apache.catalina.valves.ErrorReportValve.invoke(ErrorReportValve.java:81)
        at org.apache.catalina.core.StandardEngineValve.invoke(StandardEngineValve.java:87)
        at org.apache.catalina.connector.CoyoteAdapter.service(CoyoteAdapter.java:342)
        at org.apache.coyote.http11.Http11Processor.service(Http11Processor.java:803)
        at org.apache.coyote.AbstractProcessorLight.process(AbstractProcessorLight.java:66)
        at org.apache.coyote.AbstractProtocol$ConnectionHandler.process(AbstractProtocol.java:790)
        at org.apache.tomcat.util.net.NioEndpoint$SocketProcessor.doRun(NioEndpoint.java:1468)
        at org.apache.tomcat.util.net.SocketProcessorBase.run(SocketProcessorBase.java:49)
        at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1149)
        at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:624)
        at org.apache.tomcat.util.threads.TaskThread$WrappingRunnable.run(TaskThread.java:61)
        at java.lang.Thread.run(Thread.java:748)
Caused by: java.security.PrivilegedActionException: java.io.IOException: java.lang.IllegalArgumentException: length not equals serial length
        at java.security.AccessController.doPrivileged(Native Method)
        ... 64 more
Caused by: java.io.IOException: java.lang.IllegalArgumentException: length not equals serial length
        at ru.CryptoPro.JCP.tools.AbstractLicense.<init>(Unknown Source)
        at ru.CryptoPro.JCP.tools.License.<init>(Unknown Source)
        at ru.CryptoPro.JCSP.JCSPLicense.<init>(Unknown Source)
        at ru.CryptoPro.JCSP.Key.cl_1.run(Unknown Source)
        ... 65 more
Caused by: java.lang.IllegalArgumentException: length not equals serial length
        at ru.CryptoPro.JCP.tools.AbstractLicense.delSeparators(Unknown Source)
        at ru.CryptoPro.JCP.tools.AbstractLicense.a(Unknown Source)
        ... 69 more
java.security.ProviderException: License check failed
        at ru.CryptoPro.JCSP.Key.AbstractKeySpec.a(Unknown Source)
        at ru.CryptoPro.JCSP.Key.AbstractKeySpec.read(Unknown Source)
        at ru.CryptoPro.JCSP.KeyStore.CSPStore.a(Unknown Source)
        at ru.CryptoPro.JCSP.KeyStore.CSPStore.a(Unknown Source)
        at ru.CryptoPro.JCSP.KeyStore.CSPStore.engineGetKey(Unknown Source)
        at ru.CryptoPro.JCSP.KeyStore.MetaCSPStore.engineGetKey(Unknown Source)
        at ru.CryptoPro.JCSP.KeyStore.JCSPMetaCSPStore.engineGetKey(Unknown Source)
        at java.security.KeyStore.getKey(KeyStore.java:1023)
        at cryptoPro.sign.Sign.sign(Sign.java:189)
        at SpringBootApplication.Controller.testMethod(Controller.java:20)
        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.web.method.support.InvocableHandlerMethod.doInvoke(InvocableHandlerMethod.java:205)
        at org.springframework.web.method.support.InvocableHandlerMethod.invokeForRequest(InvocableHandlerMethod.java:133)
        at org.springframework.web.servlet.mvc.method.annotation.ServletInvocableHandlerMethod.invokeAndHandle(ServletInvocableHandlerMethod.java:97)
        at org.springframework.web.servlet.mvc.method.annotation.RequestMappingHandlerAdapter.invokeHandlerMethod(RequestMappingHandlerAdapter.java:827)
        at org.springframework.web.servlet.mvc.method.annotation.RequestMappingHandlerAdapter.handleInternal(RequestMappingHandlerAdapter.java:738)
        at org.springframework.web.servlet.mvc.method.AbstractHandlerMethodAdapter.handle(AbstractHandlerMethodAdapter.java:85)
        at org.springframework.web.servlet.DispatcherServlet.doDispatch(DispatcherServlet.java:967)
        at org.springframework.web.servlet.DispatcherServlet.doService(DispatcherServlet.java:901)
        at org.springframework.web.servlet.FrameworkServlet.processRequest(FrameworkServlet.java:970)
        at org.springframework.web.servlet.FrameworkServlet.doPost(FrameworkServlet.java:872)
        at javax.servlet.http.HttpServlet.service(HttpServlet.java:661)
        at org.springframework.web.servlet.FrameworkServlet.service(FrameworkServlet.java:846)
        at javax.servlet.http.HttpServlet.service(HttpServlet.java:742)
        at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:231)
        at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:166)
        at org.apache.tomcat.websocket.server.WsFilter.doFilter(WsFilter.java:52)
        at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:193)
        at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:166)
        at org.springframework.web.filter.RequestContextFilter.doFilterInternal(RequestContextFilter.java:99)
        at org.springframework.web.filter.OncePerRequestFilter.doFilter(OncePerRequestFilter.java:107)
        at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:193)
        at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:166)
        at org.springframework.web.filter.HttpPutFormContentFilter.doFilterInternal(HttpPutFormContentFilter.java:109)
        at org.springframework.web.filter.OncePerRequestFilter.doFilter(OncePerRequestFilter.java:107)
        at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:193)
        at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:166)
        at org.springframework.web.filter.HiddenHttpMethodFilter.doFilterInternal(HiddenHttpMethodFilter.java:81)
        at org.springframework.web.filter.OncePerRequestFilter.doFilter(OncePerRequestFilter.java:107)
        at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:193)
        at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:166)
        at org.springframework.web.filter.CharacterEncodingFilter.doFilterInternal(CharacterEncodingFilter.java:197)
        at org.springframework.web.filter.OncePerRequestFilter.doFilter(OncePerRequestFilter.java:107)
        at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:193)
        at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:166)
        at org.apache.catalina.core.StandardWrapperValve.invoke(StandardWrapperValve.java:198)
        at org.apache.catalina.core.StandardContextValve.invoke(StandardContextValve.java:96)
        at org.apache.catalina.authenticator.AuthenticatorBase.invoke(AuthenticatorBase.java:496)
        at org.apache.catalina.core.StandardHostValve.invoke(StandardHostValve.java:140)
        at org.apache.catalina.valves.ErrorReportValve.invoke(ErrorReportValve.java:81)
        at org.apache.catalina.core.StandardEngineValve.invoke(StandardEngineValve.java:87)
        at org.apache.catalina.connector.CoyoteAdapter.service(CoyoteAdapter.java:342)
        at org.apache.coyote.http11.Http11Processor.service(Http11Processor.java:803)
        at org.apache.coyote.AbstractProcessorLight.process(AbstractProcessorLight.java:66)
        at org.apache.coyote.AbstractProtocol$ConnectionHandler.process(AbstractProtocol.java:790)
        at org.apache.tomcat.util.net.NioEndpoint$SocketProcessor.doRun(NioEndpoint.java:1468)
        at org.apache.tomcat.util.net.SocketProcessorBase.run(SocketProcessorBase.java:49)
        at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1149)
        at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:624)
        at org.apache.tomcat.util.threads.TaskThread$WrappingRunnable.run(TaskThread.java:61)
        at java.lang.Thread.run(Thread.java:748)
Caused by: java.security.PrivilegedActionException: java.io.IOException: java.lang.IllegalArgumentException: length not equals serial length
        at java.security.AccessController.doPrivileged(Native Method)
        ... 64 more
Caused by: java.io.IOException: java.lang.IllegalArgumentException: length not equals serial length
        at ru.CryptoPro.JCP.tools.AbstractLicense.<init>(Unknown Source)
        at ru.CryptoPro.JCP.tools.License.<init>(Unknown Source)
        at ru.CryptoPro.JCSP.JCSPLicense.<init>(Unknown Source)
        at ru.CryptoPro.JCSP.Key.cl_1.run(Unknown Source)
        ... 65 more
Caused by: java.lang.IllegalArgumentException: length not equals serial length
        at ru.CryptoPro.JCP.tools.AbstractLicense.delSeparators(Unknown Source)
        at ru.CryptoPro.JCP.tools.AbstractLicense.a(Unknown Source)
        ... 69 more
Online Евгений Афанасьев  
#6 Оставлено : 22 ноября 2018 г. 11:20:05(UTC)
Евгений Афанасьев

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

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

Сказал(а) «Спасибо»: 20 раз
Поблагодарили: 704 раз в 665 постах
Здравствуйте.
Такая ошибка может возникнуть, если нет возможности прочитать лицензию из файла. Лицензия сохраняется в папке .systemPrefs, по умолчанию это /etc/.java/.systemPrefs/ru/CryptoPro/JCP/tools/prefs.xml. Есть ли доступ к этому файлу у пользователя, под которым выполняется запуск приложения?
Offline VoprosRo  
#7 Оставлено : 22 ноября 2018 г. 12:10:10(UTC)
VoprosRo

Статус: Активный участник

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

Сказал(а) «Спасибо»: 12 раз
Запуск приложения выполняется под root.
Запускается веб сервис командой: $JAVA_HOME/jre/bin/java -jar /CryptoProSign.jar

В etc нет .java.
А в /root/.java/.userPrefs/ru/CryptoPro/JCP/ нет tools.

Код:
root@420ae0524dec:/# find -name prefs.xml
./usr/lib/jvm/jdk1.8.0_171/jre/.systemPrefs/ru/prefs.xml
./usr/lib/jvm/jdk1.8.0_171/jre/.systemPrefs/ru/CryptoPro/Install/prefs.xml
./usr/lib/jvm/jdk1.8.0_171/jre/.systemPrefs/ru/CryptoPro/prefs.xml
./usr/lib/jvm/jdk1.8.0_171/jre/.systemPrefs/ru/CryptoPro/JCSP/prefs.xml
./usr/lib/jvm/jdk1.8.0_171/jre/.systemPrefs/ru/CryptoPro/JCSP/params/prefs.xml
./usr/lib/jvm/jdk1.8.0_171/jre/.systemPrefs/ru/CryptoPro/JCP/Util/prefs.xml
./usr/lib/jvm/jdk1.8.0_171/jre/.systemPrefs/ru/CryptoPro/JCP/KeyStore/HDImage/prefs.xml
./usr/lib/jvm/jdk1.8.0_171/jre/.systemPrefs/ru/CryptoPro/JCP/KeyStore/prefs.xml
./usr/lib/jvm/jdk1.8.0_171/jre/.systemPrefs/ru/CryptoPro/JCP/ControlPane/prefs.xml
./usr/lib/jvm/jdk1.8.0_171/jre/.systemPrefs/ru/CryptoPro/JCP/tools/prefs.xml
./usr/lib/jvm/jdk1.8.0_171/jre/.systemPrefs/ru/CryptoPro/JCP/tools/Control/prefs.xml
./usr/lib/jvm/jdk1.8.0_171/jre/.systemPrefs/ru/CryptoPro/JCP/tools/CPVerify/prefs.xml
./usr/lib/jvm/jdk1.8.0_171/jre/.systemPrefs/ru/CryptoPro/JCP/prefs.xml
./usr/lib/jvm/jdk1.8.0_171/jre/.systemPrefs/ru/CryptoPro/JCP/params/prefs.xml
./root/.java/.userPrefs/ru/prefs.xml
./root/.java/.userPrefs/ru/CryptoPro/prefs.xml
./root/.java/.userPrefs/ru/CryptoPro/JCP/prefs.xml
./root/.java/.userPrefs/ru/CryptoPro/JCP/Random/prefs.xml



chmod -R 777 $JAVA_HOME/jre/.systemPrefs/
Код:
root@420ae0524dec:/# ls -lta $JAVA_HOME/jre/.systemPrefs/ru/CryptoPro/JCP/tools/
total 20
-rwxrwxrwx  1 root root  388 Nov 22 08:49 prefs.xml
drwxrwxrwx  6 root root 4096 Nov 22 08:49 .
drwxrwxrwx 11 root root 4096 Nov 22 08:48 ..
drwxrwxrwx  2 root root 4096 Nov 22 08:48 CPVerify
drwxrwxrwx  2 root root 4096 Nov 22 08:48 Control



chmod -R 777 /root/.java/
Код:
root@420ae0524dec:/# ls -lta ./root/.java
total 12
drwxrwxrwx 4 root root 4096 Nov 22 08:48 .
drwx------ 6 root root 4096 Nov 22 08:48 ..
drwxrwxrwx 4 root root 4096 Nov 22 08:48 .userPrefs



Ошибка осталась.

Отредактировано пользователем 22 ноября 2018 г. 12:12:01(UTC)  | Причина: Не указана

Online Евгений Афанасьев  
#8 Оставлено : 22 ноября 2018 г. 12:16:09(UTC)
Евгений Афанасьев

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

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

Сказал(а) «Спасибо»: 20 раз
Поблагодарили: 704 раз в 665 постах
В файле ./usr/lib/jvm/jdk1.8.0_171/jre/.systemPrefs/ru/CryptoPro/JCP/tools/prefs.xml есть заполненные ключи вида License?
Offline VoprosRo  
#9 Оставлено : 22 ноября 2018 г. 12:27:31(UTC)
VoprosRo

Статус: Активный участник

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

Сказал(а) «Спасибо»: 12 раз
В этом файле следующее.
Код:
root@420ae0524dec:/# cat /usr/lib/jvm/jdk1.8.0_171/jre/.systemPrefs/ru/CryptoPro/JCP/tools/prefs.xml

Код:
<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE map SYSTEM "http://java.sun.com/dtd/preferences.dtd">
<map MAP_XML_VERSION="1.0">
<entry key="License_class_license_2_0" value="<СИМВОЛЫ(не серийный номер)>"/>
<entry key="SelfTester_jar_names" value="ru.CryptoPro.JCP.Install.JCPInstaller;ru.CryptoPro.Crypto.JCryptoPInstaller;ru.CryptoPro.JCSP.JCSPInstaller"/>                                                                                          
</map>



Хочу отметить, что без ввода лицензий(то есть с пробными), все работает.

Отредактировано пользователем 22 ноября 2018 г. 12:33:09(UTC)  | Причина: Не указана

Offline VoprosRo  
#10 Оставлено : 22 ноября 2018 г. 17:48:11(UTC)
VoprosRo

Статус: Активный участник

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

Сказал(а) «Спасибо»: 12 раз
Проблема решена. Действительно, дело было в правах. В dockerfile сначала проставлялась лицензия, а потом выдавались права.
Благодарю.
RSS Лента  Atom Лента
Пользователи, просматривающие эту тему
Guest
3 Страницы123>
Быстрый переход  
Вы не можете создавать новые темы в этом форуме.
Вы не можете отвечать в этом форуме.
Вы не можете удалять Ваши сообщения в этом форуме.
Вы не можете редактировать Ваши сообщения в этом форуме.
Вы не можете создавать опросы в этом форуме.
Вы не можете голосовать в этом форуме.