Могу ли я создать привилегию администратора только для одного приложения?

26684
Ivo Flipse

Университет пытается запустить наше программное обеспечение, но его пользователи не имеют прав администратора.

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

Есть ли способ заставить их системного администратора создать привилегию, только для нашего программного обеспечения, или это вызовет (серьезную) лазейку в безопасности их системы?

Любые другие (разумные) обходные пути также приветствуются, но об изменении нашего программного обеспечения (к сожалению) не может быть и речи. Эта проблема возникает как в Windows XP, так и в Vista.

5
Что делает ваше приложение, для чего требуется администратор? Simon P Stevens 14 лет назад 4
Подобный вопрос (заданный позже) имеет больше об этом [Выборочное отключение UAC для определенных программ в Windows 7] (https://superuser.com/questions/99286/selectively-disabling-uac-for-specific-programs-on-windows -7), а вот еще один: [Можете ли вы отключить UAC для одного приложения?] (Http://superuser.com/q/2699/391675) Wolf 7 лет назад 0

9 ответов на вопрос

4
Mike McQuaid

Да, это вызывает серьезную дыру в безопасности. Если у вас есть какие-либо ошибки, которые допускают выполнение произвольного кода или порождение новых процессов, то вы в основном предоставили пользователю полные права администратора системы.

Я знаю, что вы сказали, что вы не можете изменить свое программное обеспечение, но если это между этим и потерянной продажей, я бы решительно подумал об этом, действительно не так сложно не требовать прав администратора.

Что конкретно требует прав? Вам нужно записать в определенные части диска? Вам нужен сырой доступ к устройству? Это поможет уточнить.

Согласен. Ваше приложение не должно требовать администратора, если оно не очень специализировано. Simon P Stevens 14 лет назад 2
Проблема появилась только недавно, а изменения, вызвавшие необходимость прав администратора, были сделаны более года назад. Вы правы в том, что это не сложно, однако мы надеемся выпустить новую версию через пару месяцев, поэтому необходимость замены нашего «старого» программного обеспечения «нежелательна». Ivo Flipse 14 лет назад 0
Какие изменения и какие права администратора у вас есть? Конечно, это нежелательно, но вы спросили, является ли это дырой в безопасности, и поэтому было бы безответственно вводить вектор атаки в университет, не сообщая им об этом. Mike McQuaid 14 лет назад 0
Кроме того, вы не сказали, что требовало прав. Вы можете обойти отдельные проблемы, но предоставление приложениям полных прав администратора - просто глупая и ужасная разработка программного обеспечения. Вы получите линчевание, если вы разместите это в stackoverflow (что вы должны были сделать) Mike McQuaid 14 лет назад 2
Они изменили наше программное обеспечение, чтобы оно работало под Vista, где у них возникли проблемы с реестром и способом, которым Vista будет создавать локальные базы данных для каждого пользователя. Однако вы должны понимать, что у нас достаточно специализированное программное обеспечение (<3000 пользователей), и в Labview ведется разработка, которая ничего не улучшает. Но я не писал программное обеспечение, я просто пытаюсь найти обходной путь. Если бы это было задано на SO, вопрос был бы о причинах, по которым нам нужны права администратора, а не о возможном решении. Ivo Flipse 14 лет назад 0
Но, разумеется, если наше программное обеспечение представляет собой лазейку в безопасности, университет должен либо иметь выделенный компьютер для него, либо не использовать продукт. Ivo Flipse 14 лет назад 0
Vista создает локальные базы данных для каждого пользователя, чтобы предотвратить эту дыру в безопасности. Если вы хотите, чтобы у него были глобальные базы данных, вам нужно хранить их в глобально записываемом каталоге. Ваше приложение НЕ требует административных прав для этого. Mike McQuaid 14 лет назад 0
Но поскольку он запрограммирован дрянно, он делает это ;-) Я не пытаюсь быть оскорбительным, но мне просто нужно смириться с тем фактом, что наше текущее программное обеспечение - отстой. Ivo Flipse 14 лет назад 0
Вам не нужно жить с этим. Моя компания почти наверняка может исправить эту ошибку для вас во второй половине дня, если даже это. Вы должны сказать своим менеджерам, что люди сказали здесь. Mike McQuaid 14 лет назад 0
Они говорят мне, что не стоит тратить время или деньги на изменение текущего программного обеспечения ... Учитывая, как мало людей пострадали, я не могу их винить. Ivo Flipse 14 лет назад 0
Но сколько будет стоить эта потеря продаж против усилий по решению проблемы? Rowland Shaw 14 лет назад 0
А также, насколько велик риск, когда ваше приложение вызывает недостатки в безопасности, на которые один из ваших клиентов предъявляет вам иск? Mike McQuaid 14 лет назад 0
3
Bruce McLeod

Лучший способ, которым я мог бы воспользоваться, - это использовать замену runas, которая сохраняет зашифрованные пароли ... что-то вроде supercrypt .

Кажется, это идет в правильном направлении, любопытно, есть ли у людей другие предложения, подобные этому. Ivo Flipse 14 лет назад 0
2
shufler

Если пользователи являются частью домена, вы можете использовать объект групповой политики для определения политики ограниченного использования программ, которая позволяет запускать только ваше приложение. Создайте учетные записи для пользователей и предоставьте им права локального администратора для компьютеров (желательно с этим же объектом групповой политики).

+1 - настраиваемый объект групповой политики с правами администратора - лучший баланс между безопасностью и удобством использования в большой сети. EvilChookie 14 лет назад 1
0
Simon P Stevens

Посмотрите на судо для окон . Это позволяет повысить обычных пользователей до администраторов в рамках одного приложения.

Я не уверен, что это будет работать для вас полностью, хотя, как будто вы даете пользователю разрешение sudo, я не думаю, что вы сможете остановить их, подняв другие приложения по своему выбору. Хотя стоит посмотреть.

0
Peter Mortensen

Разве ваше программное обеспечение не может быть запущено внутри виртуальной машины или песочницы, например, Virtualbox или Sandboxie, или виртуальных учетных записей ICore ?

Либо на компьютерах пользователя, либо на сервере.

Это не облегчит установку или использование, но даст вам некоторое время, пока ваше программное обеспечение не будет изменено.

Интересно, как песочница справится с базой данных. Я просто попробую ;-) Ivo Flipse 14 лет назад 0
0

Я думаю, что PrivilegeGuard от Avecto должен делать именно то, что вы ищете ... он позволяет повышать права для конкретного приложения Windows, не предоставляя пользователям полных прав администратора. Это все можно сделать для XP, Vista и Win 7.

0
Lazarus

Это абсолютно возможно, PowerBroker Desktop: Windows Edition позволяет повышать права определенных приложений без повышения прав пользователя, вы можете определить, какое дополнительное повышение присваивается задействованным SID.

0
beiro

Я предполагаю, что вы ищете недорогое решение, но если вы не можете найти ничего подходящего, вы можете попробовать Universal Shield . Это работает, ограничивая доступ для приложения, а не для пользователя. С точки зрения безопасности, это именно то, что вам нужно.

0
ShoeLace

i just found this.. http://www.howtogeek.com/howto/windows-vista/create-administrator-mode-shortcuts-without-uac-prompts-in-windows-vista/

I am not sure how suitable it is for a work/school environment. but at home this works for me fine for a small number of admin utilities i use regularly.