Заглавная страница Избранные статьи Случайная статья Познавательные статьи Новые добавления Обратная связь FAQ Написать работу КАТЕГОРИИ: ТОП 10 на сайте Приготовление дезинфицирующих растворов различной концентрацииТехника нижней прямой подачи мяча. Франко-прусская война (причины и последствия) Организация работы процедурного кабинета Смысловое и механическое запоминание, их место и роль в усвоении знаний Коммуникативные барьеры и пути их преодоления Обработка изделий медицинского назначения многократного применения Образцы текста публицистического стиля Четыре типа изменения баланса Задачи с ответами для Всероссийской олимпиады по праву
Мы поможем в написании ваших работ! ЗНАЕТЕ ЛИ ВЫ?
Влияние общества на человека
Приготовление дезинфицирующих растворов различной концентрации Практические работы по географии для 6 класса Организация работы процедурного кабинета Изменения в неживой природе осенью Уборка процедурного кабинета Сольфеджио. Все правила по сольфеджио Балочные системы. Определение реакций опор и моментов защемления |
Установка срока годности cookiesСодержание книги
Поиск на нашем сайте По умолчанию cookies устанавливаются на один сеанс работы с броузером, однако можно задать для них более продолжительный срок существования. Это очень удобное и полезное свойство, поскольку в этом случае пользователю не нужно предоставлять свои данные вновь при каждом посещении сайта. Как уже говорилось, срок годности устанавливается в секундах относительно начала эпохи. В PHP существуют функцииtime и mktime для работы с датой и временем, позволяющие переводить текущее время в количество секунд с начала эпохи. Функция time просто переводит текущее системное время в количество секунд, прошедших с начала эпохи: Time Синтаксис: time ();Усовершенствованным вариантом функции time является функция mktime: Mktime Синтаксис: int mktime ( [ int hour [, int minute [, int second [, int month [, int day [, int year [, int is_dst]]]]]]] )Аргумент is_dst этой функции определяет, попадает ли эта дата в период летнего времени и может принимать следующие значения: · -1 (По умолчанию. Означает, что свойство не задано); · 0 (Временной интервал не приходится на период летнего времени); · 1 (Временной интервал приходится на период летнего времени). Примеры установки сроки годности cookies: <? /* этот cookie действителен в течение 10 мин после создания */ setcookie ( "name", $value, time () + 600 ); /* действие этого cookie прекращается в полночь 25 января 2010 года */ setcookie ( "name", $value, mktime ( 0,0,0,01,25,2010 )); /* действие этого cookie прекращается в 18.00 25 января 2010 года */ setcookie ( "name", $value, mktime ( 18,0,0,01,25,2010 ));?>Удаление cookie Удалить cookie просто. Для этого надо вызвать функцию setcookie и передать ей имя того cookie, который подлежит удалению: setcookie ( "name" );Другие установленные cookie при этом не удаляются. Проблемы безопасности, связанные с cookies Иногда в cookies приходится хранить конфиденциальные данные, и в этом случае разработчик должен позаботиться о том, чтобы информация хранящееся в cookie не была передана третьим лицам. Существует несколько методов защиты информации, хранящейся в cookie: · установка области видимости cookies; · шифрование; · ограничение доступа для доменов; · отправка cookies по защищенному запросу. Наилучшим решением является комплексное применение всех этих способов. Установка области видимости cookie Поскольку, по умолчанию, доступ к cookie происходит из корневого каталога, это может создать "дыры" в системе защиты, так как cookies становятся доступными в любом подкаталоге этого каталога. Ограничить доступ к cookies для всех страниц, кроме расположенных в конкретном каталоге, к примеру, /web, можно следующим образом: setcookie ( "name", $value, "/web/" );Однако и в этом случае, к примеру, каталоги /web/index.php, /web1/page.html и т. д. будут удовлетворять этому ограничению. Если такое положение также является нежелательным, можно ограничить область видимости cookies до конкретной страницы: setcookie ( "name", $value, "/web/index.php" );Однако и такой способ в полной мере не решает проблему, так как в этом случае доступ к информации, содержащейся в cookie, может получить, к примеру, скрипт /web/index.php-script/anti_cookie.php. Поэтому появляется необходимость в шифровании. Шифрование Применить шифрование к cookies можно разными способами, рассмотрим один из них: <? // создаем вектор начального состояния для шифрования $vector = mcrypt_create_iv ( mcrypt_get_iv_size ( MCRYPT_CAST_256, MCRYPT_MODE_CFB ), MCRYPT_RAND ); $key = "qwe233jk312jx813893xk312"; // ключ для расшифрования $cook_name = "maks"; $cipher = mcrypt_encrypt ( MCRYPT_CAST_256, $key, $cook_name, MCRYPT_MODE_CFB, $vector ); setcookie ( "username", $cipher, "/decrypt.php" );?>Как видно из листинга 10.13, расшифровка cookie проводится при помощи скрипта decrypt.php, код которого приведен ниже: <? // вектор начального состояния остается неизменным $vector = mcrypt_create_iv ( mcrypt_get_iv_size ( MCRYPT_CAST_256, MCRYPT_MODE_CFB ), MCRYPT_RAND ); $key = "qwe233jk312jx813893xk312"; $decrypt_name = mcrypt_ decrypt ( MCRYPT_CAST_256, $key, $username, MCRYPT_MODE_CFB, $vector ); echo( "$decrypt_name, мы рады видеть вас на нашей страничке!" );?>
|
||
|
Последнее изменение этой страницы: 2020-11-28; просмотров: 234; Нарушение авторского права страницы; Мы поможем в написании вашей работы! infopedia.su Все материалы представленные на сайте исключительно с целью ознакомления читателями и не преследуют коммерческих целей или нарушение авторских прав. Обратная связь - 216.73.217.21 (0.006 с.) |