12. Лекция: Авторизация доступа с помощью сессий » Лекции по PHP » Библиотека » WAP.ZUGDIDI.US
Привет прохожий!
На главную | Вход | Регистрация

12. Лекция: Авторизация доступа с помощью сессий

$_SESSION['passwd'] = $_GET['passwd'];
// теперь логин и пароль - глобальные
// переменные для этой сессии
if ($_GET['login'] == "pit" && $_GET['passwd'] == "123")
{ // перенаправляем на страницу secret_info.php
Header("Location: secret_info.php");
}
else echo "Неверный ввод, попробуйте еще раз<br>";
}
print_r($_SESSION); // выводим все переменные сессии
?>

Теперь, попав на страничку secret_info.php, да и на любую другую страницу сайта, мы сможем работать с введенными пользователем логином и паролем, которые будут храниться в массиве $_SESSION. Таким образом, если изменить код секретной странички (заметьте, мы переименовали ее в secret_info.php) так:
<?php
session_start(); // создаем новую сессию или восстанавливаем текущую
print_r($_SESSION); // выводим все переменные сессии
?>
<html>
<head>
<title>Secret info</title>
</head>
<body>
Здесь я хочу делиться секретами с другом Петей.
</body>
</html>

То мы получим в браузере на секретной странице следующее:
Array ( [login] => pit [passwd] => "123" )
Здесь я хочу делиться секретами с другом Петей.

В итоге получим список переменных, зарегистрированных на authorize.php и, собственно, саму секретную страничку.

Что это нам дает? Допустим, хакер хочет прочитать секреты Васи и Пети. И он как-то узнал, как называется секретная страничка (или странички). Тогда он может попытаться просто ввести ее адрес в строке браузера, минуя страницу авторизации (ввода пароля). Чтобы избежать такого проникновения в наши тайны, нужно дописать всего пару строк в код секретных страничек:
<?php
session_start(); // создаем новую сессию или восстанавливаем текущую
print_r($_SESSION); // выводим все переменные сессии
// проверяем правильность пароля-логина
if (!($_SESSION['login'] == "pit" && $_SESSION['passwd'] == "123"))
{ // если ошибка, то перенаправляем на страницу авторизации
Header("Location: authorize.php");
}
?>
<html>

Страницы:
<< 1 .. 5 6 .. 8 9 10 .. 14 >>

Перейти к странице:

Комментарии (0)
Скачать Java книгу

» Лекции по PHP
» WEB/WAP мастеру
» В библиотеку

На главную
WAP.ZUGDIDI.US
Соглашение о Предоставлении Услуг

li WAPSTART

Cжатие 65.8%