comparison Lib/IMPL/Security.pm @ 180:d1676be8afcc

Перекодировка в utf-8
author sourcer
date Fri, 30 Dec 2011 23:40:00 +0300
parents 068acfe903c3
children 4d0e1962161c
comparison
equal deleted inserted replaced
179:b3d91ff7aea9 180:d1676be8afcc
48 48
49 =pod 49 =pod
50 50
51 =head1 NAME 51 =head1 NAME
52 52
53 C<IMPL::Security> - . 53 C<IMPL::Security> - Модуль для работы с функциями авторизации и аутентификации.
54 54
55 =head1 SINOPSYS 55 =head1 SINOPSYS
56 56
57 =begin code 57 =begin code
58 58
105 105
106 =end code 106 =end code
107 107
108 =head1 DESCRIPTION 108 =head1 DESCRIPTION
109 109
110 , 110 Модуль для инфраструктуры безопасности, реализует основные функции для авторизации
111 . 111 и аутентификации пользователей.
112 112
113 , , 113 Модуль аутентификации, реализиция которого зависит от приложения, аутентифицирует
114 , , 114 пользователя, при этом создается контекст безопасности, который содержит
115 . 115 идентификатор пользователя и список активных ролей.
116 116
117 , 117 При проверке прав доступа происходит последовательная проверка правил доступа,
118 , . 118 если все правила выполнены, то доступ разрешается.
119 119
120 =head1 MEMBERS 120 =head1 MEMBERS
121 121
122 =over 122 =over
123 123
124 =item C<AccessCheck($object,$desiredAccess,$context)> 124 =item C<AccessCheck($object,$desiredAccess,$context)>
125 125
126 . , . 126 Метод. Проверка доступа к объекту с определенными правами, в определенном контексте безопасности.
127 127
128 =over 128 =over
129 129
130 =item C<$object> 130 =item C<$object>
131 131
132 . 132 Объект доступа.
133 133
134 =item C<$desiredAccess> 134 =item C<$desiredAccess>
135 135
136 . 136 Требуемые права доступа.
137 137
138 =item C<$context> 138 =item C<$context>
139 139
140 , , C<< IMPL::Security::Context->contextCurrent >> 140 Контекст безопасности, если не указан, то используется текущий C<< IMPL::Security::Context->contextCurrent >>
141 141
142 =item C<returns> 142 =item C<returns>
143 143
144 C<true | false> - 144 C<true | false> - результат проверки
145 145
146 =back 146 =back
147 147
148 =item C<MakeContext($principal,$role,$auth)> 148 =item C<MakeContext($principal,$role,$auth)>
149 149
150 , . 150 Создает контекст безопасности, инициализируя его передданными параметрами.
151 151
152 =over 152 =over
153 153
154 =item C<$principal> 154 =item C<$principal>
155 155
156 156 Объект пользователя
157 157
158 =item C<$role> 158 =item C<$role>
159 159
160 160 Роль или ссылка на массив ролей
161 161
162 =item C<$auth> 162 =item C<$auth>
163 163
164 164 Объект аутентификации
165 165
166 =back 166 =back
167 167
168 =item C<Take($principal,$role)> 168 =item C<Take($principal,$role)>
169 169
170 . . 170 Метод. Делегирует текущему пользователю полномочия другого пользователя. При этом выполняется проверка
171 . . 171 правомерности такой операции. В случае неудачи вызывается исключение.
172 172
173 =over 173 =over
174 174
175 =item C<$principal> 175 =item C<$principal>
176 176
177 C<IMPL::Security::Principal>. 177 Либо имя пользователя либо объект C<IMPL::Security::Principal>.
178 178
179 =item C<$role> 179 =item C<$role>
180 180
181 , , . 181 Либо имя либо ссылка на роль, или ссылка на массив либо имен, либо ролей.
182 182
183 =item C<returns> 183 =item C<returns>
184 184
185 . 185 Новый контекст безопасности.
186 186
187 =back 187 =back
188 188
189 =item C<Rules()> 189 =item C<Rules()>
190 190
191 . 191 Возвращает список правил которые выполняются при проверках доступа. Пререопределите этот
192 , . 192 метод, чтобы возвращать собственный список правил. Список правил является ссылкой на массив
193 . 193 элементами которого являются функции.
194 194
195 =begin code 195 =begin code
196 196
197 package MySecurity; 197 package MySecurity;
198 198
208 208
209 =end code 209 =end code
210 210
211 =item C<[static,get] authority> 211 =item C<[static,get] authority>
212 212
213 , . , , 213 Метод, позволяющий получить текущий источник системы безопасности. Источник безопасности, это модуль,
214 . 214 который получает входные данные и использует их для работы системы безопасности.
215 215
216 =back 216 =back
217 217
218 =cut 218 =cut