|
Запуск ПО под админом
|
|||
---|---|---|---|
#18+
Есть ПО, которое берет пользователя Windows, который залогинился и записывает его в определенные таблички БД. Кроме этого ПО решает ряд задач, для которых нужны права администратора. И вот тут возникает проблема. Если в Windows залогинился пользователь с права не админскими, то софт запрашивает логин и пароль администратора(запрос прописан в манифесте). Все бы хорошо, но программка теперь текущим пользователем определяет не того, кто залогинился в ОС, а того, под кем была запущена. Как определить того, кто реально в системе залогинен? На ум приходит альтернативное решение: в начале запуска программы проверять является ли пользователь, членом группы администраторов: Код: c# 1. 2. 3. 4. 5. 6. 7. 8. 9. 10. 11. 12. 13. 14. 15. 16. 17. 18. 19.
и если пользователь не член группы админов, то запросить логин и пароль и сменить привилегии приложения. Возможно ли такое? Т.е. запускается приложении под пользователем, а продолжает работу после проверки под админом? ... |
|||
:
Нравится:
Не нравится:
|
|||
23.03.2015, 13:33 |
|
Запуск ПО под админом
|
|||
---|---|---|---|
#18+
Не надо путать Windows аутентификацию и права БД. Пользователь либо является локальным (доменным) администратором, либо нет. Тут поможет только манифест. Либо имперсонация . Всё. ... |
|||
:
Нравится:
Не нравится:
|
|||
23.03.2015, 14:05 |
|
Запуск ПО под админом
|
|||
---|---|---|---|
#18+
МСУНе надо путать Windows аутентификацию и права БД. Пользователь либо является локальным (доменным) администратором, либо нет. Тут поможет только манифест. Либо имперсонация . Всё. Про права БД ничего не говорил. Можно вообще забыть про бд. Важно получить данные по пользователю, которые залогинен, а не тот, кто запускает по. Посмотрю сейчас Ваш пример, спасибо. ... |
|||
:
Нравится:
Не нравится:
|
|||
23.03.2015, 15:20 |
|
Запуск ПО под админом
|
|||
---|---|---|---|
#18+
Roman MejtesСупер_Пав, http://www.sql.ru/forum/1142200/vyzov-okna-zaprosa-prav-administratora спасибо, неплохой вариант. Подумаю, как прикрутить. Посмотрю еще от МСУ вариант ... |
|||
:
Нравится:
Не нравится:
|
|||
23.03.2015, 15:21 |
|
Запуск ПО под админом
|
|||
---|---|---|---|
#18+
Супер_ПавRoman MejtesСупер_Пав, http://www.sql.ru/forum/1142200/vyzov-okna-zaprosa-prav-administratora спасибо, неплохой вариант. Подумаю, как прикрутить. ... Согласен, что неплохой. Посмотри еще мой вариант того же самого (под спойлером): 17069205 Идея состоит в том, что при необходимости сделать что-то под админом, ты перезапускаешь свой же exe-шник с "RunAs"(вводишь пароль админа) и например с каким-либо ключом командной строки, и он тебе делает "твою админскую задачу", после чего например возвращает код завершения(OK/Cancel/Failed) в функцию из которой был вызван(в неадминский запуск в котором работаешь). Что касается манифеста "всегда админ", лично я большой противник этого, хотя не все тут с этим согласны. ... |
|||
:
Нравится:
Не нравится:
|
|||
23.03.2015, 16:00 |
|
Запуск ПО под админом
|
|||
---|---|---|---|
#18+
Дмитрий77Что касается манифеста "всегда админ", лично я большой противник этого, хотя не все тут с этим согласны. ... например, я :) ... |
|||
:
Нравится:
Не нравится:
|
|||
23.03.2015, 16:11 |
|
Запуск ПО под админом
|
|||
---|---|---|---|
#18+
МСУДмитрий77Что касается манифеста "всегда админ", лично я большой противник этого, хотя не все тут с этим согласны. ... например, я :) отличный способ, не знал про него. 1 из плюсов, у программы сразу появляется ярлык оповещающий, что программа требует повешенных прав для работы. не понятно только, чем он не нравится Дмитрию и какие могут быть подводные камни? ... |
|||
:
Нравится:
Не нравится:
|
|||
23.03.2015, 19:37 |
|
Запуск ПО под админом
|
|||
---|---|---|---|
#18+
Roman Mejtes чем он не нравится Дмитрию и какие могут быть подводные камни? Хорош, сам посоветовал "мой метод", а теперь меня же и критикуешь в пользу "манифеста". Я про манифест давно знаю, но против него. Почему, пост который я привел +/- несколько ответов вверх-вниз, я там все написал что об этом думаю. ... |
|||
:
Нравится:
Не нравится:
|
|||
24.03.2015, 04:43 |
|
Запуск ПО под админом
|
|||
---|---|---|---|
#18+
Roman Mejtesчем он не нравится Дмитрию и какие могут быть подводные камни? Чем не нравится Дмитрию манифест, можно прочитать в топике, на который он дал ссылку. А подводных камней в манифесте нет, именно в этом его плюс. ... |
|||
:
Нравится:
Не нравится:
|
|||
24.03.2015, 09:12 |
|
Запуск ПО под админом
|
|||
---|---|---|---|
#18+
МСУДмитрий77Что касается манифеста "всегда админ", лично я большой противник этого, хотя не все тут с этим согласны. ... например, я :) + меня допишите ... |
|||
:
Нравится:
Не нравится:
|
|||
24.03.2015, 12:57 |
|
Запуск ПО под админом
|
|||
---|---|---|---|
#18+
Утички, вот он, нарисовался ... |
|||
:
Нравится:
Не нравится:
|
|||
24.03.2015, 15:34 |
|
Запуск ПО под админом
|
|||
---|---|---|---|
#18+
Интересный дискус у вас тут. Вообщем что имеем? Создал 2х пользователей на машине: 1) обычный пользователь 2) админ. Вхожу в систему под 1м пользователем. Пробую первый способ - перезапуск приложения с параметром runas. Убиваю систему тем, что приложение почему-то запускается не под админом, а под пользователем. Получаю бесконечный цикл, когда приложение проверяет роль, если не админ, то запускает само себя еще раз. В итоге получаю плодящиеся окна. Мораль - запуск приложения в режиме "Запуск от имени администратора" в реальности запускает ПО с обычными правами. Хз почему. Пробую 2й способ - имперсонация. Смена пользователей происходит, а вот права не меняются. Тестировал на записи данных в реестр и на установке службы Windows, получаю ошибку "Требуемый уровень олицетворения не обеспечен, или обеспеченный уровень неверен." У кого есть мысли какие? Начинаю делать 2е приложение, которое будет запускаться под пользователем, который залогинен в системе и в основное ПО будет передавать параметрами инфу о пользователе. Основное ПО запускаю с манифестом. ... |
|||
:
Нравится:
Не нравится:
|
|||
24.03.2015, 16:22 |
|
Запуск ПО под админом
|
|||
---|---|---|---|
#18+
Супер_Пав, в Windows Vista и выше владельцем системных файлов и веток реестра Administrator не является. ... |
|||
:
Нравится:
Не нравится:
|
|||
24.03.2015, 16:51 |
|
Запуск ПО под админом
|
|||
---|---|---|---|
#18+
Супер_Павперезапуск приложения с параметром runas. Убиваю систему тем, что приложение почему-то запускается не под админом, а под пользователем. Что-то ты не то делаешь. UAC - Окошко должно выскочить, где предлагается пароль ввести (если тек. user итак админ, по дефолту он на >=Vista работает без прав админа, то пароль вводить не надо, просто подтвердить OK) ... |
|||
:
Нравится:
Не нравится:
|
|||
24.03.2015, 17:02 |
|
|
start [/forum/topic.php?fid=20&msg=38914402&tid=1401764]: |
0ms |
get settings: |
8ms |
get forum list: |
13ms |
check forum access: |
3ms |
check topic access: |
3ms |
track hit: |
31ms |
get topic data: |
9ms |
get forum data: |
2ms |
get page messages: |
48ms |
get tp. blocked users: |
1ms |
others: | 16ms |
total: | 134ms |
0 / 0 |