Узнайте пользователя и пароль для пользователя, который запустил службу c # - PullRequest
0 голосов
/ 21 февраля 2012

Я разрабатываю приложение для Windows, которое будет установлено как служба Windows.

Для этой установки требуется администратор и пароль.

Есть ли способ восстановить пользователя и пароль, использованные для запуска этой службы в C # программным способом ?

1 Ответ

1 голос
/ 23 февраля 2012

Самое простое поддерживаемое решение - хранить где-нибудь еще одну копию пароля, возможно, используя CryptProtectData и CryptUnprotectData .

Возможно, вы сможете получить парольиспользуется менеджером сервиса с использованием LsaRetrievePrivateData .По-видимому, имя секрета - это имя службы (примечание: внутреннее имя службы, указанное lpServiceName в CreateService, а не отображаемое имя службы).Не ясно, в каком контексте безопасности вы должны быть для этого.Даже если это работает, этот метод не поддерживается.

Или вы можете установить диспетчер учетных данных для захвата пароля при запуске службы.IIRC, эта установка требует перезагрузки.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...