2011-02-01 2 views
0

Прежде всего, цели - это не безопасность и не удобство для пользователя. (Отсутствие визуального дерьма и отсутствие кодировки пароля/мега-безопасность)Веб-аутентификация через программу C

На стороне сервера я хочу простейшую вещь. Только способ аутентифицировать около ~ 5 пользователей, но знать, кто они, когда они это делают. Как только они пройдут проверку подлинности, я подам им файл (я еще не решил, что, .txt или xml или что-то еще), и они не смогут ничего сделать.

Итак, с точки зрения программы, мне нужно подключиться к моему серверу, как-то аутентифицироваться, получить файл и отключиться. Пользователь взаимодействует только с программой с помощью простого комманды user/pass. Остальное автоматическое. Я искал libcurl для подключения + аутентификация + загрузка, но я хотел бы услышать предложения, потому что из этого списка: libcurl competitors, похоже, доступно много предложений.

Я думаю об этом как о том, что когда я делаю sudo aptitude install, но часть sudo будет идти на сервер, если это имеет смысл.

Так что мой вопрос: как я могу сделать страницу с аутентификацией (обратите внимание, что она не должна иметь никакого визуального вывода), которая затем позволяет программе загружать файл. И как мне подключиться к нему?

ответ

2

Проще всего было бы сохранить путь к файлам секретным и аутентифицировать людей, предоставив им ссылку.

0

Возможно, вы найдете эту страницу по адресу HTTP Basic authentication. Вы можете либо свернуть собственный HTTP-сервер, либо настроить существующий httpd. Затем вы можете написать простой сценарий оболочки, который вызывает завиток для аутентификации и загрузки страницы.

+0

Предполагая, что у меня была такая популярная вещь, как Apache, как бы я это сделал? Я думаю, все, что я могу сделать в сценарии оболочки, который я могу сделать в своей программе на C, правильно? – vascop

0

Если ваши пользователи могут иметь учетные записи на сервере, способом было бы использовать команду scp. Им будет предложено ввести пароль. Вы можете обернуть его в сценарий оболочки или вызвать его из программы C, используя system или эквивалент.

Edit: Затем вы можете посмотреть в защиту каталога с помощью .htaccess и .htpsswd. Я не знаю, что он доступен через libcurl или любую другую библиотеку C.

+0

Целью было бы «зарегистрироваться», но не с фактическими учетными записями на сервере. – vascop

Смежные вопросы