Здравствуйте, Nikolay_P_I, Вы писали:
N_P>Есть директория Д1 с правами только для пользователя П1. N_P>Есть директория Д2 с правами только для пользователя П2.
N_P>Как сделать File.Move(Д1/file, Д2/file)?
Завести пользователя П3 с правами доступа к Д1 и Д2 и от его имени сделать операцию.
Здравствуйте, Nikolay_P_I, Вы писали:
N_P>Есть директория Д1 с правами только для пользователя П1. N_P>Есть директория Д2 с правами только для пользователя П2.
N_P>Как сделать File.Move(Д1/file, Д2/file)?
Это вопрос для форума winapi. Может быть, каким-то образом можно засунуть в token процесса права двух пользователей одновременно, полученные вызовом функции api LogonUser.
Здравствуйте, Nikolay_P_I, Вы писали:
N_P>Есть директория Д1 с правами только для пользователя П1. N_P>Есть директория Д2 с правами только для пользователя П2.
N_P>Как сделать File.Move(Д1/file, Д2/file)?
Из под какого юзера?
Очевидно, что если это происходит из под админа, у которого есть права на обе папки, то задача тривиальна.
Иначе нужно временно давать права на Д2 пользователю, выполняющему move.
Здравствуйте, Nikolay_P_I, Вы писали:
N_P>Есть директория Д1 с правами только для пользователя П1. N_P>Есть директория Д2 с правами только для пользователя П2.
N_P>Как сделать File.Move(Д1/file, Д2/file)?
Как на .Net'е сделать . На WinApi Если работаешь от одного пользователя и можешь получить (или есть креды) от второго пользователя не сложно. См. man ImpersonateLoggedOnUser
Здравствуйте, Sinix, Вы писали:
S>Здравствуйте, Temnikov, Вы писали:
T>>Как на .Net'е сделать . На WinApi Если работаешь от одного пользователя и можешь получить (или есть креды) от второго пользователя не сложно. См. man ImpersonateLoggedOnUser S>http://stackoverflow.com/questions/125341/how-do-you-do-impersonation-in-net S>?
А разве оно работает, если целевая директория в untrusted домене? Или с правами на доступ для локального пользователя удаленного компьютера?
Короче говоря, когда у пользователя нет прав на LogOn на машине, где исполняется код?
P.S. Вариант пнуть админа заказчика для того, что дал нам все права — отметаем, как смехотворный.
P.P.S. Проводник Windows и Total Commander в этом случае просят логин\пароль и работают — значит — можно как-то, в принципе.
Здравствуйте, Nikolay_P_I, Вы писали:
N_P>А разве оно работает, если целевая директория в untrusted домене? Или с правами на доступ для локального пользователя удаленного компьютера? N_P>Короче говоря, когда у пользователя нет прав на LogOn на машине, где исполняется код?
Нет и нет. Я на вопрос Temnikov отвечал, не на стартовый.
* Far/TC в этом случае тоже пошлют лесом.
N_P>P.S. Вариант пнуть админа заказчика для того, что дал нам все права — отметаем, как смехотворный.
Зря. Единственно верный.
В нормальных конторах привычка давать логин-пароль налево-направо лечится отрубанием головы с занесением в трудовую Ибо нефиг.
Здравствуйте, Sinix, Вы писали:
N_P>>А разве оно работает, если целевая директория в untrusted домене? Или с правами на доступ для локального пользователя удаленного компьютера? N_P>>Короче говоря, когда у пользователя нет прав на LogOn на машине, где исполняется код? S>Нет и нет. Я на вопрос Temnikov отвечал, не на стартовый. S>* Far/TC в этом случае тоже пошлют лесом.
Да ладно вам, уж "с правами на доступ для локального пользователя удаленного компьютера" проверяется виртуалкой на раз. Работает.
N_P>>P.S. Вариант пнуть админа заказчика для того, что дал нам все права — отметаем, как смехотворный. S>Зря. Единственно верный.
У вас есть опыт вразумления в этом заказчиков? У нас — отрицательный. После слов местного админа "в этом случае я не гарантирую работоспособность и безопасность" — в акт приемки автоматом вписывается "продукт требованиям не удовлетворяет".
S>В нормальных конторах привычка давать логин-пароль налево-направо лечится отрубанием головы с занесением в трудовую Ибо нефиг.
Вполне нормальная практика. Те, кому положено, вводят это куда надо. Права ограничены, все ОК. Вы же на этот сайт не под пользователем с правами доступа входите, а через логин\пароль. Да еще и сохраненный браузером, небось.
N_P>>>А разве оно работает, если целевая директория в untrusted домене? Или с правами на доступ для локального пользователя удаленного компьютера? N_P>>>Короче говоря, когда у пользователя нет прав на LogOn на машине, где исполняется код? S>>Нет и нет. Я на вопрос Temnikov отвечал, не на стартовый. S>>* Far/TC в этом случае тоже пошлют лесом.
N_P>Да ладно вам, уж "с правами на доступ для локального пользователя удаленного компьютера" проверяется виртуалкой на раз. Работает.
Прошу извинить, действительно — не работает. Странно, помню, что раньше запрашивался логин\пароль.
То есть, способ добраться до директории в таком режиме есть (с ограничениями), но ТС действительно — похоже, тоже через авторизацию работает.
Здравствуйте, Nikolay_P_I, Вы писали:
N_P>То есть, способ добраться до директории в таком режиме есть (с ограничениями), но ТС действительно — похоже, тоже через авторизацию работает.
Ну да. Есть частный случай: если на сетевую шару ломиться, то можно и ч/з credentials.
Стандартный способ — тынц (см ответы).