Mercurial > pub > Impl
diff Lib/IMPL/Security/AbstractContext.pm @ 260:2879cdb6b8cd
sync
author | sergey |
---|---|
date | Tue, 25 Dec 2012 02:18:59 +0400 |
parents | b8c724f6de36 |
children | fe725fad2d90 |
line wrap: on
line diff
--- a/Lib/IMPL/Security/AbstractContext.pm Fri Dec 21 00:09:11 2012 +0400 +++ b/Lib/IMPL/Security/AbstractContext.pm Tue Dec 25 02:18:59 2012 +0400 @@ -3,8 +3,11 @@ use warnings; use IMPL::Const qw(:prop); + use IMPL::require { - Role => 'IMPL::Security::Role' + Role => 'IMPL::Security::Role', + Exception => 'IMPL::Exception', + NotImplementedException => '-IMPL::NotImplementedException' }; use parent qw(IMPL::Class::Meta); @@ -118,9 +121,10 @@ Идентификатор пользователя, владельца контекста. -=head2 C<[get] rolesAssigned> +=head2 C<[get,set] rolesAssigned> -Список назначенных (активных) ролей пользователю. +Явно назначенные роли. Если список пуст, то считается, что используются роли +пользователя по-умолчанию. =head2 C<[get] auth> @@ -149,4 +153,10 @@ Заменяет текущий контекст на себя, но до конца действия метода C<Impersonate>, если таковой был вызван. +=head2 C<Satisfy(@roles)> + +Проверяет наличие необходимых ролей у контекста. Данный метод позволяет +абстрагироваться от механизмов связи контекста и ролей. Возвращает истинное +значение если список необходимых ролей у пользователя имеется. + =cut