ANTICHAT.XYZ    VIDEO.ANTICHAT.XYZ    НОВЫЕ СООБЩЕНИЯ    ФОРУМ  
Баннер 1   Баннер 2

ANTICHAT — форум по информационной безопасности, OSINT и технологиям

ANTICHAT — русскоязычное сообщество по безопасности, OSINT и программированию. Форум ранее работал на доменах antichat.ru, antichat.com и antichat.club, и теперь снова доступен на новом адресе — forum.antichat.xyz.
Форум восстановлен и продолжает развитие: доступны архивные темы, добавляются новые обсуждения и материалы.
⚠️ Старые аккаунты восстановить невозможно — необходимо зарегистрироваться заново.
Вернуться   Форум АНТИЧАТ > Программирование > PHP, PERL, MySQL, JavaScript
   
Ответ
 
Опции темы Поиск в этой теме Опции просмотра

  #11  
Старый 14.01.2008, 11:49
procedure
Banned
Регистрация: 22.12.2007
Сообщений: 660
Провел на форуме:
3885269

Репутация: 1158


По умолчанию

Цитата:
При использовании сессий авторизация хранится грубо говоря только до закрытия окна браузера. Потом придётся заново вводить логин/пароль.
При использовании куки такого нет, куки хранятся до истечения срока их действия (скока установишь).
Минус в том что бывает что куки отключены в браузере, хотя это бывает редко.
прям на пальцах обьяснил. Спасибо всем, а именно scrat и .:EnoT:. ++.
Думаю ну их на. эти кукисы оставлю все в сесси пусть юзеры авторизируются уждый раз зато безопасность больше.
 
Ответить с цитированием

  #12  
Старый 14.01.2008, 12:07
.:EnoT:.
Постоянный
Регистрация: 29.05.2007
Сообщений: 852
Провел на форуме:
4832771

Репутация: 1916


По умолчанию

Цитата:
Сообщение от procedure  
прям на пальцах обьяснил. Спасибо всем, а именно scrat и .:EnoT:. ++.
Думаю ну их на. эти кукисы оставлю все в сесси пусть юзеры авторизируются уждый раз зато безопасность больше.
ну не скажи. при правильном использовании куки не только безопасны но и очень удобны.
Если сомневаешься в безопасности скриптов. Т.е. боишься что могут спереть куки, то сдлеай хотя бы банальную привязку к ip. вписывай в куки айпи (можно и захешировать чтоб прикольней было), внеси этот ип в базу данных, а потом проверяй. если всё совпадает то пускай юзера, если нет, то посылай его))
 
Ответить с цитированием

  #13  
Старый 14.01.2008, 12:21
Macro
Постоянный
Регистрация: 11.11.2006
Сообщений: 595
Провел на форуме:
1845062

Репутация: 1079


По умолчанию

Цитата:
Сообщение от procedure  
прям на пальцах обьяснил. Спасибо всем, а именно scrat и .:EnoT:. ++.
Думаю ну их на. эти кукисы оставлю все в сесси пусть юзеры авторизируются уждый раз зато безопасность больше.
А как ты будешь знать, какой юзер кто? Сессии ведь тоже надо определять чьи Все равно придется куки делать, либо заносить в сессию какие-то особенности юзера, типа ip и браузера.
 
Ответить с цитированием

  #14  
Старый 14.01.2008, 13:23
SSB1981
Участник форума
Регистрация: 07.01.2008
Сообщений: 109
Провел на форуме:
214923

Репутация: 17
Отправить сообщение для SSB1981 с помощью ICQ
Wink

Цитата:
Сообщение от procedure  
Да я читал что можно просто данные авторизацции хранить в массиве, каком то.
Вот что ты имеешь ввиду:
PHP код:

<?php

if(empty($_SERVER['PHP_AUTH_USER'])) 
  { 
    
Header("WWW-Authenticate: Basic realm=\"Admin Page\""); 
    
Header("HTTP/1.0 401 Unauthorized"); 
  }
else
 {
   echo 
"Пользователь: ".$_SERVER['PHP_AUTH_USER'];
   echo 
"Пароль: ".$_SERVER['PHP_AUTH_PW'];
}

?>
 
Ответить с цитированием

  #15  
Старый 14.01.2008, 13:34
.:EnoT:.
Постоянный
Регистрация: 29.05.2007
Сообщений: 852
Провел на форуме:
4832771

Репутация: 1916


По умолчанию

SSB1981
оффтоп
имхо, в твоём скрипте лучше использовать не empty() а isset() , проверку на существование а не на пустоту
 
Ответить с цитированием

  #16  
Старый 14.01.2008, 14:53
SSB1981
Участник форума
Регистрация: 07.01.2008
Сообщений: 109
Провел на форуме:
214923

Репутация: 17
Отправить сообщение для SSB1981 с помощью ICQ
По умолчанию

какая разница?
 
Ответить с цитированием

  #17  
Старый 17.01.2008, 04:47
procedure
Banned
Регистрация: 22.12.2007
Сообщений: 660
Провел на форуме:
3885269

Репутация: 1158


По умолчанию

