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

Уведомление

Icon
Error

Опции
К последнему сообщению К первому непрочитанному
Offline Пудуль Юрий  
#1 Оставлено : 20 июня 2019 г. 15:52:43(UTC)
Пудуль Юрий

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

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

Здравствуйте, столкнулся с проблемой, приложение запущено через докер и оно не может запустить JCP провайдер.

Локально всё отлично отрабатывает, проверял и на линуксе и на винде и на маке, всё ок.

Итак, что я делаю;

В самом приложении в нужный момент вызываю Security.addProvider(new JCP());
сам JCP (версия которая ..._a для jvm 10 и выше) импортирую в помнике всё необходимое

для создания образа в докере делается вот такое:
Цитата:

FROM maven:3.6.1-jdk-11 as builder
ARG CI_SCRIPT
RUN [[ -z "$CI_SCRIPT" ]] || /bin/sh -c "$CI_SCRIPT"

COPY pom.xml /source/
COPY src /source/src
RUN /usr/bin/mvn -B -f /source/pom.xml clean
RUN /usr/bin/mvn -B -f /source/pom.xml dependency:go-offline
RUN /usr/bin/mvn -B -f /source/pom.xml package -DskipTests=true

FROM openjdk:11.0.3-jdk
COPY --from=builder /source/target/smev-application-service-1.0.0-SNAPSHOT.jar /app.jar
RUN mkdir -p /temp/generated-forms-xml/
COPY ./linux-amd64.tgz /
COPY ./RPGUr201.000.zip /
EXPOSE 8084
ENTRYPOINT ["java","-Djava.security.egd=file:/dev/./urandom","-jar","/app.jar"]



в докере пока пытаюсь ручками установить всё необходимое, а именно, напишу по командам:

в java.security добавил провайдеры:
security.provider.13=JCP
security.provider.14=RevCheck
security.provider.15=CAdES

1) sudo apt-get -y install alien lsb-core libccid pcscd
2) распаковываю скаченный csp R4 и вызываю ./install.sh
3) создаю хранилище csptest -keyset -provtype 75 -newkeyset -cont '\\.\HDIMAGE\RPGU'
4) и подменяю ключи на те что у меня есть cp -rf header.key /var/opt/cprocsp/keys/root/RPGUr201.000/header.key тут для всех ключей делаю

и всё, вроде как должно работать всё отлично, но при подписании летят ошибки:

при первой попытке:
Цитата:

2019-06-20 16:06:14.596 INFO 1 --- [nio-8084-exec-1] o.a.c.c.C.[Tomcat].[localhost].[/] : Initializing Spring DispatcherServlet 'dispatcherServlet'
smev-application-service | 2019-06-20 16:06:14.596 INFO 1 --- [nio-8084-exec-1] o.s.web.servlet.DispatcherServlet : Initializing Servlet 'dispatcherServlet'
smev-application-service | 2019-06-20 16:06:14.608 INFO 1 --- [nio-8084-exec-1] o.s.web.servlet.DispatcherServlet : Completed initialization in 12 ms
smev-application-service | 2019-06-20 16:06:15.130 INFO 1 --- [nio-8084-exec-1] r.i.v.c.p.ms.low_level.NativeCryptoLib : native crypto lib: user home dir: /root/
smev-application-service | 2019-06-20 16:06:15.130 INFO 1 --- [nio-8084-exec-1] r.i.v.c.p.ms.low_level.NativeCryptoLib : native crypto lib: сохранение dll в пользовательскую папку...
smev-application-service | java.lang.UnsatisfiedLinkError: ru.it.vs.cryptoserver.providers.ms.low_level.NativeCryptoLib.enumProviders()[Lru/it/vs/cryptoserver/providers/ms/low_level/ProviderInfo;
smev-application-service | at ru.it.vs.cryptoserver.providers.ms.low_level.NativeCryptoLib.enumProviders(Native Method)
smev-application-service | at ru.it.vs.cryptoserver.providers.ms.api_impl.CryptoProviderFactory.getProviderList(CryptoProviderFactory.java:78)
smev-application-service | at ru.it.vs.cryptoserver.providers.ms.api_impl.CryptoProviderFactory.acquireProvider(CryptoProviderFactory.java:95)
...


при всех последующих попытках:
Цитата:

ru.CryptoPro.JCP.tools.SelfTesterException: SelfTester Error: some test crashed twice in a row, usage of JCP is no longer available
smev-application-service | at ru.CryptoPro.JCP.tools.SelfTester.check(Unknown Source)
smev-application-service | at ru.CryptoPro.JCP.tools.SelfTester.checkClass(Unknown Source)
smev-application-service | at ru.CryptoPro.JCP.tools.Starter.check(Unknown Source)
smev-application-service | at ru.CryptoPro.JCP.KeyStore.JCPKeyStore.engineLoad(Unknown Source)
smev-application-service | at java.base/java.security.KeyStore.load(KeyStore.java:1479)
smev-application-service | at ru.it.vs.cryptoserver.providers.jcp.api_impl.CryptoProviderJCP.getKeyStore(CryptoProviderJCP.java:183)
smev-application-service | at ru.it.vs.cryptoserver.providers.jcp.api_impl.CryptoProviderJCP.getPrivateKey(CryptoProviderJCP.java:145)
...


Буду рад любой помощи..

Отредактировано пользователем 20 июня 2019 г. 19:09:49(UTC)  | Причина: Не указана

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