Емельянов Эдуард Владимирович (eddy_em) wrote,
Емельянов Эдуард Владимирович
eddy_em

Category:

Простейший веб-сервис с авторизацией

Таки добил базис для различных веб-морд и выложил на гитхаб.
Для обслуживания веб-запросов используется libonion, а т.к. в ней не было вменяемой поддержки авторизации, добавил свое. В одной базе данных хранятся сведения о пользователях: имя пользователя, уровень доступа, SHA512-хэш пароля и необязательный комментарий. Вторая база содержит сессионные данные: имя пользователя, время получения ключа (UNIX-TIME), идентификатор сессии, необязательный идентификатор сокета (этот идентификатор выдается в "небезопасной" куки, поэтому генерируется заново при каждом очередном запросе; затем, когда юзер захочет открыть вебсокет, он должен будет сначала передать этот ключ) и данные (в JSON-формате, сейчас это — User-Agent и IP адрес пользователя).
Веб-админку мне было лень делать, да и не нужна она в моем случае: достаточно запустить демон с нужными параметрами, чтобы добавить/удалить/изменить пользователя, сделать дамп баз или запустить "vacuum" баз. Также можно удалить все сессионные данные старше заданного времени.
Остается еще добавить работу с вебсокетами, и можно будет лепить морду для спектрографа НЭС и "роботелескопа".
Tags: c, web, всячина
Subscribe

  • M$ teams…

    Начал с сегодняшнего дня студентам ЮФУ удаленно лекции читать. У них все завязано на различные корпорации зла. И базовая работа - через teams. ОК,…

  • Почему systemd — дерьмо

    Уже давно на эту статейку натыкался, но все забывал в "закладки" добавить. Вот, добавляю: "systemd — отстой". Советую эту статейку почитать…

  • Что-то китайцы вообще веб-морду али поломали!

    Если раньше проблема была только в назойливом "квазирусском" интерфейсе, который постоянно приходилось отключать, то сейчас еще больше багов…

promo eddy_em september 3, 12:13 8
Buy for 10 tokens
Уже больше полугода занимаюсь разработкой, вот, наконец-то в мастерских взялись за меня и начали выдавать первые детали. Сегодня сделал тестовую сборку (как обычно, местами пришлось "доработать напильником"): Пока прибор без названия (да и как-то не лезет в голову ничего, у меня нет…
  • Post a new comment

    Error

    Anonymous comments are disabled in this journal

    default userpic
  • 0 comments