comparison Lib/IMPL/Web/Security.pm @ 73:2f31ecabe9ea

doc security
author wizard
date Mon, 29 Mar 2010 06:56:05 +0400
parents f47f93534005
children 2d1c3f713280
comparison
equal deleted inserted replaced
72:eac47fa4f262 73:2f31ecabe9ea
1 package IMPL::Web::Security; 1 package IMPL::Web::Security;
2
3 use base qw(IMPL::Object IMPL::Security IMPL::Object::Autofill);
4
5 use IMPL::Class::Property;
6
7 __PACKAGE__->PassThroughArgs;
8
9 BEGIN {
10 public property sessionFactory => prop_get | owner_set;
11 public property userFactory => prop_get | owner_set;
12 }
13
14 sub CTOR {
15 my ($this) = @_;
16
17 $this->dataSource or die new IMPL::InvalidArgumentException("The argument is required",'dataSource');
18 }
19
20 sub Session {
21 my ($this,%args) = @_;
22 }
23
24 sub User {
25
26 }
2 27
3 1; 28 1;
4 29
5 __END__ 30 __END__
6 31
7 =pod 32 =pod
8 33
34 =head1 NAME
35
36 C<IMPL::Web::Security> Модуль для аутентификации и авторизации веб запроса.
37
38 =head1 SINOPSYS
39
40 =begin code xml
41
42 <security type='IMPL::Config::Activator'>
43 <factory>IMPL::Web::Security</factory>
44 <parameters type='HASH'>
45 <sessionFactory type='IMPL::Object::Factory'>
46 <factory type='IMPL::Object::Factory'>App::Data::Session</factory>
47 <method>insert</method>
48 </sessionFactory>
49 </parameters>
50 </security>
51
52 =end code xml
53
9 =head1 DESCRIPTION 54 =head1 DESCRIPTION
10 55
11 Модуль для аутентификации и авторизации веб запроса. 56 Отвечает за инфраструктуру аутентификации и авторизации запросов. Основная особенность
57 заключается в том, что запросы приходят через значительные интевалы времени, хотя и
58 относятся к одной логической транзакции. В промежутках между запросами сервер не
59 сохраняет свое состояние. Поэтому при каждом обращении сервер восстанавливает
60 контекст безопасности.
12 61
13 Получает запрос, вычленяет из него информацию для авторизации, производит авторизацию пользователя 62 C<IMPL::Web::Session> Объект обеспечивающий сохранение состояния в рамках одной сессии
14 и создает контекст безопасности. 63 пользователя. Кроме контекста безопасности хранит дополнительние данные, которые необходимо
64 сохранить между обработкой запросов.
15 65
16 При этом использует указанные модули аутентификации. 66 C<IMPL::Web::User> Объект, устанавливающий связь между идентификатором пользователя
67 C<IMPL::Security::Principal>, его ролями и данными безопасности для создания объектов
68 аутентификации C<IMPL::Security::Auth>.
17 69
18 Информацию для аутентификации модуль получает через соответствующие адаптеры. 70 =head1 MEMBERS
19
20 =item C<IMPL::Web::Security::Server>
21
22 Аутентифицирует пользователя на основе данных, предоставленных сервером
23
24 =item C<IMPL::Web::Security::Embed>
25
26 Аутентифицирует пользователя используя указанные модули, при этом получает данные
27 из запроса.
28 71
29 =cut 72 =cut