Цитата:
if(empty($_SERVER['PHP_AUTH_USER']))
{
Header("WWW-Authenticate: Basic realm=\"Admin Page\"");
Header("HTTP/1.0 401 Unauthorized");
поясни пожалуйста?

До меня так и не дошло, где нуно хранить пароли? Создать скрипт на сервере и в нем хранить все пароли или будет удобнее хранить их в каком либо массиве?
Что то я эту систему не до конца понимаю, наверное из за того что я ещё к СУБД не приступил?
 
Ответить с цитированием

  #18  
Старый 17.01.2008, 07:00
bul.666
Banned
Регистрация: 06.06.2006
Сообщений: 944
Провел на форуме:
3986705

Репутация: 1403


Отправить сообщение для bul.666 с помощью ICQ
По умолчанию

То, что привел SSB1981 это как метод авторизации, тоесть передачи значения имени пользователя и пароля... Дальше просто нужно обработать $_SERVER['PHP_AUTH_USER'] и $_SERVER['PHP_AUTH_PW']...
Или создать сессию... или кукисы... Конешно перед этим нужно их сверить с существующими именами пользователя и пароля... Можно использовать как SQL базу данных либо организовать хранение пар "username>Password" в файле...
С SQL всё ясно пробую сравнить пароль, где имя пользователя = $_SERVER['PHP_AUTH_USER']... Потом уже создаем кукисы и сессии...
- Если хранить на файле...
Например создаем файл db.txt
Пары храниться будут в виде user:password
например содержание нашего файла такое:
Цитата:
admin:TTwhgs2
user:qwerty
Сначала загружаем этот файл в один массив...
PHP код:
$db file("db.txt"); 
Тут каждый элемент массива будет содержать одну строчку файла, тоесть размер массива в данном случае - 2...
Затем разбить каждую строку... Потому, как имя отделено от пароля символом ":"
Потом создать цикл и проверять входящие данные (имя пользователя и пароля) с каждым элмента массива...
Хз понял ли не понял =))))
--------------------------------------------------
Ну короче вот бональный пример:
Создал в блокноте (Windows, это важно) файл с паролями:
Цитата:
admin:pass
user:loleg
user1:loleg1
user2:loleg2
Потом сам скрипт:
PHP код:
<?php 
   $uname 
$_GET['user']; 
   
$pwd $_GET['pw']; 
   
$db file("db.txt");
   foreach(
$db as $str) {
    if (
$uname.":".$pwd."\r\n" == $str) { ECHO "Hello $uname"; }
   }
?>
<form>
<input type="text" name="user">
<input type="text" name="pw">
</form>
Разберемся...
Я не стал тут разделять каждую строку массива на две перемнные, решил для просто стравнивать строки...
Вот цикл foreach назначает переменной $str с начала первую строку файла db.txt
Потом сравнивает
$uname.":".$pwd."\r\n" со этой строкой файла... И т.д. И если они будут совпадать выводим на экран "Hello $uname"
Почемуже именно такая строка?
Разберем её.
$uname - Это имя пользователя, если быть точном это $_POST['user'];
.":". - Это разделитель (Такой как и в файле)
$pwd - это пароль или $_GET['pw'];
."\r\n" - Это переход на новую строку (Windows!!!) Еслибы был юникс, то \n, но так как я создавал этот файл в блокноте и чтобы перейти на строчку ниже я нажимал Enter, а значит добавлял в конец строки \r\n

Конешно я мог импользовать rtrim но мне не хотелось =)
Короче надеюсь и тут понятно =)
Добалю... Там где Hello $uname можно стартовать сессию или кукисы а в начале файла проверять их наличие...

Последний раз редактировалось bul.666; 17.01.2008 в 07:17..
 
Ответить с цитированием

  #19  
Старый 17.01.2008, 14:56
procedure
Banned
Регистрация: 22.12.2007
Сообщений: 660
Провел на форуме:
3885269

Репутация: 1158


По умолчанию

bul.666-> ну 70% понял, остается эксперементировать на локалхосте.
Эх 2 вещи меня только расстраивают.
1. нельзя делать все через переменные, точнее можно только нежелательно.
2. и различие комманд между линух и винус.

bul.666 тебе огромное спасибо. надеюсь я с этого извлеко большой урок.
 
Ответить с цитированием

  #20  
Старый 17.01.2008, 16:16
bul.666
Banned
Регистрация: 06.06.2006
Сообщений: 944
Провел на форуме:
3986705

Репутация: 1403


Отправить сообщение для bul.666 с помощью ICQ
По умолчанию

Цитата:
2. и различие комманд между линух и винус.
Что касается командо, то да =))))))))
А если ты переживаешь изза пробельных символов \r\n и \n то... в моем случае можно было использовать rtrim($str) кот удаляет конечный пробельный сиивол...
 
Ответить с цитированием
Ответ



Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
Books PHP FRAGNATIC PHP, PERL, MySQL, JavaScript 186 21.02.2010 02:41
Local include && PHP baz1k Чужие Статьи 0 10.01.2008 04:50
Что такое Php? PAPA212 Болталка 13 28.12.2007 20:44
Безопасность в Php, Часть Iii k00p3r Чужие Статьи 0 11.07.2005 19:02
Защищаем Php. Шаг за шагом. k00p3r Чужие Статьи 0 13.06.2005 11:31



Здесь присутствуют: 1 (пользователей: 0 , гостей: 1)
 


Быстрый переход




ANTICHAT.XYZ