Доступ к сертификату закрытого ключа IIS 6
У нас есть веб-приложение asp.net, работающее в платформе 2.0 и размещенное на сервере IIS 6, а операционной системой является Windows Server 2003. Веб-приложение запрашивает сертификат клиента для проверки подлинности веб-службой. Мы олицетворяли пул приложений с помощью пользовательской "Сетевой службы".
Проблема в том, что нам нужно получить доступ к закрытому ключу сертификата, который хранится в ключе машины / в моем хранилище. Пользовательская сетевая служба не может получить доступ к ключу.
Мы предоставили привилегии пользователю сетевой службы с помощью инструмента winhttpcertcfg.exe, но результат тот же.
Когда мы обезличиваем пул приложений с локальным администратором, результат будет успешным. Поэтому мы считаем, что проблема заключается в привилегиях пользователя.
Если бы кто-то мог дать нам некоторую информацию, мы были бы благодарны.
заранее спасибо
2 ответа
Наконец, мы получили решение проблемы после многих неудачных результатов, но в конце каждая проблема имеет свое решение.
Наше решение состоит в создании учетной записи администратора для локальной машины. После этого мы регистрируемся с этой учетной записью и запускаем команду MMC /s. Мы импортируем сертификат в LOCAL_MACHINE/ Мой магазин.
Вторая часть состоит в том, чтобы удалить пользователя из группы администраторов, и мы создаем учетную запись службы для приложения ASP.NET 2.0 с созданным пользователем, что лучше объяснить в следующем URL-адресе http://msdn.microsoft.com/en-us/library/ms998297.aspx.
Удачи.
Что касается меня, работает только это решение (IIS 6, Win 2003 Srv), но с одной проблемой... Моя специальная учетная запись может читать сертификат из приложения ASP.NET, только если я запускаю какое-либо приложение до него с правами ("Запуск от имени"..."). Без этого действия возникает ошибка безопасности при попытке отправить http-запрос (WinHttpRequest) с нужным мне сертификатом.