Обмеження прав користувача: aver tv.

На IT форумах грамотні люди часто говорять: не треба сидіти в Windows під адміністратором, використовуйте учетку адміністратора для установки і настройки програм, а працюйте з правами користувача. Так - безпечніше.


Коли я перевстановив систему на домашньому комп`ютері одному клієнту і віддавав системний блок, розповів йому в декількох словах про права користувачів. Ідея сподобалася і він сказав: дуже добре, я вдома сам нового користувача додам. Увечері передзвонив з двома питаннями: чому при кожному завантаженні учеткі з правами користувача щось незрозуміле лається сполученням «Disk monitor fail»? І чому програма ТВ-тюнера Aver відмовляється запускатися, заявляючи «Access denied»?

Що це таке «Disk monitor», подумали Ви?

Відео: Як обмежити доступ до комп`ютера

Ніяких моніторів я не встановлював? З першого питання на місці з`ясувалося, що до зовнішнього USB кардрідер додавався компакт-диск, з якого в системний трей встановилася програма з гордою назвою Disk Monitor. Навіщо - невідомо, тому що в Windows XP є все необхідне для роботи з цим кардридером без будь-яких драйверів і програм. Ок, раз по факту Disk Monitor нам не потрібен, і горе-програмісти не спромоглися перевірити, чи буде їх творіння працювати з правами користувача, значить в топку (uninstall) його.

«Рихтування» Aver TV

З Aver питання складніше. Зрозуміло, що в загальному проблема та ж: програмісти не перевіряли, чи буде написаний ними код працювати з правами звичайного користувача. Але деінсталювати цю програму не можна, інакше ТВ-тюнер стане марною залізякою. Значить, треба постаратися подружити програму і операційну систему.



Зверніть увагу на корисну в таких випадках команду RunAs. Набагато зручніше з учеткі користувача запустити окреме вікно Провідника з правами адміністратора, ніж кілька разів перелогініваться між учетке адміністратора і користувача.

Крок 1, настройка програми

Починаємо з самого простого. Можливо, в самій програмі є будь-які настройки, які конфліктують з правами безпеки? Відкриваємо діалог налаштувань Aver TV і в закладках Аудіо та Відео бачимо шляхи, куди програма буде зберігати записи ТВ і радіо ефіру. Так і є, програмісти не думали про те, що в Windows може бути кілька користувачів і зробили всього один, загальний для всіх варіант налаштувань. Для запису прописаний шлях C: Documents and Settings admin Мої Документи, якщо програма буде запущена з правами користувача, вона отримає відмову від системи.

Відео: Як налаштувати права користувачів в 1С: Підприємство 8.3 (частина перша)

Виправляємо шлях на нейтральний для всіх, наприклад D: My Video. До речі, на диску D: і місця набагато більше. Перевіряємо, щоб для цієї папки для всіх користувачів були встановлені повні права. Запускаємо Aver TV ... то ж вікно, Access Denied.

Крок 2, права до папки програми і гілці реєстру

Постріл навмання, але у нас завдання змусити програму заробити, а не написати дисертацію на тему «дослідження програми Aver TV». Встановлюємо повні права для папки C: Program Files Aver і гілки реєстру HKLM Software Aver. Справа в тому, що програмісти часто зберігають настройки в каталогах своїх програм або в загальносистемної гілці реєстру. При цьому вони або забувають, або не здогадуються, що для користувачів заборонений запис в папки Windows, Program Files, гілка реєстру HKEY_LOCAL_MACHINE.

У Провіднику і редакторі реєстру (з адмінській правами) міняємо права, запускаємо Aver TV ... Access Denied.

Крок 3, Process Monitor

Що ж, схоже не получілось.Но нічого страшного є програма Process Monitor від Марка Руссиновича з Sysinternals. Ця програма відстежує будь-які операції з файлами або реєстром, з її допомогою ми можемо зафіксувати, на який саме операції програма, запущена з правами користувача, отримала відкоша від операційної системи. Для того, щоб не шукати потрібне нам подія серед сотень і тисяч інших, скористаємося фільтром. Попросимо Porcess Monitor показувати нам тільки ті події, які створила програма avertv.exe:

Можна встановити ще один фільтр, який виключить всі записи з результатом SUCCESS. Після установки фільтрів запукаем програму AVerTV, отримуємо вже знайоме вікно Access Denied і дивимося, що виловив Process Monitor.

Все просто. Талантам, який написав софт для тюнера Aver, захотілося зберігати файл настройок aver.ini не де-небудь, а в системному каталозі C: Windows. Да уж, ТВ-тюнер - це не якісь там шашки-Машки, а оочень важлива програма, і її налаштувань місце саме в системному каталозі.

Відео: SteadyState Обмеження прав користувачів Windows

На жаль, переписати програму ми не можемо. Зате можна змінити права доступу до файлу C: Windows aver.ini (Нехай подавиться). Міняємо права з читання + виконання на повні, запускаємо AverTV ще раз і - вуаля, нарешті вона працює з правами звичайного користувача.

висновки

Як правило, зовсім не складно змусити працювати з обмеженими правами програму, яка написана не зовсім корректно.Вообще, програм, яким насправді потрібні повні системні привілеї, дуже мало. А міцних лінійок для випрямлення рук багатьом програмістам, навпаки, дуже не вистачає. Розумні люди кажуть, що в світі Windows погану службу співслужили Win3-95-98, в яких по суті не було поняття «права користувача». На цих системах, напевно, і виховали програмісти, які пишуть подібний код.

Відео: Створення та налагодження користувачів

Спеціально для програмістів - ось посилання на статтю в MSDN, де розписується правильний підхід до питання зберігання даних і налаштувань в Windows. Можна наприклад так: при установці програми настройки створюються в All Users або HLKM гілці реєстру. Для кожного користувача на основі цих налаштувань створюються або успадковуються персональні настройки в Application Data або HKCU гілці реєстру.Користувачі, спробуйте не скаржитися, що обмеження прав вас напружує. Подивіться навколо: в Linux користувачі не сидять з повними правами і для важливих дій потрібні права адміністратора. У Mac OS X діє подібний же принцип. У Vista і Windows 7 працює зручний на мій погляд механізм UAC, що вимагає від користувача дозвіл на виконання деяких дій. Треба просто звикнути працювати трохи по-іншому.

Поділися в соц мережах:
Cхоже

Увага, тільки СЬОГОДНІ!