То, каковы принятые методы для пребывания, вошло в систему веб-сайта?

Если учесть 5 или n десятичных чисел. Может быть, этот ответ решит вашу проблему.

    double a = 123.00449;
    double roundOff1 = Math.round(a*10000)/10000.00;
    double roundOff2 = Math.round(roundOff1*1000)/1000.00;
    double roundOff = Math.round(roundOff2*100)/100.00;

    System.out.println("result:"+roundOff);

Вывод будет: 123.0 1
, это можно решить с помощью цикла и рекурсивной функции.

5
задан nos 17 July 2009 в 11:18
поделиться

5 ответов

В этой недавней главе в Spring Security 3.0 2009 года обсуждается аутентификация типа «Запомнить меня». Общие концепции не относятся к Spring Security, поэтому вы сможете извлечь из нее выгоду, даже если вы ее не используете. В главе также цитируется публикация Барри Джаспана в 2006 г., которая является улучшением по сравнению с методами, описанными в блоге Чарльза Миллера 2004 .

Запись в блоге в основном сводится к:

  1. ] Когда пользователь успешно входит в систему с установленным флажком «Запомнить меня», в дополнение к стандартному cookie управления сеансом выдается файл cookie для входа.

    • Файл cookie для входа содержит имя пользователя, идентификатор серии и токен. Серия и токен - это непредсказуемые случайные числа из достаточно большого пространства. Все три хранятся вместе в таблице базы данных.

    • Когда пользователь, не вошедший в систему, посещает сайт и представляет файл cookie для входа, имя пользователя, серия и токен просматриваются в базе данных.

    • Если тройка присутствует, пользователь считается аутентифицированным. Использованный токен удаляется из базы данных. Создается новый токен, который сохраняется в базе данных с именем пользователя и идентификатором той же серии, и пользователю выдается новый файл cookie для входа, содержащий все три.
    • Если имя пользователя и серия присутствуют, но токен не совпадает, предполагается кража. Пользователь получает строго сформулированное предупреждение, и все запомненные пользователем сеансы удаляются.
    • Если имя пользователя и серия не указаны, cookie входа игнорируется.
5
ответ дан 14 December 2019 в 08:57
поделиться

Подписанные файлы cookie , которые невозможно подделать, могут быть хорошей идеей, когда вам не требуется полное состояние на стороне сервера ... скудное, среднее и эффективное.

Вы все еще есть риск кражи cookie, но вы всегда можете подписать cookie, используя IP-адрес, User-agent и другие параметры, чтобы минимизировать угрозу.

2
ответ дан 14 December 2019 в 08:57
поделиться

Cookies, но пользователь может решить их удалить.

В том же духе есть какое-то решение, используя Flash. Flash может хранить информацию на стороне клиента, не файл cookie, он не удаляется (обычно) браузером. С его помощью вы можете запомнить, какой пользователь запрашивает страницы, но вы застряли при использовании решения, использующего подключаемые модули, и вам нужно знать Flash ...

Я не вижу других решений.

0
ответ дан 14 December 2019 в 08:57
поделиться

Это просто файл cookie с назначенным значением длительного срока службы. Однако он будет работать только до тех пор, пока существует файл cookie. Например, у меня Firefox настроен на очистку файлов cookie при закрытии браузера. Так что для меня это не сработает.

0
ответ дан 14 December 2019 в 08:57
поделиться

Не пытайтесь реализовать файлы cookie сеанса самостоятельно.

Большинство веб-фреймворков дают вам абстракцию по этому поводу, позволяя вам не беспокоиться о многих проблемах безопасности, с которыми вы можете столкнуться.

Простой API в псевдокоде в веб-структуре может выглядеть примерно так при входе в систему:

authFrwk.loginUser(request.POST.get(username), request.POST.get(password));

Это вернет cookie клиенту (обрабатывается исключительно структурой).

Безопасно авторизованная операция будет выглядеть что-то вроде этого:

if (authFrwk.isLoggedOn()) // implicitly checks user session cookie
    doSomethingImportant();
else
    return notLoggedInMsg();

По сути, cookie сеанса получает уникальный идентификатор на стороне сервера, который злонамеренный пользователь не может сгенерировать / угадать самостоятельно, и который идентифицирует клиента как вошедшего в систему пользователя.

0
ответ дан 14 December 2019 в 08:57
поделиться
Другие вопросы по тегам:

Похожие вопросы: