4.3. UCS Portalseite#

Die Portalseiten dienen der zentralen Darstellung aller verfügbaren Dienste in einer UCS-Domäne. Da sich die Anforderung von kleinen bis hin zu großen Umgebungen in Organisationen, Behörden oder auch im Schulbetrieb stark voneinander unterscheiden, bringt UCS ein sehr flexibles und individuell anpassbares Konzept für Portalseiten mit.

Wie in Abb. 4.4 dargestellt, können Portaleinträge (also Verweise auf Applikationen/Apps/Dienste; UDM-Objekttyp portals/entry) keinem, einem oder mehreren Portal-Kategorien zugeordnet werden. Eine Portal-Kategorie (UDM-Objekttyp portals/category) kann keinem, einem oder mehreren Portalen zugeordnet werden. Ein Portal selbst (UDM-Objekttyp portals/portal) stellt alle Portal-Kategorien dar, die mit ihm verknüpft sind.

Darüber hinaus können Sie Portal Announcements (Ankündigungen; UDM-Objekttyp portals/announcement) erstellen und damit zum Beispiel Wartungsfenster oder Serviceausfälle ankündigen. Ankündigungen können einen Schweregrad wie Information oder Warnung, ein Start- und Enddatum und eine Einschränkung der Sichtbarkeit auf eine bestimmte Gruppe von Benutzern haben. Eine Ankündigung wird im Portal im oberen Bereich jedes Portals auf allen Portalen angezeigt.

Das Portal domain, das mit jeder Installation mitgebracht wird, ist zunächst auf allen UCS-Systemen vorkonfiguriert. Neben allen installierten Applikationen in der Domäne werden hier auch Verweise zu Univention Management Console sowie zur Serverübersicht angezeigt.

Um das anzuzeigende Portal zu ändern, passen Sie die Univention Configuration Registry Variable portal/default-dn an und führen Sie den Befehl univention-portal update aus.

Eigene Portale und Portaleinträge können entweder über das UMC-Modul Portal oder direkt auf der Portalseite angelegt und verwaltet werden.

Mitglieder der Gruppe Domain Admins können nach der Anmeldung am Portal auf dem Primary Directory Node oder Backup Directory Node nach einem Klick auf den entsprechenden Eintrag im Benutzermenü das Portal bearbeiten. Sie können neue Einträge auf dem Portal erstellen, vorhandene Einträge modifizieren, sowie die Reihenfolge oder das Design modifizieren.

Sie können das UMC-Modul Portal für erweiterte Einstellungen wie das Erstellen von Portalen und Ankündigungen verwenden oder über die Gruppenmitgliedschaft steuern, welche Benutzer welche Portaleinträge sehen dürfen.

Standardmäßig werden alle Portaleinträge für jeden angezeigt. Im UMC-Modul Portal kann für ein Portal in der Kategorie Anmelden konfiguriert werden, ob anonyme Besucher sich erst anmelden müssen bevor sie Einträge sehen können. Es ist auch möglich bestimmte Einträge für bestimmte Gruppen zu limitieren. Dies erfordert das LDAP-Attribut memberOf. Eine Auswertung von verschachtelten Gruppenmitgliedsschaften (also Gruppen in Gruppen) findet statt.

Weitere Design Anpassungen können Sie in der Datei /usr/share/univention-portal/css/custom.css vornehmen. UCS überschreibt diese Datei bei einem Update nicht.

Schema des Portal-Konzepts in UCS

Abb. 4.4 Schema des Portal-Konzepts in UCS: Portale können frei definiert und UCS-Systemen als Startseite zugewiesen werden; ein Verweis kann auf mehreren Portalen angezeigt werden.#

4.3.1. Rechte für Portaleinstellungen vergeben#

Im Folgenden wird beschrieben, wie das UMC-Modul Portal für ausgewählte Gruppen oder Benutzer zugänglich gemacht werden kann. Dies wird anhand eines Beispiels erläutert. Für das Beispiel wird davon ausgegangen, dass eine Gruppe Portal Admins erstellt wurde und Mitglieder dieser Gruppe Zugang zu den Portaleinstellungen haben sollen.

Auf einem Primary Directory Node ist zunächst eine ACL-Datei zu erstellen, z.B. /opt/62my-portal-acl.acl. Diese Datei hat folgenden Inhalt aufzuweisen, um die nötigen ACL-Änderungen zu ermöglichen:

access to dn="cn=portals,cn=univention,@%@ldap/base@%@" attrs=children
  by group/univentionGroup/uniqueMember="cn=Portal Admins,cn=groups,@%@ldap/base@%@" write
  by * +0 break

access to dn.children="cn=portals,cn=univention,@%@ldap/base@%@" attrs=entry,@univentionObject,@univentionNewPortalEntry,
@univentionNewPortal,@univentionNewPortalCategory,children
  by group/univentionGroup/uniqueMember="cn=Portal Admins,cn=groups,@%@ldap/base@%@" write
  by * +0 break

Danach ist folgender Befehl auszuführen, um ein LDAP-Objekt für die LDAP-ACLs zu erzeugen:

$ udm settings/ldapacl create \
  --position "cn=ldapacl,cn=univention,$(ucr get ldap/base)" \
  --set name=62my-portal-acl \
  --set filename=62my-portal-acl \
  --set data="$(bzip2 -c /opt/62my-portal-acl.acl | base64)" \
  --set package="62my-portal-acl" \
  --set ucsversionstart=4.4-0 \
  --set ucsversionend=5.99-0 \
  --set packageversion=1

Wenn die ACL wieder gelöscht werden soll, kann folgender Befehl verwendet werden:

udm settings/ldapacl remove \
  --dn "cn=62my-portal-acl,cn=ldapacl,cn=univention,$(ucr get ldap/base)"

Über die UMC kann nun eine passende UMC-Richtlinie angelegt werden. Die folgenden UMC-Operationen müssen dafür innerhalb der Richtlinie erlaubt werden:

  • udm-portal

  • udm-syntax

  • udm-validate

  • udm-license

Wie man eine Richtlinie anlegt, ist unter Anlegen einer Richtlinie beschrieben. Nun muss die neu erstellte Richtlinie nur noch dem gewünschten Objekt, in diesem Fall der Gruppe Portal Admins, zugewiesen werden. Dies kann ebenfalls direkt innerhalb der UMC erfolgen. Für dieses Beispiel navigiert man dafür in das Gruppenmodul und editiert dort die gewünschte Gruppe. In den Gruppeneinstellungen können unter Richtlinien für das Gruppenobjekt vorhandene Richtlinien ausgewählt werden. Genauere Informationen über Richtlinienzuweisung sind unter Zuweisung von Richtlinien beschrieben.