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

Уведомление

Icon
Error

Опции
К последнему сообщению К первому непрочитанному
Offline dsimonov  
#1 Оставлено : 4 февраля 2015 г. 13:34:16(UTC)
dsimonov

Статус: Участник

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

Сказал(а) «Спасибо»: 1 раз
Добрый день!

На компьютере создан локальный пользователь UserX.
Есть сервис (консольное приложение), который должен запускаться от имени этого пользователя и использовать закрытый ключ, находящийся на токене, для выполнения криптоопераций.

Если запустить сервис через runas /user:UserX, при первом обращении к контейнеру предлагается ввести ПИН-код.
Если в окне ввода ПИН-кода поставить галку "Запомнить pin-код", то при последующих обращениях к контейнеру, ПИН-код не запрашивается.

Однако, если я запускаю этот же сервис через "Планировщик заданий Windows" (из под той же учетной записи UserX), он не может воспользоваться закрытым ключом, несмотря на то, что ПИН-код запомнен.

В диспетчере задач я проверял - процесс в обоих случаях выполняется из под одного и того же пользователя (UserX).

Можете подсказать, как убедить сервис пользоваться запомненным ПИН-кодом при запуске через планировщик?

Отредактировано пользователем 4 февраля 2015 г. 13:35:22(UTC)  | Причина: Не указана

Offline Андрей Писарев  
#2 Оставлено : 4 февраля 2015 г. 15:09:23(UTC)
Андрей *

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

Группы: Участники
Зарегистрирован: 26.07.2011(UTC)
Сообщений: 13,504
Мужчина
Российская Федерация

Сказал «Спасибо»: 554 раз
Поблагодарили: 2250 раз в 1756 постах
А в планировщике что указано?
Выполнять вне зависимости от регистрации пользователя + сохранили его пароль?
Техническую поддержку оказываем тут
Наша база знаний
Offline dsimonov  
#3 Оставлено : 4 февраля 2015 г. 15:29:05(UTC)
dsimonov

Статус: Участник

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

Сказал(а) «Спасибо»: 1 раз
Да, так и указано.

Автор: Андрей * Перейти к цитате
А в планировщике что указано?
Выполнять вне зависимости от регистрации пользователя + сохранили его пароль?


Offline dsimonov  
#4 Оставлено : 5 февраля 2015 г. 12:58:26(UTC)
dsimonov

Статус: Участник

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

Сказал(а) «Спасибо»: 1 раз
Попробовал то же самое через csptest, чтобы получить больше информации.
Запускал так:
Код:
echo date = %date% %time% >> c:\temp\2.log
echo user = %username% >> c:\temp\2.log
csptest -sfsign -sign -in 1.txt -out c:\temp\2.txt -MY "xxx@yyy.ru" >> c:\temp\2.log


Вариант №1 - запуск из командной строки
ПИН-код не запрашивается (был сохранен)

Код:
date = 05.02.2015 14:48:06,89 
user = pkiservice 
#0: 
Subject: XXX
Valid  : 15.04.2014 16:09:00 - 10.04.2019 12:43:00 (UTC)
Issuer : YYY

A CSP has been acquired. 
Source message length: 4
Calculated signature (or signed message) length: 701
Signature was done. Signature (or signed message) length: 685
Output file (c:\temp\2.txt) has been saved
Total: SYS: 0,062 sec USR: 0,031 sec UTC: 2,445 sec
[ErrorCode: 0x00000000]


Вариант №2 - запуск через планировщик под тем же пользователем

Код:
date = 05.02.2015 14:48:52,04 
user = pkiservice 
#0: 
Subject: XXX
Valid  : 15.04.2014 16:09:00 - 10.04.2019 12:43:00 (UTC)
Issuer : YYY

An error occurred in running the program.
.\signtsf.c:364:Cryptographic context could not be acquired.
Error number 0x8009001f (2148073503).
Неправильный параметр набора ключей.

Program is terminating.
[ErrorCode: 0x8009001f]

Отредактировано пользователем 5 февраля 2015 г. 13:00:02(UTC)  | Причина: Не указана

Offline dsimonov  
#5 Оставлено : 5 февраля 2015 г. 14:02:24(UTC)
dsimonov

Статус: Участник

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

Сказал(а) «Спасибо»: 1 раз
В логе CAPI2 (EventViewer) при запуске задачи через планировщик появляется:
Код:
UserData 

  - CryptAcquireCertificatePrivateKey 

  - Certificate 

   [ fileRef]  A4B70BB22F62C682F40B5CD355FD9198B2E4FA4F.cer 
   [ subjectName]  XXX
 
  - Flags 

   [ value]  4 
   [ CRYPT_ACQUIRE_COMPARE_KEY_FLAG]  true 
 
  - EventAuxInfo 

   [ ProcessName]  csptest.exe 
 
  - CorrelationAuxInfo 

   [ TaskId]  {470571BA-C967-4491-8B6A-30FC0C3407AD} 
   [ SeqNumber]  2 
 
  - Result Неправильный параметр набора ключей. 

   [ value]  8009001F 
 
Offline dsimonov  
#6 Оставлено : 6 февраля 2015 г. 11:35:54(UTC)
dsimonov

Статус: Участник

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

Сказал(а) «Спасибо»: 1 раз
Решили задачу, воспользовавшись службой хранения ключей.
В этом случае пин-код сохраняется.

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