shokmega

Full Member | Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
Цитата: Стандартная ситуация : ставим ICQ под аккаунтом администратора (Windows NT, 2000, XP), заходим в систему с правами пользователя и получаем сообщение, что ICQ не может быть запущена без прав администратора или power-user`а. Это происходит из-за того, что ICQ не может получить доступ на запись к своим веткам реестра. Так как раздавать права администратора налево и направо не очень модно, то возникает необходимость решить вопрос не давая пользователю таковых прав. Итак вот что требуется для работы ICQ из под аккаунта обычного пользователя : 1. Полный доступ пользователю к папке куда установлена ICQ на системе NTFS (Program Files\ICQ). 2. Полный доступ пользователю к веткам реестра HKLM\Software\Mirabilis и HKCR\CLSID (она же HKLM\Software\Classes\CLSID). Входящая в состав Windows утилита regedt32 (или regedit в XP) поможет в этом нелегком деле P.S. Недостатком этого метода является сам метод . Дело в том, что получив права на запись в ветку HKCR\CLSID пользователь может поднять свои привелегии. К примеру : файлы с расширением .msi ассоциированы с Microsoft Installer Service. Когда выполняется файл с расширением .msi производится обращение к DLL-файлу указанному в ветке реестра HKLM\Software\Classes\CLSID\{000C103E-0000-0000-C000-000000000046}\InProcServer32. По умолчанию это C:\winnt\system32\msi.dll. Локальный пользователь может получить полный контроль над системой создав свой DLL-файл, который использует функцию DllGetClassObject() и указав в ветке реестра свой DLL-файл вместо msi.dll. Если вас это волнует, то вас должно волновать само наличие ICQ на компьютере пользователя. Если у Вас есть более красивое, безопасное или простое решение этого вопроса - пишите. | | Всего записей: 449 | Зарегистр. 15-12-2003 | Отправлено: 09:54 02-06-2004 | Исправлено: shokmega, 09:56 02-06-2004 |
|