Получение «Ошибка GPG» при запуске приложения Java в качестве службы Windows 7 - PullRequest
1 голос
/ 04 марта 2011

Когда я запускаю свое приложение Java в качестве службы Windows, используя оболочку, все работает нормально, кроме случаев, когда приложение пытается расшифровать файл. Выдает следующую ошибку:

Ошибка GPG >> код: 2 >> gpg: зашифрован ключом RSA, ID ########
Ошибка расшифровки gpg: секретный ключ недоступен.

Приложение шифрует и дешифрует файлы без каких-либо проблем, когда не работает как служба. Обертка тоже отлично работает.

Переменные среды были установлены и подтверждены в реестре Windows, но по какой-то причине система не смотрит в каталог Users\AppData\..., где находится ключ.

Это автоматизированное приложение, поэтому нет парольной фразы для шифрования или дешифрования файлов.

Что не так? Где система может искать секретный ключ?

Ответы [ 2 ]

1 голос
/ 04 марта 2011

Я решил вышеуказанную проблему, изменив свойства сервиса. Следующим шагом я решил проблему.

  1. В командной строке введите services.msc, затем нажмите Enter Key. Откроется окно услуг.

  2. Найдите мой сервис и щелкните правой кнопкой мыши, затем выберите Свойства

  3. Нажмите вкладку «Вход в систему», затем нажмите кнопку-переключатель для этой учетной записи

  4. Нажмите кнопку «Обзор», затем введите имя объекта, чтобы выбрать его. Я ввел свое имя пользователя для своей машины и нажмите кнопку «Проверить имя» после подтверждения имени пользователя, нажмите кнопку «ОК»

  5. Введите пароль и подтвердите пароль, затем нажмите «Применить», откройте диалоговое окно уведомления «ОК»

  6. Остановите службу, затем перезапустите службу, отправляет зашифрованные файлы, и она работает в порядке.

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

Теперь вопрос или кто-то любит отвечать:

Как изменить или изменить учетную запись локальной системы в ОС Windows?

0 голосов
/ 01 ноября 2011

Добавьте вашу связку ключей в папку C: \ Users \ Default \ AppData \ Roaming \ gnupg. Судя по всему, учетная запись localsystem забирает здесь связку ключей.

...