:: Не фоксом единым
C# IIS доступ с правми администратора
S-type
Автор

Сообщений: 2969
Дата регистрации: 24.04.2004
Написал на C# WEB-сервис, опубликовал на IIS - всё работает. WEB-сервис должен подписывать данные с помощью ЭЦП. Написал программу, которая подписывает - работает, но требует что бы её запускали с правами администратора! Иначе нет доступа к закрытому ключу, который установлен "для компьютера" (а не для пользователя). Теперь не могу собрать всё в кучу WEB-сервис запускается не от администратора. Либо надо научить WEB-сервис запускаться с правам администратора, либо надо изменить программу так, что бы для её работы права администратора не требовались.
Ratings: 0 negative/0 positive
Re: C# IIS доступ с правми администратора
Igor Korolyov

Сообщений: 34580
Дата регистрации: 28.05.2002
Ну так экспортируй этот ключ и установи его в хранилище аккаунта, под которым работает "программа подписывания"...


------------------
WBR, Igor
Ratings: 0 negative/0 positive
Re: C# IIS доступ с правми администратора
S-type
Автор

Сообщений: 2969
Дата регистрации: 24.04.2004
Господа! Что посоветуете? А каком направлении копать?
Ratings: 0 negative/0 positive
Re: C# IIS доступ с правми администратора
S-type
Автор

Сообщений: 2969
Дата регистрации: 24.04.2004
Igor Korolyov
Ну так экспортируй этот ключ и установи его в хранилище аккаунта, под которым работает "программа подписывания"...

Вопрос - если я "задеполил" программу в IIS, от какого пользователя она запускается? Именно в него придётся экспортировать ключ.
Ratings: 0 negative/0 positive
Re: C# IIS доступ с правми администратора
S-type
Автор

Сообщений: 2969
Дата регистрации: 24.04.2004
Всё таки, хотелось бы "достучаться" до ключа без его переноса. Нет какой то возможности сделать это из кода - так, что бы для доступа не требовались права администратора?
Ratings: 0 negative/0 positive
Re: C# IIS доступ с правми администратора
Igor Korolyov

Сообщений: 34580
Дата регистрации: 28.05.2002
Смотря какая версия IIS, и смотря как там всё настроено...
Чисто для старта ссылочка stackoverflow.com


------------------
WBR, Igor
Ratings: 0 negative/0 positive
Re: C# IIS доступ с правми администратора
Igor Korolyov

Сообщений: 34580
Дата регистрации: 28.05.2002
S-type
Всё таки, хотелось бы "достучаться" до ключа без его переноса.

stackoverflow.com

Официальная дока, как я понимаю, толкует об автоматически выбираемых сертификатах для шифрования трафика и аутентификации удалённых юзеров - не уверен что это применимо к твоему "вручную" используемому сертификату...

Кстати, каков смысл всей этой махинации - это ж получается в чистом виде компрометация данного приватного ключа?


------------------
WBR, Igor
Ratings: 0 negative/0 positive
Re: C# IIS доступ с правми администратора
S-type
Автор

Сообщений: 2969
Дата регистрации: 24.04.2004
Igor Korolyov
Кстати, каков смысл всей этой махинации - это ж получается в чистом виде компрометация данного приватного ключа?

Почему компрометация? Есть БКИ, которые принимают XML, подписанные ЭЦП. Идея такая - на отдельно стоящий компьютер выложить необходимые ключи (закрытый банка и открытый БКИ), поднять там IIS, и на ней реализовать WEB-серсис, который получая от АБС запросы формирует XML, подписывает и отправляет в БКИ, а с полученных ответов снимает подпись и направляет полученный XML в АБС. Сейчас, если стартую VS от админа - всё работает. И, если не использовать ЭЦП то WEB-сервис работает. Но, на рабочей базе ЭЦП будет нужна. На самом деле, кроме ЭЦП ещё используется IpSec, но это уже делается цисками. Да и АБС будет обращаться к сервису по SSL - т.е. надо будет ещё сертификат прописывать, но это уже после.



