.. _security_policy: Security ******** Kofa has a very efficient security machinery. The machinery does not perform authorization checks on the content objects themselves stored in the database but restricts the usage of views, i.e. web pages and forms which are needed to view or edit data. Views are protected by permissions the user must have to use the view. Instead of assigning permissions seperately to users, permissions are bundled into sets of permissions, so-called roles which can be assigned to users through the web interface. It is important to note that permissions do not include other permissions. Only roles 'include' permissions. A 'manage' permission, for example, does not automatically enable users to open pages which merely display the data. These pages have their own 'view' permission. Another example is the ManagePortal permission described below. The name of the permission may lead to believe that users can do everything with this permssions. This is not true. It does only give access to certain pages which are dedicated to portal managers and must not be accessed by any other user. .. contents:: Permissions =========== The whole set of permissions and roles are described in the :py:mod:`Permissions and Roles Module`. Here we describe only a subset of permission classes which are crucial to configure the security settings properly. General Permissions ------------------- .. autoclass:: waeup.kofa.permissions.Public :noindex: .. autoclass:: waeup.kofa.permissions.Anonymous :noindex: .. autoclass:: waeup.kofa.permissions.Authenticated :noindex: .. autoclass:: waeup.kofa.permissions.ManageUsers :noindex: .. autoclass:: waeup.kofa.permissions.EditUser :noindex: .. autoclass:: waeup.kofa.permissions.ManagePortal :noindex: .. autoclass:: waeup.kofa.permissions.ViewAcademics :noindex: .. autoclass:: waeup.kofa.permissions.ManageAcademics :noindex: .. autoclass:: waeup.kofa.permissions.ManagePortalConfiguration :noindex: .. autoclass:: waeup.kofa.permissions.ManageDataCenter :noindex: .. autoclass:: waeup.kofa.permissions.ExportData :noindex: .. autoclass:: waeup.kofa.permissions.ImportData :noindex: Student Section Permissions --------------------------- .. autoclass:: waeup.kofa.permissions.ShowStudents :noindex: Global Roles ============ Global or site roles are assigned portal-wide. In contrast to local roles, users have this role in every context. Many global roles do only bundle one or two permissions. The objective behind is to share responsibilities and distribute tasks. The highly specialized roles are: .. autoclass:: waeup.kofa.permissions.AcademicsOfficer :noindex: .. autoclass:: waeup.kofa.permissions.AcademicsManager :noindex: .. autoclass:: waeup.kofa.permissions.DataCenterManager :noindex: .. autoclass:: waeup.kofa.permissions.ImportManager :noindex: .. autoclass:: waeup.kofa.permissions.ExportManager :noindex: .. autoclass:: waeup.kofa.permissions.ACManager :noindex: .. autoclass:: waeup.kofa.permissions.UsersManager :noindex: .. autoclass:: waeup.kofa.permissions.WorkflowManager :noindex: In contrast to these specialized sets of permissions, there are two sets which delegate extensive powers on portal managers. .. autoclass:: waeup.kofa.permissions.PortalManager :noindex: .. autoclass:: waeup.kofa.permissions.CCOfficer :noindex: Local Roles =========== Dynamic Roles =============