Необходимые разрешения для доступа к смарт-картам из службы Windows - PullRequest
0 голосов
/ 14 ноября 2010

У меня есть служба Windows, которая делает некоторые вещи, используя смарт-карту. Сертификат смарт-карты отображается в хранилище MY локального компьютера. Доступ к закрытому ключу смарт-карты не является проблемой, когда служба запускается как система, но происходит сбой при запуске как NetworkService.

Я уже предоставил доступ к сертификату NetworkService с помощью MMC сертификата (Управление личными ключами ...).

Я получаю ошибку: Менеджер ресурсов смарт-карт не работает.

Ошибка генерируется с криптографическим исключением.

Stacktrace:   at System.Security.Cryptography.Utils.CreateProvHandle(CspParameters     parameters, Boolean randomKeyContainer)
    at System.Security.Cryptography.Utils.GetKeyPairHelper(CspAlgorithmType keyType, CspParameters parameters, Boolean randomKeyContainer, Int32 dwKeySize, SafeProvHandle& safeProvHandle, SafeKeyHandle& safeKeyHandle)
    at System.Security.Cryptography.RSACryptoServiceProvider.GetKeyPair()
    at System.Security.Cryptography.RSACryptoServiceProvider..ctor(Int32 dwKeySize, CspParameters parameters, Boolean useDefaultKeySize)
    at System.Security.Cryptography.X509Certificates.X509Certificate2.get_PrivateKey()

Какие-либо идеи, какие привилегии и / или разрешения требуются для доступа к менеджеру ресурсов смарт-карт?

С уважением,

Хеннинг Краузе

Ответы [ 2 ]

1 голос
/ 18 апреля 2018

LocalService имеет достаточно разрешений для доступа к смарт-картам.Это решение, которое я выбрал.

0 голосов
/ 19 мая 2011

X509Certificate2 вызывает исключение «Диспетчер ресурсов смарт-карт не работает» http://blogs.msdn.com/b/alejacma/archive/2011/05/19/x509certificate2-raises-quot-the-smart-card-resource-manager-is-not-running-quot-exception.aspx

...