Mercurial > pub > Impl
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 |