NAME

ePortal::ThePersistent::ExtendedACL - Extended Access Control Lists base class for persistent objects.

SYNOPSIS

ePortal::ThePersistent::ExtendedACL implements extended processing of ACL based on SQL queries.

Two attributes are mandatory for ePortal::ThePersistent::ExtendedACL:

uid - user name of object owner
xacl_read - read access to the object

METHODS

initialize()

Overloaded method. Adds ACL specific attributes uid and xacl_read to the object.

Additional parameters:

  • xacl_uid_field

    Redefine standard uid attribute name to something another.

  • xacl_read_field

    Redefine standard xacl_read attribute name to something another.

xacl_where()

Construct SQL WHERE clause based on uid and xacl_read fields.

xacl_check_read()

Dummy function. Returns True. Read access is restricted in SQL WHERE clause.

restore_where()

Adds some WHERE conditions to comply with ACL.

AUTHOR

Sergey Rusakov, <rusakov_sa@users.sourceforge.net>