Mercurial > pub > Impl
diff Lib/IMPL/Web/Security.pm @ 73:2f31ecabe9ea
doc
security
author | wizard |
---|---|
date | Mon, 29 Mar 2010 06:56:05 +0400 |
parents | f47f93534005 |
children | 2d1c3f713280 |
line wrap: on
line diff
--- a/Lib/IMPL/Web/Security.pm Fri Mar 26 16:26:31 2010 +0300 +++ b/Lib/IMPL/Web/Security.pm Mon Mar 29 06:56:05 2010 +0400 @@ -1,29 +1,72 @@ package IMPL::Web::Security; +use base qw(IMPL::Object IMPL::Security IMPL::Object::Autofill); + +use IMPL::Class::Property; + +__PACKAGE__->PassThroughArgs; + +BEGIN { + public property sessionFactory => prop_get | owner_set; + public property userFactory => prop_get | owner_set; +} + +sub CTOR { + my ($this) = @_; + + $this->dataSource or die new IMPL::InvalidArgumentException("The argument is required",'dataSource'); +} + +sub Session { + my ($this,%args) = @_; +} + +sub User { + +} + 1; __END__ =pod +=head1 NAME + +C<IMPL::Web::Security> Модуль для аутентификации и авторизации веб запроса. + +=head1 SINOPSYS + +=begin code xml + +<security type='IMPL::Config::Activator'> + <factory>IMPL::Web::Security</factory> + <parameters type='HASH'> + <sessionFactory type='IMPL::Object::Factory'> + <factory type='IMPL::Object::Factory'>App::Data::Session</factory> + <method>insert</method> + </sessionFactory> + </parameters> +</security> + +=end code xml + =head1 DESCRIPTION -Модуль для аутентификации и авторизации веб запроса. - -Получает запрос, вычленяет из него информацию для авторизации, производит авторизацию пользователя -и создает контекст безопасности. - -При этом использует указанные модули аутентификации. - -Информацию для аутентификации модуль получает через соответствующие адаптеры. +Отвечает за инфраструктуру аутентификации и авторизации запросов. Основная особенность +заключается в том, что запросы приходят через значительные интевалы времени, хотя и +относятся к одной логической транзакции. В промежутках между запросами сервер не +сохраняет свое состояние. Поэтому при каждом обращении сервер восстанавливает +контекст безопасности. -=item C<IMPL::Web::Security::Server> - -Аутентифицирует пользователя на основе данных, предоставленных сервером +C<IMPL::Web::Session> Объект обеспечивающий сохранение состояния в рамках одной сессии +пользователя. Кроме контекста безопасности хранит дополнительние данные, которые необходимо +сохранить между обработкой запросов. -=item C<IMPL::Web::Security::Embed> +C<IMPL::Web::User> Объект, устанавливающий связь между идентификатором пользователя +C<IMPL::Security::Principal>, его ролями и данными безопасности для создания объектов +аутентификации C<IMPL::Security::Auth>. -Аутентифицирует пользователя используя указанные модули, при этом получает данные -из запроса. +=head1 MEMBERS =cut \ No newline at end of file