|
14 / 14 / 0
Регистрация: 12.12.2010
Сообщений: 159
|
|
Авторизация пользователей.27.12.2011, 21:47. Показов 1565. Ответов 8
Метки нет (Все метки)
Ребятки, есть вопрос, на который я так и не нашел четкого ответа. То есть имеется куча информации в моей голове и, следовательно, куча вопросов.
Касается все это дело механизма авторизации пользователей на сайте. Как я себе все это представляю: В куки пишем некую последовательность символов. Юзер приходит на сайт. php лезет в бд и смотрит, есть ли совпадения этой последовательности символов и если находит ее, то смотрит какому пользователю она принадлежит, далее сессион_старт. И при каждом обновлении страницы проверяем наличие сессии и таким образом скрипт узнает пользователей. А если не открывать сессию и банально при каждом обновлении страницы сверять некий длинный код из куков с базой данных и узнавать кто к нам пришел. Какой смысл открывать сессию если она кинет нам в куки идентификатор и каждый раз мы его будем отправлять на сервер. Почему бы ее тогда вообще не открывать, а генерировать случайную последовательность скриптом, писать ее в куки и постоянно сверять с бд. Логичное объяснение использования сессии я увидел только одно. Т.к. она хранится на сервере, в нее можно записать имя юзера и не проводить сверку с бд каждый раз, а писать имя пользователя в куки как-то не хочется. Собственно. Что могут сказать по этому поводу более опытный программисты?
0
|
|
| 27.12.2011, 21:47 | |
|
Ответы с готовыми решениями:
8
Регистрация и авторизация пользователей Авторизация пользователей - нюансы безопасности Авторизация не более N пользователей одновременно |
|
Рождён удивлять
53 / 56 / 9
Регистрация: 08.08.2011
Сообщений: 438
|
|
| 27.12.2011, 23:06 | |
|
Ну да при вводе логина и пароля посылается запрос на сервер, от туда возвращается результат, если логин и пароль равны истине, то создаем сессии и (или) куки, после чего снова посылаем запрос на сервер и если имя сессии или куки равны истине, показываем приветсвие "Добро пожаловать Виктор!" и другую скрытую информацию!
А про сессии и куки можешь почитать тут http://prootime.ru/php-sessions-cookies полезная информация
0
|
|
|
web dev
107 / 93 / 9
Регистрация: 23.09.2010
Сообщений: 737
|
|
| 27.12.2011, 23:43 | |
|
0
|
|
|
Рождён удивлять
53 / 56 / 9
Регистрация: 08.08.2011
Сообщений: 438
|
|
| 27.12.2011, 23:45 | |
|
ну а что мне надо было ему все информацию с сайта копировать и вставлять сюда? пусть сам читает там
0
|
|
|
14 / 14 / 0
Регистрация: 12.12.2010
Сообщений: 159
|
|
| 28.12.2011, 01:43 [ТС] | |
|
ребятки. Не ссорьтесь.
Инфу копировать не надо никуда. Там ерунда. По сути не о чем. ![]() Но все равно спасибо. Первый пост писал быстро, без конкретики. Хотелось услышать комментарии опытных разработчиков. ну да ладно. По факту. В качестве куки хочу кидать юзеру "случайные букавки". В бд хранится hash('sha512', "случайные букавки" + юзер_агент). Если суммы совпали - вуаля -> стартуем сессию. Пароли в бд лежат в виде hash('sha512', пароль + рандомная соль). Добавлено через 1 минуту Достаточно такого или нет. Буду не против, если кто-то кинет ссылочку на какую-нибудь свеженькую статью по этому поводу, если такие имеются. Добавлено через 1 час 5 минут Еще немного подумал. А если получать кэши таким вот образом: sha512(sha512(uniqid(rand(), true)) . $пароль) Добавлено через 2 минуты Вопрос, куда бы подальше спрятать то, что вернула rand() Добавлено через 2 минуты Да, и к чему можно еще "прявязать" куки кроме юзер_агента? (айпишник не считается ибо бльшенство наших провайдеров дают серые ip. дак какой смысл их привязывать... только пользователям с динамическими ипами жизнь усложню) Добавлено через 6 минут Хотя, нет, прятать соль это уже фанатизм какой-то
0
|
|
|
|
||
| 29.12.2011, 08:11 | ||
|
0
|
||
|
14 / 14 / 0
Регистрация: 12.12.2010
Сообщений: 159
|
|
| 29.12.2011, 13:38 [ТС] | |
|
Рандомная соль один раз генерируется. Потом хранится вместе с хэшем. Видимо, неправильно поняли.
0
|
|
|
154 / 124 / 11
Регистрация: 11.01.2010
Сообщений: 434
|
|
| 02.01.2012, 11:45 | |
|
Что относиться к авторизации пользователя тут все понятно, а для аутентификации пользователя я использую session + localStorage(если поддерживает браузер) + Cookie.
Это позволяет следующие: 1. Нет запросов к БД при аутентификации (только один раз обращаемся к БД при авторизации) 2. Cookie - храним 2 параметра 1 - имя сессии, 2 - ключ доступа к session_id ( в зашифроваваном виде) 3. localStorage - нужно для хранение разных параметром и меток + позволяет работать с разными окнами ... Аутентификации умеет работать в 2-х режимах: 1. обычный - это когда ключ не динамический и он изменяется только при обновлении страницы 2. динамический - тут у нас ключ динамический изменяться около 2000 раз в час автоматически, при этом не создает ни каких неудобств или проблем. Вот такой способ я использую, правда это ещё пока не работает в боевых условиях, а только в разработке проекта.
0
|
|
|
189 / 185 / 54
Регистрация: 23.10.2010
Сообщений: 1,336
|
|
| 02.01.2012, 14:18 | |
|
http://pyha.ru/articles/php/auth/ плохо ищещ мил человек
0
|
|
| 02.01.2012, 14:18 | |
|
Помогаю со студенческими работами здесь
9
Авторизация нескольких пользователей Авторизация для сотрудников и пользователей
Авторизация пользователей Искать еще темы с ответами Или воспользуйтесь поиском по форуму: |
|
Новые блоги и статьи
|
|||
|
SDL3 для Web (WebAssembly): Обработчик клика мыши в браузере ПК и касания экрана в браузере на мобильном устройстве
8Observer8 02.02.2026
Содержание блога
Для начала пошагово создадим рабочий пример для подготовки к экспериментам в браузере ПК и в браузере мобильного устройства. Потом напишем обработчик клика мыши и обработчик. . .
|
Философия технологии
iceja 01.02.2026
На мой взгляд у человека в технических проектах остается роль генерального директора. Все остальное нейронки делают уже лучше человека. Они не могут нести предпринимательские риски, не могут. . .
|
SDL3 для Web (WebAssembly): Вывод текста со шрифтом TTF с помощью SDL3_ttf
8Observer8 01.02.2026
Содержание блога
В этой пошаговой инструкции создадим с нуля веб-приложение, которое выводит текст в окне браузера. Запустим на Android на локальном сервере. Загрузим Release на бесплатный. . .
|
SDL3 для Web (WebAssembly): Сборка C/C++ проекта из консоли
8Observer8 30.01.2026
Содержание блога
Если вы откроете примеры для начинающих на официальном репозитории SDL3 в папке: examples, то вы увидите, что все примеры используют следующие четыре обязательные функции, а. . .
|
|
SDL3 для Web (WebAssembly): Установка Emscripten SDK (emsdk) и CMake для сборки C и C++ приложений в Wasm
8Observer8 30.01.2026
Содержание блога
Для того чтобы скачать Emscripten SDK (emsdk) необходимо сначало скачать и уставить Git: Install for Windows. Следуйте стандартной процедуре установки Git через установщик. . . .
|
SDL3 для Android: Подключение Box2D v3, физика и отрисовка коллайдеров
8Observer8 29.01.2026
Содержание блога
Box2D - это библиотека для 2D физики для анимаций и игр. С её помощью можно определять были ли коллизии между конкретными объектами. Версия v3 была полностью переписана на Си, в. . .
|
Инструменты COM: Сохранение данный из VARIANT в файл и загрузка из файла в VARIANT
bedvit 28.01.2026
Сохранение базовых типов COM и массивов (одномерных или двухмерных) любой вложенности (деревья) в файл, с возможностью выбора алгоритмов сжатия и шифрования.
Часть библиотеки BedvitCOM
Использованы. . .
|
SDL3 для Android: Загрузка PNG с альфа-каналом с помощью SDL_LoadPNG (без SDL3_image)
8Observer8 28.01.2026
Содержание блога
SDL3 имеет собственные средства для загрузки и отображения PNG-файлов с альфа-каналом и базовой работы с ними. В этой инструкции используется функция SDL_LoadPNG(), которая. . .
|