Спасибо, заглядывая в них ... RT

понять, о чем я спрашиваю, важно различать несколько вариантов использования SUID в Unix.

У меня есть проект, который использует исполняемый файл в пользовательском PATH, который принадлежит проекту и в котором установлен бит SUID. Таким образом, когда он запускается, он запускается в контексте владельца файла, а не вызывающего пользователя. Таким образом, он имеет доступ к вещам, которых нет у пользователя, и, таким образом, эти вещи защищены от пользователя обычными средствами защиты файловой системы. Это работает достаточно хорошо. Планируется перевести проект на архитектуру клиент-сервер, но это займет некоторое время. В то же время, как я могу повторить этот тип поведения в системах Windows?

Обратите внимание, что исполняемые файлы проекта не вызывают вызов библиотеки SETUID, хотя, честно говоря, это было бы отличной возможностью добавить, на мой взгляд, с учетом того, что делает проект. Проекту не нужны системные привилегии root. Его первая проблема безопасности заключается в том, что ему нужно защищать свои собственные файлы от пользователя (которым является любой пользователь, кроме владельца файла), и было бы очень хорошо, если бы он имел возможность переключаться в «пользовательский контекст» для доступа к файлу. Система, как если бы это был вызывающий пользователь. (Таким образом, было бы легче определить, что нормально для проекта, а что нет.)

Проект написан на комбинации C и Java - программа на C с набором SUID вызывает код Java ...

Я заинтересован в том, чтобы знать все такие механизмы, и особенно сосредоточен на тех, которые:

Подходит для C и Java;Легко реализовать для не-Windows программистов, и;Требовать минимального кодирования, уникального для Windows.

Если некоторые решения лучше, пожалуйста, поделитесь своими мыслями о том, что вы знаете в этом отношении.

ПРИМЕЧАНИЯ:

LogonUser: требуется пароль в виде обычного текста. Как это может быть ответом?RunAs: Требуется ввести пароль на PROMPT! ... как с LogonUser только хуже; Я не понимаю, как это ответ.

Ответы на вопрос(2)

Ваш ответ на вопрос