Access control is one of several methods to present personalized information to the visitors of your website, or to suppress the delivery of content. This concept is often understood solely as a means to restrict the visitor's access to information. However, displaying different kinds of content selectively to different groups of users is an equally important goal of access control.
Access control presupposes the possibility to assign read permission to live documents. This possibility exists in the editorial system where any number of user groups can be added to the live server read permission field of each file.
When the Portal Manager delivers content it takes account of the permission assignments that have been made. If access to a document has been restricted via the CMS to particular user groups on the live server, the Portal Manager will give access to the document only after the user has been successfully authenticated. Links to this document are deactivated if required.
However, it is not only possible to grant or deny permission on a per-file
basis but also partially. For this, a special language element,
<npspm>
, is available that can be used in the content
itself. The npspm
element can be inserted into the content of a
file like a normal HTML element is inserted.
Analogously to npsobj
elements, which are translated into
HTML text during the export, npspm
elements are translated
into a language evaluated on the server side. One of the supported
languages is Velocity because the Portal Manager includes a Velocity
engine. The Portal Manager itself is a web application that runs in a
servlet container which includes a JSP engine. Therefore, JSP is another
language into which npspm
elements can be translated during
the export (see also
Architecture of the
Portal Manager). A PHP page cannot contain Portal Manager
functionality such as access control or portlets because the server can
evaluate only one language per file.
The language into which npspm
elements are translated
during the export depends on the name extension of the file being
exported. You can assign languages to file name extensions by means of
the export.convertNpspm.mapping
parameter in the
export.xml
configuration file. For the reason mentioned
above, no other languages than velocity
and jsp
can be specified as server-side languages.
Please always use the npspm
elements supplied for access
control and personalization purposes, not their Velocity or JSP
equivalents into which they have been translated. This ensures that
always properly translated code is used, independently of the Fiona
version you are using.
The different access control functions of the npspm
element are accessible by means of tag attributes.