Учебное пособие: Аутентификация пользователейПожалуйста зарегистрируйтесь

Учебное пособие: Аутентификация пользователейПожалуйста зарегистрируйтесь




🛑 👉🏻👉🏻👉🏻 ИНФОРМАЦИЯ ДОСТУПНА ЗДЕСЬ ЖМИТЕ 👈🏻👈🏻👈🏻




























































Просьба к пользователю доказать свою личность называется аутентификацией.
Обычный метод аутентификации в Web — это требование к посетителям предоставить уникальное имя пользователя и пароль. Аутентификация используется для разрешения или запрещения доступа к определенным страницам или ресурсам. Аутентификация может быть необязательной либо использоваться для других целей, например, для персонализации.
Пользователь может в удобной форме ввести уникальное имя и пароль с помощью HTML
-документа index.html
с элементами диалога — текстовыми полями и кнопкой.
Листинг index.html.
Страница с формой
АУТЕНТИФИКАЦИЯ ПОЛЬЗОВАТЕЛЯ



Зарегистрировавшись, Вы получите доступ к защищенной странице.



Имя и Пароль можно получить у администратора.



Имя
:

Пароль
:



После того как пользователь заполнит текстовые поля и нажмет кнопку «Отправить», браузер обратится к сценарию hello.php
и передаст их в строке параметров. В атрибуте action
тега
задан относительный путь, т. е. сценарий hello.php
будет искаться браузером в том же самом каталоге, что и файл form.html
.
Осталось определиться, как можно извлечь $
l
ogin
и $pass
из строки параметров.
Независимо от того, каким методом — get
или post
— воспользовался браузер, РНР
сам определяет, какой метод был задействован.
Все данные из полей формы РНР
помещает в глобальный массив $_
REQUEST
.
Значение поля login
будет храниться в $_
REQUEST
['login']
, а значение поля p
ass
— в $_
REQUEST
['pass'].

Чтобы можно было как-то разделить GET
-параметры от POST
-данных, РНР
также создает массивы $_GET
и $_
POST
, заполняя их соответствующими значениями. Массив $_
REQUEST
представляет собой объединение этих двух массивов.
Листинг hello.php -
сценарий извлечения текста из полей формы
if ($_REQUEST['login']=="root" && $_REQUEST['pass']=="Z10N0101")

echo
"Доступ открыт для пользователя $_
REQUEST
[
login
]";

echo
"Доступ закрыт! При вводе данных была совершена ошибка. Для исправления ошибки нужно вернуться <
a
href
=
index
.
html
>назад";

При создании сценария извлечения текста из полей формы hello.php
применена инструкция if-
else
.
Инструкция if
-
else
— условный оператор. Его формат таков:
Действие инструкции следующее: если логическое_выражение

истинно, то выполняется инструкция_1

, а иначе — инструкция_2

.
Как и в любом другом языке, конструкция else
может опускаться. В этом случае при получении ложного значения просто ничего не делается.
Если при вводе данных будет совершена ошибка, например, неправильно введен пароль, то доступ будет закрыт:
Рассмотренный код, реализует простой механизм, позволяющий санкционированным посетителям видеть защищенную страницу.
● поддерживает только одно жестко закодированное имя пользователя и пароль;
● хранит пароль в виде простого текста;
● передает пароль в виде простого текста.
Для хранения паролей лучше применить базу данных. Если планируется сохранять большое количество элементов в файле или производить поиск в рамках большого числа элементов, то следует рассмотреть возможность использования базы данных вместо двумерного файла.
Практический метод выбора между файлом и базой данных гласит: если вы собираетесь хранить и производить поиск в более чем 100 элементах, следует отдать предпочтение базе данных.
Использование базы данных для хранения имен и паролей посетителей позволяет быстро проводить аутентификацию множества пользователей. Это также упрощает создание сценария для добавления и удаления пользователей, а также дает возможность пользователям изменять свои пароли.
Разработаем сценарий для аутентификации посетителей страницы с использованием базы данных.
Базу данных auth
и таблицу auth
в ней можно создать, подключившись к MySQL как пользователь root
и запустив показанный в листинге create_db.php
сценарий.
Листинг create_db.php
—запросы для создания базы данных auth
с таблицей auth

//Открыть постоянное соединение с с MySQL-сервером, сервер localhost,

//имя пользователя root, пустой пароль

$link = mysql_pconnect("localhost", "root", "")

or exit("Соединение с MySQL-сервером не создано");

//отправляем запрос текущей активной БД на сервере и

$result=mysql_query("create database auth");

if(!$result) echo"База данных не создана";

if(!$result) echo"База данных не выбрана";

//создаем таблицу auth в базе данных auth

