есть такая ситуация: домен на вин2к, [почти] каждый юзер домена является админом на своей машине. надо: админу домена установить службу на машину юзера, да так, чтобы этот юзер, даже обладая правами админа на конкретной машине не смог бы эту службу замочить. служба уже устанавливается удаленно и даже работает , осталось только с безопасностью чего-то намудрить... кто что посоветует?
И контролируй ветку реестра "HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Services\ИМЯ_СЕРВИСА" Юзверь попробует остановить сервис, Винда ответит что-то на вроде "Сервис в данный момент не может быть остановлен и нужна перезагрузка" А контроль нужен на тот случай, если юзверь захочет убить сервис "на корню" - удалить из базы SCM
Dr.Golova Убери у сервиса функцию выгрузки =) я пробовал - вызываю DeleteService, вызов проходит успешно, в оснастке служб в статусе пишется "Остановлена" (или чего-то типа того), после ребута службы нету. т.е., даже если я не буду реагировать на SERVICE_CONTROL_STOP, вызвав DeleteService юзер прибъет службу в БД сервис манагера. SteelRat И контролируй ветку реестра "HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Services\ИМЯ_СЕРВИСА" что понимается под контролем? может накрутить какие нибудь права доступа на эту ветку? хотя это тоже ненадежный вариант - имея права админа юзер может права восстановить. з.ы. есть еще самый плохой вариант - юзер шедулит таск манагер, который запустится в LocalSystem (т.е. там где и служба), и тогда просто сможет замочить процесс службы.
Почти наверняка можно сделать или права Domain Admin>Local Admin или службу запустить с правами Domain Network или System (как то так). Надо учить матчасть.
LevaGil Почти наверняка можно сделать... сомневаюсь, т.к. в функции CreateService/OpenService никаких параметров безопасности (типа SECURITY_ATTRIBUTES) не передается
Max сомневаюсь, т.к. в функции CreateService/OpenService никаких параметров безопасности (типа SECURITY_ATTRIBUTES) не передается... Зато при открытии базы SCM права нужны...
Не получится запретить, можно через консоль восстановления (есть на установочном диске, у меня и на жёстком стоит) будет всё равно подправить конфигурацию Windows. Лучше всего тогда вообще перехватывать все Native API для работы со службами, чтобы пользователь даже не подумал чего-то там проверять.