1 # <a name="Package <code>TWiki::Access="></a> Package =TWiki::Access
3 A singleton object of this class manages the access control database.
7 <li><a href="#Package =TWiki::Access="> Package TWiki::Access</a><ul>
8 <li><a href="#ClassMethod <strong>new</strong> ()"> ClassMethod new <tt>()</tt></a></li>
9 <li><a href="#ObjectMethod <strong>permissionsSet</strong> ($"> ObjectMethod permissionsSet <tt>($web) -> $boolean</tt></a></li>
10 <li><a href="#ObjectMethod <strong>getReason</strong> () -> $"> ObjectMethod getReason <tt>() -> $string</tt></a></li>
11 <li><a href="#ObjectMethod *check_AccessPermis"> ObjectMethod checkAccessPermission <tt>($action,$user,$text,$topic,$web) -> $boolean</tt></a></li>
17 ## <a name="ClassMethod <strong>new</strong> ()"></a> [[ClassMethod]] **new** `()`
19 Construct a new singleton object to manage the permissions database.
21 ## <a name="ObjectMethod <strong>permissionsSet</strong> ($"></a> [[ObjectMethod]] **permissionsSet** `($web) -> $boolean`
23 Are there any security restrictions for this Web (ignoring settings on individual pages).
25 ## <a name="ObjectMethod <strong>getReason</strong> () - $s"></a> [[ObjectMethod]] **getReason** `() -> $string`
27 Return a string describing the reason why the last access control failure occurred.
29 ## <a name="ObjectMethod <strong>check_AccessPermis"></a> [[ObjectMethod]] \*checkAccessPermission `($action,$user,$text,$topic,$web) -> $boolean`
31 Check if user is allowed to access topic
33 - `$action` - 'VIEW', 'CHANGE', 'CREATE', etc.
34 - `$user` - User object
35 - `$text` - If undef or '': Read '$theWebName.$theTopicName' to check permissions
36 - `$topic` - Topic name to check, e.g. 'SomeTopic' \*undef to check web perms only)
37 - `$web` - Web, e.g. 'Know'
39 If the check fails, the reason can be recoveered using getReason.