Запуск
java -jar -Dspring.cloud.config.enabled=false -XX:+HeapDumpOnOutOfMemoryError -XX:+UseConcMarkSweepGC -XX:+UseParNewGC crypto-service-0.9.2-b40.jar
java -jar -XX:+HeapDumpOnOutOfMemoryError -XX:+UnlockExperimentalVMOptions -XX:+UseG1GC -XX:MaxGCPauseMillis=75 ./crypto-service-2.0.0.jar
Частина імені застосування, яка відповідає за номер збірки, буде відрізнятися для різних збірок. В прикладі вище даа частина представлена значенням "b40".
Застосування підтримує всі можливості зовнішнього конфігурування. які надає Spring Boot (опис тут). Найбільш інтуїтивним є варіант, коли конфігурація знаходиться у папці застосування у файлі application.yaml (формат YAML) чи application.properties (Java configuration file).
Параметри конфігурації
Загальні
Назва параметра | YAML варіант | Опис |
---|---|---|
server.port=9093 | server: | Порт, через який здійснюється взаємодія з Сервером. |
spring.main.banner-mode: off | spring: main: banner-mode: "off" | Вимикається виведення текстового банера "Spring Boot" при старте застосування |
logging.file.enable=true | logging: file.enable: true | true - ввімкнути логування у файл За замовчуванням, якщо не вказано параметр та його значення, - true. |
logging.file=crypto-server.log | logging: | Ім'я файлу для логування подій застосування. |
logging.path=/var/log/cix509/crypto-server | logging: | Шлях до каталогу, де буде зберігатися поточний лог-файл та архів логів. |
logging.console.enable=true | logging: console.enable: true | true - ввімкнути логування в консоль (стандартне виведення) За замовчуванням, якщо не вказано параметр та його значення, - true. |
logging.pattern.console=%.-0m | logging: | Застаріла опція. Використовується logging.console.enable. Вимикає виведення повідомлень логу в стандартне виведення (консоль). |
spring.cloud.config.enabled | spring: cloud: config: | Вимикає роботу з сервером віддаленого конфігурування. Значення параметра має бути обов'язкового встановлено в "false", якщо сервер буде працювати в standalone режимі без застосування сервера віддлаленого конфігурування на базі Spring Cloud Config Server. |
Параметри застосування
Назва параметра | YAML варіант | Опис | ||||||||||||||||||||||||||||||||||||||||
---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
sjwsa.workerThreadNumber=4 | sjwsa: | Число одночасних працюючих потоків для виконання криптографічних операцій. | ||||||||||||||||||||||||||||||||||||||||
sjwsa.caConfigFile=ca1.properties | sjwsa: | Файл з параметрами підключення до серверів (TSA, OCSP, LDAP, CMP) ЦСК. Доступні вбудоавні файли з параметрами підключення до КНЕДП
| ||||||||||||||||||||||||||||||||||||||||
sjwsa.caCertificateChain=address1;address2 | sjwsa: | Адреса ресурсів (файлів) (через крапку з комою зі списком сертифікатів КНЕДП. Для локального файлу: file:///CACertificates.p7b | ||||||||||||||||||||||||||||||||||||||||
sjwsa.iitCaConfigUrl=iitCaConfigAddress | sjwsa: | Aдреса ресурсу (файлу) з описом деяких параметрів КНЕДП, які використовують бібліотеки ІІТ. Дані необхідні для перевірки підпису без сертифікату підписанта. Для локального файлу: file:///CAs.json | ||||||||||||||||||||||||||||||||||||||||
sjwsa.keyGenerationProxy=proxyAddress | sjwsa: | Адреса прокссі сервера для відправки запитів на реєстрацію нових ключів. | ||||||||||||||||||||||||||||||||||||||||
sjwsa.ocspUrlMapper=mapperRules | sjwsa: | Правила трансляції адрес OCSP сервера. Доступні значення: | ||||||||||||||||||||||||||||||||||||||||
sjwsa.voidAutoStart=false | sjwsa: | true - виконати старт веб-сервісу без особистих ключів; | ||||||||||||||||||||||||||||||||||||||||
sjwsa.keyStorage=keyStoragePath | sjwsa: | Шлях до ключового контейнера (носія). | ||||||||||||||||||||||||||||||||||||||||
sjwsa.keyStoragePassword=password | sjwsa: | Пароль (пін-код) до ключовогок контейнеру (захищеного носія). | ||||||||||||||||||||||||||||||||||||||||
sjwsa.cryptoLibDebug | sjwsa: | true - формувати та виводити відладочні повідомлення бібліотеки криптофункцій; * false - не формувати та не виводити відладочні повідомлення бібліотеки криптофункцій. | ||||||||||||||||||||||||||||||||||||||||
sjwsa.watchDogEnabled=false | sjwsa: watchDogEnabled: false | true - процес моніторингу та видалення прострочених сесій активно; * false - процес моніторингу та виделання прострочених сесій неактивно. | ||||||||||||||||||||||||||||||||||||||||
sjwsa.watchDogPeriod=1800 | sjwsa: watchDogPeriod: 1800 | Період запуску процесу видалення прострочених сесій, в секундах. Параметр використовується лише, якщо процес моніторингу та видалення прострочених сесій активно. | ||||||||||||||||||||||||||||||||||||||||
sjwsa.ticketTimeToLive=3600 | sjwsa: ticketTimeToLive: 3600 | Інтервал часу, після завершення якого сесія вважається простроченою, в секундах. Параметр використовуєтьсья лише, якщо процес моніторингу та видалення прострочених сесій активно. | ||||||||||||||||||||||||||||||||||||||||
sjwsa.watchDogTicketPerIteration=1000 | sjwsa: watchDogTicketPerIteration: 1000 | Максимальна кількість сесій, яке прцоес моніторингу та видалення прострочених сесій опрацьовує перед паузою (sjwsa.watchDogInterIterationDelay). Параметр використовується лише, якщо процес моніторингу та видалення прострочених сесій активно. | ||||||||||||||||||||||||||||||||||||||||
sjwsa.watchDogInterIterationDelay | sjwsa: watchDogInterIterationDelay: 100 | Пауза, яку процес моніторингу та видалення прострочених сесій робить після обробки максимальної кількості сессій (sjwsa.watchDogTicketPerIteration), в мілісекундах. Параметр використовується, якщо процес моніторингу та видалення прострочених сесій активно. |
* - значення за замовчуванням
Конфігурація за замовчуванням
spring: application: name: Cipher Crypto Server server: port: 9093 logging: file: crypto-server.log path: . pattern: file: "%d{yyyy-MM-dd HH:mm:ss.SSS} -%5p ${PID} [%thread] %-20.20logger{20} - %m%n %wEx" sjwsa: serviceUptime: 0 voidAutoStart: false ocspUrlMapper: http://uakey.com.ua/services/ocsp=http://uakey.com.ua;http://uakey.com.ua/services/ocsp=http://uakey.com.ua/
Приклад конфігурації
logging: path: /var/log/cix509/signer-server console.enable: false sjwsa: workerThreadNumber: 5 caCertificateChain: https://cipher.kiev.ua/files/sjwsa/CACertificates.p7b iitCaConfigUrl: https://cipher.kiev.ua/files/sjwsa/CAs.json cryptoLibDebug: true caConfigFile: ca1.properties keyStorage: ivanov.pfx keyStoragePassword: 12345678
Приклад файлу з параметрами підключення до Тестового ЦСК "Сайфер"
################################################################################ # # Конфігураційний файл Центру сертифікації ключів # Версія 1.0 # 29.09.2016 # ################################################################################ # Доступні параметри: ################################################################################ # # caConfigName назва ЦСК # # caManufacturer виробник ЦСК # # caConfigId ідентифікатор ЦСК # # ldapServer назва параметру адреси LDAP-сервера # у форматі ldap://адрес[:порт], # наприклад ldap://192.168.0.123. # # ldapBaseDn базова адреса в ієрархії LDAP. # # ldapLogin ім'я користувача для входу в LDAP. # # ldapPassword пароль для входу в LDAP. # # tspServer адреса сервера електронних позначок часу у форматі # server:port, де: # server - доменне ім'я чи IP-адреса, # port - номер порту сервера TSA. # # ocspServer адреса сервера OCSP у форматі server:port, де: # server - домене ім'я чи IP-адреса, # port - номер порту сервера OCSP. # # cmpServer адреса сервера CMP у форматі server:port, де: # server - домене ім'я чи IP-адреса, # port - номер порту сервера CMP. # # useProxyServer позначка використання проксі-серверу. # Доступні значення: # true: проксувати запити LDAP, TSP, OCSP # false: не проксувати LDAP, TSP, OCSP (за # замовчуванням,якщо параметр не вказано); # # proxyServer адреса проксі-сервера. # Доступні значення: # URL сервера у вигляді http://0.0.0.0/proxy_path # # cdpAddress адреса сертифікату видавця # Доступні значення: # URL сервера у вигляді http://0.0.0.0/certificate_path # # acdpAddress резервна адреса сертифікату видавця # Доступні значення: # URL сервера у вигляді # http://0.0.0.0/certificate_path # ################################################################################ caConfigName=Тестовий ЦСК Сайфер caManufacturer=CIPHER caConfigId=testIitCipher ldapServer=ldap://46.182.83.77 ldapBaseDn=dc=cipher,dc=com ldapLogin=cn=read,ou=accounts,dc=cipher,dc=com ldapPassword=mY2daCn8 tspServer=46.182.83.77:318 ocspServer=46.182.83.77:5001 #useProxyServer=true #proxyServer=http://proxy.cipher.kiev.ua:80/cipher-proxy #proxyServer=http://localhost:8080 #proxyServer=http://cipher-proxy.cfapps.io