Чат сервис и безопасность
Добрый день
Реализую чат для проекта Серверная часть java+smartfoxserver клиент соответственно javascript Вся рутинная работа клиента уже написана smartfox-ом Возникает вопрос безопасности логинимся на сервере sfs.send(new SFS2X.Requests.System.LoginRequest("login", "password", null, "")); вот логин понятно возьмем под кем зашел пользователь, как быть с паролем? пароль для авторизации в клиент посылать думаю не безопасно Кто что подскажет? Пока идея такая при регистрации пользователя генерится пароль и для доступа к чату(пользователь об этом даже знать не будет) и уже при инициализации скрипта для работы с чатом ajax-ом получать этот пароль,и подсовывать ему, по безопасности вроде как более лучше А вообще по хорошему бы инициализировать этот объект(sfs) для работы с чатом на стороне сервера, и отправлять его клиенту, который ничего тогда знать о коннекшене и авторизации не будет) |
не ужтали никаких идей нет, или описал суть проблемы не ясно=)
|
ладно буду тогда использовать вариант который придумал сам))))
|
Сервер никогда не хранит пароли, он хранит их хеш. Пользователю даже хеш пароля отправлять не стоит. Вход может идентифицироваться в сессии или куках. Для пущей страсти можно формировать еще и токен постоянно меняющийся и проверять его.
|
По поводу хэшей согласен
как писал выше тут некая трехзвенка, пользователь авторизуется на web сервере, и он должен иметь доступ к серверу чата, который тоже требует авторизацию по логину паролю, этот сервер ничего о сессиях и куках еще не знает, ему нужно послать событие "авторизация" |
в принципе да, наверное буду отправлять хэш, даже если его перехватят авторизоваться не смогут, а там как уже разберусь с токенами буду и их слать, но в dev режиме пойдет так)
|
Нет, даже хеш пароля зачем отправлять клиенту? Если надо, то отравлять можно хеш сформированный из уникальных значений пользователя.
|
Цитата:
а чтобы послать, ему нужно получить его в начале. из уникальных это хорошо, но как сервер будет знать об этой уникальности? |
а как клиент автаризуется на сервере если он ничего не будет посылать?
Авторизация, это вход, то есть когда клиент отправляет серверу логин и пароль. Результат авторизации, это разрешение, признаком которого может служить некий флаг в сессии. вот логин понятно возьмем под кем зашел пользователь, как быть с паролем? пароль для авторизации в клиент посылать думаю не безопасно Зачем после успешного входа отправлять назад клиенту логин и пароль? Вам чего надо? |
этот успешный вход на сайт, затем после успешного входа нужно в Js авторизоваться еще на одном сервисе который ни как не связан с сайтом на прямую
|
Часовой пояс GMT +3, время: 00:06. |