Исправлено 1 раз(а). Последнее : S-type, 24.10.16 17:30
Ratings: 0 negative/0 positive
Re: C# IIS доступ с правми администратора
S-type
Автор

Сообщений: 2969
Дата регистрации: 24.04.2004
Igor Korolyov
Официальная дока, как я понимаю, толкует об автоматически выбираемых сертификатах для шифрования трафика и аутентификации удалённых юзеров - не уверен что это применимо к твоему "вручную" используемому сертификату...

Они предлагают дать "полный доступ" к закрытому ключу пользователю, от которого запускается IIS. Буду пробовать. Если заработает - попрошу безопасников либо согласовать такое решение, либо предложить своё.
Ratings: 0 negative/0 positive
Re: C# IIS доступ с правми администратора
Igor Korolyov

Сообщений: 34580
Дата регистрации: 28.05.2002
S-type
Igor Korolyov
Кстати, каков смысл всей этой махинации - это ж получается в чистом виде компрометация данного приватного ключа?
Почему компрометация?

Потому что доступ к веб-приложению могут получить (а значит несомненно получат ) любые юзера (то что в данном веб-приложении будет своя система авторизации не сильно меняет дело) - тогда как по логике СКЗИ доступ к ключу должен иметь только один ответственный пользователь. Он вообще по хорошему должен быть на съёмном носителе (usb-токене, или смарт-карте) и закрыт паролем (в хранилище только открытая часть - сам сертификат, но не приватный ключ).

Или речь не про персональный ключ, а про какой-то служебный промежуточный (доступный по самой своей сути куче юзеров и без пароля).


------------------
WBR, Igor
Ratings: 0 negative/0 positive
Re: C# IIS доступ с правми администратора
S-type
Автор

Сообщений: 2969
Дата регистрации: 24.04.2004
Igor Korolyov
Потому что доступ к веб-приложению могут получить (а значит несомненно получат ) любые юзера
Доступ к серверу со стороны банка будет по SSL.

> Или речь не про персональный ключ, а про какой-то служебный промежуточный (доступный по самой своей сути куче юзеров и без пароля).
Да, это служебный ключ. Кстати, на счёт пароля - хорошая идея, надо будет пароль установить!
Ratings: 0 negative/0 positive
Re: C# IIS доступ с правми администратора
S-type
Автор

Сообщений: 2969
Дата регистрации: 24.04.2004
Цитата:
IIS 7.5 Website is running under ApplicationPoolIdentity. Open MMC => Add Certificates (Local computer) snap-in => Certificates (Local Computer) => Personal => Certificates => Right click the certificate of interest => All tasks => Manage private key => Add IIS AppPool\AppPoolName and grant it Full control. Replace "AppPoolName" with the name of your application pool (sometimes IIS_IUSRS)

Указываю "IIS AppPool\DefaultAppPool", нажимаю кнопку "Проверить имена" - вижу:

[attachment 26122 s2.png]

Однако, если нажать кнопку "Дополнительно", а потом "Поиск", то ни чего подобного не видно:

[attachment 26121 s1.png]

Это какая то магия... Почему нельзя через "Поиск" найти DefaultAppPool?
Ratings: 0 negative/0 positive
Re: C# IIS доступ с правми администратора
S-type
Автор

Сообщений: 2969
Дата регистрации: 24.04.2004
Заставить работать Web-сервис удалось после изменения с ApplicationPoolIdentity на LocalSystem

[attachment 26123 s3.png]

Но, мне кажется - это как то неправильно.
Ratings: 0 negative/0 positive


Извините, только зарегистрированные пользователи могут оставлять сообщения в этом форуме.

On-line: 10 (Гостей: 10)

© 2000-2024 Fox Club 
Яндекс.Метрика