$result=mysql_query("create table auth

if($result) echo "
Таблица
auth
создана
";

//отправляем запрос текущей активной БД на сервере и

//которые могут быть применены ко всем таблицам базы данных auth

//пользователем admin с хоста localhost с паролем 12345

$result=mysql_query("grant select, insert, update, delete

to admin@localhost identified by '12345';

if($result) echo "Привилегии созданы";

Далее следует определить пользователей, которым будет предоставлен доступ к защищенным ресурсам. Для этого нужно присвоить им login
и pass
.
Создадим двух таких пользователей (оставим прежнего root
и добавим нового testuser
):
Листинг index_1.html -
страница с формой для улучшения механизма аутентификации из-за применения MySQL.
АУТЕНТИФИКАЦИЯ ПОЛЬЗОВАТЕЛЯ
MySQL









Имя
:

Пароль
:



Листинг secretdb.php
— сценарий извлечения текста из полей формы и сравнение его с текстом из базы данных
if(!isset($_POST['login'])&&!isset($_POST['pass']))

//Посетитель должен ввести имя и пароль

АУТЕНТИФИКАЦИЯ ПОЛЬЗОВАТЕЛЯ
MySQL









Имя
:

Пароль
:



$mysql=mysql_connect('localhost','root','');

echo
'К базе данных не удалось подключиться.';

$
mysql
=
mysql
_
select
_
db
( '
auth
' );

echo
'Нужную базу данных не удалось выбрать.';

//Запрос к базе данных для проверки, существует ли соответствующая запись

$query = "select count(*) from auth where

echo
'Запрос к базе данных не может быть осуществлен.';

$count = mysql_result( $result, 0, 0 );

//Комбинация имени и пароля посетителя правильная

echo
"<
h
1> Эта страница для зарегистрированных пользователей!";

echo
" Мы рады тому, что Вы посетили нашу страничку.";

// Комбинация имени и пароля посетителя неправильная

echo
" Вы ввели неправильно имя и пароль.";

Проверка того, что пользователь ввел данные, осуществляется функцией isset
.

При создании сценария извлечения текста из полей формы hello.php
применена инструкция if-
else
.
Инструкция if
-
else
— условный оператор. Его формат таков:
Действие инструкции следующее: если логическое_выражение

истинно, то выполняется инструкция_1

, а иначе — инструкция_2

.
Как и в любом другом языке, конструкция else
может опускаться. В этом случае при получении ложного значения просто ничего не делается.
В качестве логического выражения применена логическая функция isset
, которая проверяет, установлена ли переменная, логический оператор для проверки булевых условий НЕ (!)
и И
( and
или &&
):
(!isset($_POST ['login'])&&!isset($_POST ['pass']))

Листинг secretdb.php
— применение MySQL для улучшения механизма аутентификации.
if(!isset($name)&&!isset($password))

//Если имя и пароль не существуют, посетитель должен зарегистрироваться, т.е. ввести имя и пароль

<
h
1>Пожалуйста зарегистрируйтесь

<
p
>Зарегистрировавшись, Вы получите доступ к защищенной странице.









$
mysql
=
mysql
_
connect
( '
localhost
', '
root
', '' );

echo
' К базе данных не удалось подключиться.';

$
mysql
=
mysql
_
select
_
db
( '
auth
' );

echo
' Нужную базу данных не удалось выбрать.';

//Запрос к базе данных, чтобы проверить, существует ли соответствующая запись

$query = "select count(*) from auth where

echo
' Запрос к базе данных не может быть осуществлен.';

$count = mysql_result( $result, 0, 0 );

//Комбинация имени и пароля посетителя правильная

echo
"<
h
1> Эта страница для зарегистрированных пользователей!";

echo
" Мы рады тому, что Вы посетили нашу страничку.";

// Комбинация имени и пароля посетителя неправильная

echo
" Вы ввели неправильно имя и пароль.";

Используемую в примере базу данных можно создать, подключившись к MySQL как пользователь root и запустив показанный в листинге 14.3 сценарий.
Листинг 14.3. createauthdb.php —запросы для создания базы данных auth, таблицы auth и двоих пользователей.
( 'testuser', password('test123') );

grant select, insert, update, delete


Название: Аутентификация пользователей
Раздел: Рефераты по информатике, программированию
Тип: учебное пособие
Добавлен 13:50:31 24 апреля 2009 Похожие работы
Просмотров: 141
Комментариев: 16
Оценило: 3 человек
Средний балл: 5
Оценка: неизвестно   Скачать

Срочная помощь учащимся в написании различных работ. Бесплатные корректировки! Круглосуточная поддержка! Узнай стоимость твоей работы на сайте 64362.ru
Привет студентам) если возникают трудности с любой работой (от реферата и контрольных до диплома), можете обратиться на FAST-REFERAT.RU , я там обычно заказываю, все качественно и в срок) в любом случае попробуйте, за спрос денег не берут)
Да, но только в случае крайней необходимости.

Учебное пособие: Аутентификация пользователей
Реферат: История человечества, как результат развития желаний. Скачать бесплатно и без регистрации
Реферат: Дискенезія жовчних шляхів
Аттестация Курсовая Работа
Дипломная работа по теме Метафора в публицистическом тексте на материале французской и российской прессы
Контрольная работа: Документационное обеспечение деятельности коллегиальных органов
Курсовая работа по теме Технологические методы по ликвидации пневмоэнтеритов телят
Сочинение Рассуждение На Тему Волонтерская Деятельность
Реферат по теме Александр II: исторический портрет
Курсовая Работа Оформление Бгэу
Теории Глобализации Реферат
Контрольная работа: Собственный капитал банка
Эссе На Тему Справедливости
Реферат На Тему Сократ
Курсовая работа по теме Взаимодействие следователя с органом дознания
Человек И Политика Эссе
Дипломная работа по теме Разработка технико-распорядительного акта и технологического процесса станции Кедр
Факторы Зависимого Поведения Личности Реферат
Реферат по теме Основы статистической теории радиолокации
Реферат по теме Предмет и метод основ экономической теории
Чтобы Написать Недописанное Сочинение Учитель
Реферат: Проект очистки масло-шламовых сточных вод завода Топливная аппаратура электрохимическим методом
Реферат: Получение фенолов
Реферат: Екологія та охорона навколишнього середовища

Report Page