Visual Basic, .NET, ASP, VBScript
 

   
   
     

Форум - Интернет-языки

Страница: 1 |

 

  Вопрос: Программное создание .htpasswd Добавлено: 18.09.05 02:34  

Автор вопроса:  HACKER
Нужно:
На пхп функцию которая бы шифровала пароль так, чтобы Apache потом нормально обрабатывала его. (ось - винда)

Смотрел много примеров на эту тему, все скрипты "криво" шифруют пароль. Криво, в том смысле, что пароль якобы шифруется, но при запросе паролько которую мы шифровали неподходит, а подходит сам шифрованный пароль. Т.е. если я шифрую "505050", получается "VpWb9UtBozCUk" Но при запросе, подходит пароль не 505050, а VpWb9UtBozCUk т.е. апач думает что пароль записанный в .htpasswd никак не зашифрован. Шифровать пробовал вот этим классом http://www.creater.ru/index.php?section=scripts&id=1966 его немного изменял:


(943 строка)
изменил:
function assignPass ($UserID, $UserPass)

ну и соответственно ниже

$pass = $UserPass;


вызывал:


//Добавления админа
if($command=="add_admin"){
 include("class.Htpasswd.php3");
 $Htpasswd = new Htpasswd($ht_passwd);

 if(!($Htpasswd->EXISTS)){
 Msgbox ("Ошибка при добавлении нового админа");
 exit;
 } //if(!($Htpasswd->EXISTS))
$UserID = $login;
$Pass = $Htpasswd->assignPass($UserID, $password);

if(!empty($Pass)){
Msgbox ("Новый администратор <b>".$login."</b> успешно создан с паролем ".$password);
}else{ //if(!empty($Pass))
echo "Add user failed: $Htpasswd->ERROR <BR> \n\r";
} //if(!empty($Pass))
} //if($command=="add_admin")


т.е.

$UserID = $login;
$Pass = $Htpasswd->assignPass($UserID, $password);


походу всё должно быть хорошо, а нет, ситуация не изминилась, подходит шифрованный пароль как рассказывал выше...

У кого какие предложения как программно создать .htpasswd? Говорят что надо написать свою функцию которая бы пасс подгоняла к виду понятному для апача, и юзать её параллельно с md5()

Ответить

  Ответы Всего ответов: 5  

Номер ответа: 1
Автор ответа:
 HACKER


 

Разработчик Offline Client

Вопросов: 236
Ответов: 8362
 Профиль | | #1 Добавлено: 18.09.05 02:45
на phpclub на форуме, по поиску ".htpasswd" куча топов с аналогичной не решенной проблемой.

P.S. Вызывать внешнюю программу (htpasswd.exe) не предлагать!

Ответить

Номер ответа: 2
Автор ответа:
 Progos



ICQ: 311715784 

Вопросов: 39
Ответов: 157
 Web-сайт: html-expert.org.ru
 Профиль | | #2
Добавлено: 18.09.05 06:08
А не хочешь авторизацию просто на РНР реализовать?

Ответить

Номер ответа: 3
Автор ответа:
 Sharp


Лидер форума

ICQ: 216865379 

Вопросов: 106
Ответов: 9979
 Web-сайт: sharpc.livejournal.com
 Профиль | | #3
Добавлено: 18.09.05 07:23
Вопрос-то о .htpasswd, а чем тебе не нравится вариант с внешней программой? У PHP есть функция system()

Ответить

Номер ответа: 4
Автор ответа:
 Progos



ICQ: 311715784 

Вопросов: 39
Ответов: 157
 Web-сайт: html-expert.org.ru
 Профиль | | #4
Добавлено: 18.09.05 07:32
Я могу дать пример на РНР
Выглядит оно точно так же, как и при использовании .htapasswd, и проблем никаких.
Я тоже сталкивался с тем, что Apache нормально не воспринимал пароли. Помучался немного, плюнул, и сделал все на РНР.

Ответить

Номер ответа: 5
Автор ответа:
 HACKER


 

Разработчик Offline Client

Вопросов: 236
Ответов: 8362
 Профиль | | #5 Добавлено: 18.09.05 21:38
Я тоже сделал сейчас всё через пхп сессии. Но мне всё же интерестно было бы посмотреть на функцию шифрования пароля для .htpasswd. Sharp, внешнюю прогу хостер запускать не разрешает... знаю знаю... меняй хостера - поменяю, через года 2, я предоплату сделал.

Ответить

Страница: 1 |

Поиск по форуму



© Copyright 2002-2011 VBNet.RU | Пишите нам