LINUX.ORG.RU

Можно ли с помощью РАМ сделать аутентификацию рута в приложении?


0

0

Здравствуйте, многоуважаемые!
Можно ли с помощью РАМ сделать аутентификацию рута в приложении?
Сейчас поясню "на пальцах". Есть программа с GUI, она что-то умеет делать, но ее надо запускать от root'а. Было бы очень хорошо, если б пользователь запускал ее, ему всплывало окошко "Введите пароль root", он вводит, если пароль совпадает то все ОК, если нет, то нет...
Можно ли такое сделать с помощью РАМ? Все что нашел в инете к сожалению не дало мне ответ на этот вопрос. Или быть может есть какое-нибудь другое решение?

Заранее спасибо


Если дистрибутив - редхатоид, то:

consolehelper - A wrapper that helps console users run system programs

mv ★★★★★
()

PAM не сможет поднять привилегии просто потому, что работает как либа внутри твоего же процесса. Как ни крути, всё равно нужно запускать какую-то суидную прогу, будь то sudo, consolehelper или что-то самописное. Вот внутри этой проги уже может быть PAM.

const86 ★★★★★
()

это видимо зависит от того - как у Вас настроен PAM и через что он проверяет права. стандартный модуль PAM pam_unix.so может проверить пароль в /etc/shadow только для текущего пользователя, под которым запущена программа использующая библиотеку PAM. эта проверка реализована с помощью вызова suid'ной утилиты-помошницы /sbin/unix_chkpwd

Eshkin_kot ★★
()
Ответ на: комментарий от one_more_hokum

PAM это библиотека как он может поднимать привилегии ?

Reset ★★★★★
()
Ответ на: комментарий от one_more_hokum

> > PAM не сможет поднять привилегии

> 4.2. PAM именно для того и создан, чтобы избежать SUID-ных склонностей у программ.

4.2 - процесс никаким образом не может повысить свои привилегии, если он не SUID-ный

no-dashi ★★★★★
()

Спасибо всем, разобрался :-)

Dennis7
() автор топика
Вы не можете добавлять комментарии в эту тему. Тема перемещена в архив.