Помощь - Поиск - Пользователи - Календарь
Полная версия этой страницы: Доступ к ресурсу
Форум программистов > Системное программирование > Delphi и Pascal > Delphi - Сети
Кривко Олег
На одной машине в сети лежит расшареная папка с правами записи только для админа. Нужно программно копировать файлы в этот каталог с другой машины под логином Administrator
Кривко Олег
Подскажите кто знает, плиииз sad.gif Шеф порвет уже
Pasha
Для: Кривко Олег
Так в чем проблема? Выбирай:
1. Запускай мегапрогу под логином администратора.
2. Используй функции WinAPI LogonUser/ImpersonateLoggedOnUser/RevertToSelf для переключения на админа во время копирования.
Кривко Олег
Для: Pasha
Вариант №1 отпадает сразу. Программка должна стоять на многих машинах юзеров и каждому пользователю раздавать права не годица. Суть вопроса: эта шара должна быть доступна только программе напрямую.
Если можно, пожалуста, поподробнее про №2... =)
Pasha
Для: Кривко Олег
1. Раздача прав тут ни при чем. Просто запускать программу от имени админа, runas-ом, или чем-то похожим.
2. Вызываешь первую функцию, результат отдаешь во вторую, копируешь файлы, вызываешь третью.

Вообще, правильное рещение проблемы - создать группу, всех нужных пользователей в нее включить и дать права на шару этой группе. Все остальные варианты подразумевают что всем пользователям раздается пароль администратора, может быть в неявном виде (и 1, и 2). Никаких "только программе напрямую" быть не может.
sax_ol
Цитата(Pasha @ 6:11:2007, 15:17 )
Вообще, правильное рещение проблемы

+ или создать шары поюзерно, чтоб потом коллизии не разгребать если что smile.gif
а так да - все от задачи должно исходить
Кривко Олег
Ни так фсе просто. ) Вариант:
Цитата
Вообще, правильное рещение проблемы - создать группу, всех нужных пользователей в нее включить и дать права на шару этой группе.

тож отпадаед (все юзеры в домене, машина с шарой - вне, а перечислять пользователей запаришься, тем более что они часто меняюца).
Плюс к тому сам юзер не должен иметь доступ к файлам которые формируются программой (и которые должны ложиться на шару). Поэтому разрешите повторюсь
Цитата
только программе напрямую
.
Если кто знает, ПОЖАЛУСТА, опишите ПОДРОБНО как можно "наградить правами" ПРОГРАММУ ЛИЧНО
Pasha
Цитата(Кривко Олег @ 7:11:2007, 14:20 )
все юзеры в домене, машина с шарой - вне
*
А добавить машину в домен нельзя по идеологическим соображениям?
Цитата(Кривко Олег @ 7:11:2007, 14:20 )
Если кто знает, ПОЖАЛУСТА, опишите ПОДРОБНО как можно "наградить правами" ПРОГРАММУ ЛИЧНО
*
Безопасность в винде работает на уровне ПОЛЬЗОВАТЕЛЕЙ, ГРУПП и РЕСУРСОВ. Поэтому дать права конкретной программе НЕЛЬЗЯ. НИКАК НЕЛЬЗЯ. СОВСЕМ НЕЛЬЗЯ. ПОНЯТНО?
Можно только запустить саму программу так, чтобы она вся целиком или ее часть работала от имени другого пользователя. Делается это мегаутилитой runas (или ERunAs, если надо "типа безопасно") для всей программы, или набором функций для ее куска. Runas спрашивает пароль другого пользователя при первом запуске, ERunAs создает типа зашифрованые ярлыки с запомненным паролем другого пользователся. Набор функций требует имя и пароль для вызова LogonUser. А кнопачки "дать программе XXX права на доступ к YYY" в винде нет. В линуксе, кстати, тоже нет.
sax_ol
Цитата(Pasha @ 7:11:2007, 14:43 )
В линуксе, кстати, тоже нет.

от жеж. не смог не упомянуть smile.gif
Кривко Олег
Теперь понятно. Прост в моей ситуации былоб намного проще наделить правами программу. Если б эт было возможно... А ЭТ СОБСТВЕННО ФСЁ ЧЕ Я И ХОТЕЛ УЗНАТЬ. Спасиба
Pasha
Цитата(sax_ol @ 7:11:2007, 14:51 )
от жеж. не смог не упомянуть
*
Во избежание. Никогда не прощу линуксу того момента, когда 2-х дисковый OEM-дистрибутив AltLinux попросил вставить 3-й диск. smile.gif
zubr
Для: Кривко Олег
Посмотри в сторону функций CreateProcessAsUser и WNetAddConnection2.
Для просмотра полной версии этой страницы, пожалуйста, пройдите по ссылке.
Форум IP.Board © 2001-2009 IPS, Inc.