|
|
|
как реализовать аунтефикацию для rest клиента.
|
|||
|---|---|---|---|
|
#18+
Сергей Арсеньев, собственно на повестке дня остались следующие вопросы: 1.Зачем передавать время? 2.авторb)запрос, который может поменять состояние на сервере. Что нить типа deletePlayer() вот тут мне непонятно как быть. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 22.11.2013, 12:29:10 |
|
||
|
как реализовать аунтефикацию для rest клиента.
|
|||
|---|---|---|---|
|
#18+
redwhite90, Время не обязательно. Можно что-то другое из неповторяющейся последовательности. Главная задача, чтобы некто, перехвативший токен по дороге от клиента к серверу, не смог его повторить. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 22.11.2013, 13:11:39 |
|
||
|
как реализовать аунтефикацию для rest клиента.
|
|||
|---|---|---|---|
|
#18+
redwhite90, так почему не использовать spring security? хочется изобрести велосипед? а для полной защиты от перехвата в любом случае придется все оборачивать в ssl. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 22.11.2013, 13:47:10 |
|
||
|
как реализовать аунтефикацию для rest клиента.
|
|||
|---|---|---|---|
|
#18+
Сергей Арсеньевredwhite90, Время не обязательно. Можно что-то другое из неповторяющейся последовательности. Главная задача, чтобы некто, перехвативший токен по дороге от клиента к серверу, не смог его повторить. окей, зашифрованные данные без соли меня вполне устроят. а что насчёт авторавторзапрос, который может поменять состояние на сервере. Что нить типа deletePlayer() вот тут мне непонятно как быть. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 22.11.2013, 14:40:14 |
|
||
|
как реализовать аунтефикацию для rest клиента.
|
|||
|---|---|---|---|
|
#18+
Iliyam, просто пытаюсь понять как этот механиззм в общем работает ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 22.11.2013, 14:40:56 |
|
||
|
как реализовать аунтефикацию для rest клиента.
|
|||
|---|---|---|---|
|
#18+
redwhite90 окей, зашифрованные данные без соли меня вполне устроят. Только не применяйте для этого слово "зашифрованные". Что помешает перехватившему подставлять свое время, и обращаться к вашему сервису? Почитайте про RSA, если нужно шифрование. И про spring security, если нужно разделение полномочий. Кстати, RSA по-моему еще не сломали. Даже конкурс ломателей вроде проводится с каким-то денежным призом. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 22.11.2013, 15:24:31 |
|
||
|
как реализовать аунтефикацию для rest клиента.
|
|||
|---|---|---|---|
|
#18+
Iliyam, я в курсе про RSA. я тоже про время и соль ничерта не понял. просто дать всем клиентам ключи, да и отсылать(с сервера) ЗАШИФРОВАННЫЕ данные. но так никто мне и не отвечает что делать если мне нужен запрос, который меняет состояние на сервере; как проверить, что у пользователя хватает прав? ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 22.11.2013, 15:46:31 |
|
||
|
как реализовать аунтефикацию для rest клиента.
|
|||
|---|---|---|---|
|
#18+
redwhite90Iliyam, я в курсе про RSA. я тоже про время и соль ничерта не понял. просто дать всем клиентам ключи, да и отсылать(с сервера) ЗАШИФРОВАННЫЕ данные. шифрование будет в обе стороны. для параноиков включить доступ только по ssl. но тогда надо будет ключи как-то руками на клиентов положить. redwhite90но так никто мне и не отвечает что делать если мне нужен запрос, который меняет состояние на сервере; как проверить, что у пользователя хватает прав? так spring security в помощь. для REST не знаю, но для GWT-RPC вполне все хорошо работает, думаю там особой разницы нет. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 22.11.2013, 16:07:25 |
|
||
|
как реализовать аунтефикацию для rest клиента.
|
|||
|---|---|---|---|
|
#18+
Iliyam, то есть как делает spring security вы представления не имеете просто? ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 22.11.2013, 16:14:17 |
|
||
|
как реализовать аунтефикацию для rest клиента.
|
|||
|---|---|---|---|
|
#18+
redwhite90Iliyam, то есть как делает spring security вы представления не имеете просто? конечно не имею. махнул палочкой, и оно само все заработало) ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 22.11.2013, 16:17:05 |
|
||
|
как реализовать аунтефикацию для rest клиента.
|
|||
|---|---|---|---|
|
#18+
redwhite90но так никто мне и не отвечает что делать если мне нужен запрос, который меняет состояние на сервере; как проверить, что у пользователя хватает прав? был разговор про rest. Занафига тебе состояние, соли, алгоритмы шифрования и т.д. На SQL.ru как работает? ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 22.11.2013, 19:55:12 |
|
||
|
как реализовать аунтефикацию для rest клиента.
|
|||
|---|---|---|---|
|
#18+
redwhite90просто дать всем клиентам ключи, да и отсылать(с сервера) ЗАШИФРОВАННЫЕ данные. но так никто мне и не отвечает что делать если мне нужен запрос, который меняет состояние на сервере; как проверить, что у пользователя хватает прав? Именно эти слова и не позволяют понять. Поскольку в корне не верные. Шифрует клиент. Строку Соль;Логин;Время и прикладываешь к запросу. Если не знаешь Соль и Логин не сможешь сгенерировать новое сообщение. Повторишь старую последовательность - отлуп по времени. Можно и по простому Посылаешь только время (открытое) и SHA строчки что вверху, не зная состояния для Соль;Логин сложно подделать SHA для Время. А можно просто записал логин в cookie и веришь всем кто его говорит. :) ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 22.11.2013, 22:25:59 |
|
||
|
как реализовать аунтефикацию для rest клиента.
|
|||
|---|---|---|---|
|
#18+
redwhite90Iliyam, я в курсе про RSA. я тоже про время и соль ничерта не понял. просто дать всем клиентам ключи, да и отсылать(с сервера) ЗАШИФРОВАННЫЕ данные. но так никто мне и не отвечает что делать если мне нужен запрос, который меняет состояние на сервере; как проверить, что у пользователя хватает прав? смешались в кучу кони, люди... ) википедияАвторизация (от англ. authorization — разрешение, уполномочивание) — предоставление определённому лицу или группе лиц прав на выполнение определённых действий; а также процесс проверки (подтверждения) данных прав при попытке выполнения этих действий.[1][2][3] Часто можно услышать выражение, что какой-то человек «авторизован» для выполнения данной операции — это значит, что он имеет на неё право. Авторизацию не следует путать с аутентификацией: аутентификация — это лишь процедура проверки подлинности данных, например, проверки соответствия введённого пользователем пароля к учётной записи паролю в базе данных, или проверка цифровой подписи письма по ключу шифрования, или проверка контрольной суммы файла на соответствие заявленной автором этого файла. если есть spring security, то авторизацию надо делать с её помощью. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 23.11.2013, 10:27:53 |
|
||
|
как реализовать аунтефикацию для rest клиента.
|
|||
|---|---|---|---|
|
#18+
Сергей Арсеньевredwhite90просто дать всем клиентам ключи, да и отсылать(с сервера) ЗАШИФРОВАННЫЕ данные. но так никто мне и не отвечает что делать если мне нужен запрос, который меняет состояние на сервере; как проверить, что у пользователя хватает прав? Именно эти слова и не позволяют понять. Поскольку в корне не верные. Шифрует клиент. Строку Соль;Логин;Время и прикладываешь к запросу. Если не знаешь Соль и Логин не сможешь сгенерировать новое сообщение. Повторишь старую последовательность - отлуп по времени. Можно и по простому Посылаешь только время (открытое) и SHA строчки что вверху, не зная состояния для Соль;Логин сложно подделать SHA для Время. А можно просто записал логин в cookie и веришь всем кто его говорит. :) я не понимаю о чем вы вообще. Давайте на пальцах: Если клиент веб сервиса. Есть сервер, на котором работает этот сервис. на сервис приходит запрос на удаление юзера от "некто". как сервер поймёт, что это авторизованный клиент?ибо если "некто" имеет права, то пользователя надо удалить, а если нет, то нет. И давайте не влезать в дебри шифрования - это имхо только путает. можно просто использовать слово "зашифруем". ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 24.11.2013, 00:41:59 |
|
||
|
как реализовать аунтефикацию для rest клиента.
|
|||
|---|---|---|---|
|
#18+
redwhite90просто пытаюсь понять как этот механиззм в общем работаетНевозможность сохранения состоянияПротокол передачи гипертекста (HTTP), являющийся движущей силой web'а, — это протокол без сохранения состояния. Связано это с тем, что в нём нет ничего, что требует от браузера идентифицировать себя при каждом запросе, а также отсутствует постоянно установленное соединение между браузером и web-сервером, которое сохранялось бы от страницы к странице. Когда пользователь посещает web-сайт, браузер посылает HTTP-запрос web-серверу, который в свою очередь возвращает HTTP-ответ. Этим взаимодействие и ограничивается, это и представляет собой завершённую HTTP-транзакцию. Так как обмен информацией в web'е основан на HTTP, сохранение состояния в web-приложении может быть для разработчиков очень сложной задачей. Куки — это расширение протокола HTTP, которое было введено, чтобы помочь в обеспечении сохраняющих состояние HTTP-транзакций, но забота о конфиденциальности побуждает многих пользователей отключать поддержку кук. Информация о состоянии может быть передана через URL, однако её случайное раскрытие представляет собой серьёзную угрозу безопасности. Фактически, сама суть сохранения состояния требует, чтобы клиент идентифицировал себя, однако те из нас, кто задумывается о безопасности, знают, что мы никогда не должны доверять информации, посланной клиентом. Несмотря на всё это, существуют изящные способы решения проблемы сохранения состояния. Конечно, идеального решения не существует, как и способа, который может удовлетворить нужды каждого. Эта статья представляет некоторые способы, которые могут надёжно обеспечить возможность сохранения состояния, а также защитить от основанных на сессии атак, таких как ВСД {Б.С.: в оригинале — impersonation.} — выдача себя за другого (подделка сессии). Попутно вы изучите, как на самом деле работают куки, что делают PHP сессии и что требуется для подделки сессии. P.S. http://phpclub.ru/detail/article/sessions ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 24.11.2013, 07:16:15 |
|
||
|
как реализовать аунтефикацию для rest клиента.
|
|||
|---|---|---|---|
|
#18+
redwhite90, Тебе 2-ую страницу твердят - "куки" ФЕРШТЕЙН? ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 24.11.2013, 15:26:35 |
|
||
|
как реализовать аунтефикацию для rest клиента.
|
|||
|---|---|---|---|
|
#18+
Petro123,Usman, абсолютно не понимаю вас Куки это всего лишь данные, которые отсылаются при каждом http запросе. мне всё равно как они будут отсылаться - через куки, либо я явно буду их передавать. ===================================================== авторЕсли клиент веб сервиса. Есть сервер, на котором работает этот сервис. на сервис приходит запрос на удаление юзера от "некто". как сервер поймёт, что это авторизованный клиент?ибо если "некто" имеет права, то пользователя надо удалить, а если нет, то нет. ваш ответ на это - "через куки". Сформулируйте, пожалуйста, полностью вашу мысль, я не понимаю. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 24.11.2013, 16:03:51 |
|
||
|
как реализовать аунтефикацию для rest клиента.
|
|||
|---|---|---|---|
|
#18+
redwhite90, - Клиент отправляет HTTP(S)-запрос на сервер передает логин-пароль в параметрах (куки, урл, POST...) - Сервер получает логин-пароль и генерит некий ID, по которому он будет идентифицировать этого клиента при след. запросах - Стартовала сессия для этого клиента - Очередной запрос клиента (ID должен быть в параметрах обязательно) - ... - Сессия может умереть по истечению определенного времени (неактивность клиента, бездействие, сервер упал...) - ... Как-то так ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 24.11.2013, 16:23:52 |
|
||
|
как реализовать аунтефикацию для rest клиента.
|
|||
|---|---|---|---|
|
#18+
Usman, теперь я вас наконец-то понял) спасибо. Но всё-таки без логина и пароля не обойтись) ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 24.11.2013, 16:40:17 |
|
||
|
как реализовать аунтефикацию для rest клиента.
|
|||
|---|---|---|---|
|
#18+
redwhite90, rest это каждый запрос от клиента как в первый раз. Значит все параметры идут с запросом. Нет состояния и сервер вас не помнит между запросами. Значит ты каждый раз при запросе вводишь в URL параметры Вася+пароль. ДЛЯ удобства чтобы каждый раз не вводить, сервер в куки сохраняет эти Вася+пароль. Т.е. состояние хранит сервер на клиенте в виде куков. И только для того чтобы сервер вас помнил. Иначе куки не нужны. Так понятно? ЗЫ. Можно обойтись одним паролем такого вида = kekcOnmgFhjuG253n@@ ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 24.11.2013, 16:52:45 |
|
||
|
как реализовать аунтефикацию для rest клиента.
|
|||
|---|---|---|---|
|
#18+
Petro123, Да, я всё понял) спасибо) ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 24.11.2013, 17:00:20 |
|
||
|
|

start [/forum/topic.php?fid=59&msg=38475742&tid=2128091]: |
0ms |
get settings: |
6ms |
get forum list: |
13ms |
check forum access: |
2ms |
check topic access: |
2ms |
track hit: |
170ms |
get topic data: |
8ms |
get forum data: |
2ms |
get page messages: |
55ms |
get tp. blocked users: |
1ms |
| others: | 196ms |
| total: | 455ms |

| 0 / 0 |
