Лабораторная работа N2
Изучение дополнительных возможностей протокола HTTP
1. Изучение механизмов HTTP-аутентификации
a) Изучите схемы HTTP-аутентификации Basic и Digest (RFC 2617). В отчёт включите краткий обзор данных схем.
б) В терминальном режиме подключитесь к TCP-порту веб-сервера lab127.karelia.ru и запросите указанный URL:
http://lab127.karelia.ru/~avsolov/nettech/lab2.phpЗафиксируйте свой HTTP-запрос и отклик сервера в отчёте. Используя схему Basic и полученный в ходе выполнения л.р.1 логин-пароль (или выданный преподавателем), сформируйте для данного ресурса подходящий HTTP-запрос с аутентификацией. Занесите в отчёт свой запрос и успешный отклик сервера. Для кодирования текста в BASE64 можно воспользоваться программой base64.
в) Повторите то же самое с URLом, использующем схему Digest:
http://lab127.karelia.ru/~avsolov/nettech/lab2.php?digestДля вычисления хэшей MD5 можно воспользоваться программой md5sum. В отчёте укажите HTTP-запрос и отклик сервера без аутентификации и с аутентификацией.
2. Изучение механизма передачи состояний между HTTP-транзакциями (cookies)
a) Изучите механизм передачи состояний между HTTP-транзакциями, предусмотренный RFC 2965. В отчёте приведите назначение и описание заголовков Set-Cookie и Cookie.
б) Откройте в браузере указанный URL:
http://lab127.karelia.ru/~avsolov/nettech/lab2.phpАвторизуйтесь, а затем перегрузите страничку. При повторной загрузке появится код, связанный с вашей сессией:
Your session is being continued... (id=63371)Запишите код, отображаемый на страничке. Посмотрите в информации о странице имя и значение присланной сервером куки. Подключившись к TCP-порту веб-сервера в терминальном режиме сформируйте HTTP-запрос с этой кукой, убедитесь, что в отклике присылается страничка с тем же самым кодом. В отчёт включите свой HTTP-запрос и отклик веб-сервера.
Прейскурант типичных ошибок:
- -0.5: повторная проверка отчёта,
- -0.1: нарушение срока сдачи (за каждую начатую неделю после дедлайна),
- -0.5: нет обзора спецификаций (схем расчёта откликов),
- -0.1: в HTTP-отклике 401 нет заголовков,
- -0.1: nonce в 401 не совпадает с nonce в запросе,
- -0.5: нет HTTP-отклика 401,
- -1.5: не выполнен + подделан пункт работы,
- -0.5: подделан протокол работы (при условии, что пункт выполнен),
- -0.1: использование Authorization в пункте с cookie,
- -0.1: некорректное использование терминов (обозвать хэширование или кодирование шифрованием и т.п.)