Страница 1 из 1

Авторизацию и аутентификация на Perl

Добавлено: 2008-03-19 13:07:24
ProFTP
нужна полноценная!! такая как на этом форуме

где взять , как сделать?

если самому писать то я не понял маленько, как разорвать сессию когда браузер закрылся, как смотреть сколько народа было за некоторое время, и т.д.

скажите как это сделать без геморой, может надо посомтреть на чей то код, например cms, forum но там черт голову сломит

Re: Авторизацию и аутентификация на Perl

Добавлено: 2008-03-19 13:27:29
hizel
сессии - http://search.cpan.org/~markstos/CGI-Se ... Session.pm
с примерами на англицком
сессии заканчиваются по таймауту

вы кстати в курсе что:
Authentication — процесс, позволяющий идентифицировать (узнать) субъекта по его данным, например, по логину и паролю.
Authorization — процесс, определяющий полномочия идентифицированного субъекта на доступ к определенным обьектам или сервисам.
Accounting — процесс, позволяющий вести учет доступа к услугам.

Re: Авторизацию и аутентификация на Perl

Добавлено: 2008-03-19 14:03:01
ProFTP
если я буду писать самому, но это будет тупая и тормознутая Авторизация и аутентификация, потому что некотое не совсем понял.

чтобы вывести за 10 минут, нужно запрос поставить и вывести с столбца количество человек, типо? сессии сами закончаться?

а есть примеры, кроме меня никто не делал наверное?

Re: Авторизацию и аутентификация на Perl

Добавлено: 2008-03-19 16:51:33
hizel
чтобы вывести за 10 минут, нужно запрос поставить и вывести с столбца количество человек, типо?
это уже на аккаунтинг больше похоже
непонятно что тебе конкретно надо
хватит в терминалогии путатся, почитай матчасть
подумаю над тем, что тебе нужно
почирикай карандашиком на бумажке
може просветление и придет

Re: Авторизацию и аутентификация на Perl

Добавлено: 2008-03-19 17:35:19
ProFTP
1. Правильно, если логин есть, то посмотреть есть ли сессия, если нету, то прявязать сессию на 2 часа допустим :twisted:
2. Как посмотерть сколько айпишников было за 15 мин?


ЗЫ: понял сам, что надо сессии с айпи записывать в БД, и сранивать если это гость, но я не знаю как правильно вообще... наверное так и есть...

тут не дописаная документация :?
http://search.cpan.org/~markstos/CGI-Se ... r/mysql.pm

Re: Авторизацию и аутентификация на Perl

Добавлено: 2008-03-19 20:00:19
ProFTP
а зачем нужна сессия, елси нету авторизации?

Re: Авторизацию и аутентификация на Perl

Добавлено: 2008-03-19 20:03:59
ProFTP
нужен "аккаунтинг"... :P

Re: Авторизацию и аутентификация на Perl

Добавлено: 2008-03-21 2:02:08
ProFTP
1. Прочитал вот сдесь, делаю по этому модулю с MySQL (может и не надо было - лучше самому написать эту сессию?)
http://search.cpan.org/~markstos/CGI-Session-4.20/

а как посмотреть привязана ли сессии к конкретному юзеру (и по его айпи, если Cookies кто-то украдет ) зарегистрированому в таблице?

Код: Выделить всё

 CREATE TABLE sessions (
	 id CHAR(32) NOT NULL PRIMARY KEY,
	 a_session TEXT NOT NULL
  );

Код: Выделить всё

CREATE TABLE users (
		id	INT(11)	  NOT NULL AUTO_INCREMENT,
		name  VARCHAR(25) NOT NULL,
		pass  VARCHAR(25) NOT NULL,
		info  VARCHAR(500) NOT NULL,
PRIMARY KEY (id)
2. как Cookies послать браузера (если это будет на прмиер прокси-серсер) чтобы Cookies выключились когда браузер закроется (чтобы вечно не остались там)? не могу найти про это

Re: Авторизацию и аутентификация на Perl

Добавлено: 2008-03-21 9:34:21
hizel
1. подрихтовать скрипт под себя
2. сессии заканчиваются по таймауту или никогда, например чел залогинился, создалась сессия предположим на 1 час, час прошел и если чел больше не заходил сессияя отмирает

Re: Авторизацию и аутентификация на Perl

Добавлено: 2008-03-25 6:02:14
ProFTP
спасибо, просто делаеться!

столкнулся с проблемой что не передаються куки, и я не знаю передались ли они вообще...

http://search.cpan.org/~lds/CGI.pm-3.34/CGI/Cookie.pm

Код: Выделить всё

use CGI::Cookie;
use warnings;
use Storable;
use vars '$dbh', '%user_vars';

$cookie1 = new CGI::Cookie(-session => '$session',
-name => 'SOMENAME',
-domain => '.someserver.com',
-expires => '+3M',
);

	print header(-cookie=>$cookie1);

 print "Content-type: text/html\n\n"
менял все - не получаеться

Код: Выделить всё

Undefined subroutine &main::header called at ....es.pl line 188.

когда хочу получить то не определено

Код: Выделить всё

my %cookies = fetch CGI::Cookie;
# Если есть ключ сессии
if ($cookies{'session'}) {
:twisted: :twisted: :twisted:

Re: Авторизацию и аутентификация на Perl

Добавлено: 2008-03-25 7:27:38
ProFTP
UPD: передал вот так:

Код: Выделить всё

print "Content-type: text/html\n\n";

print << "[INFO]";

  <META HTTP-EQUIV="Set-Cookie" CONTENT="session=$session;
		 DOMAIN=.$host; PATH=/; SECURE"> 



[INFO]
CGI::Cookie не захотел передавать CGI.pm-3.33,1

Re: Авторизацию и аутентификация на Perl

Добавлено: 2008-03-25 7:45:04
hizel
ээ header, это из CGI
может всетаки вначале вставить еще и

Код: Выделить всё

use CGI qw/:standard/;
и это

Код: Выделить всё

 print "Content-type: text/html\n\n"
нинадо
так как оно вствляется в header