Communardo Software GmbH, Kleiststraße 10 a, D-01129 Dresden

CAS Server 5.2 - Wie kann die CAS Anwendung angepasst werden?

Erfahren Sie, mit welchen technischen Möglichkeiten CAS Anwendungen an das Corporate Design eines Unternehmens angepasst werden können.

Der CAS Server wird als Lösung zur Authentifizierung (bspw. Single Sign-on) für diverse Webanwendungen im Unternehmen ver­wen­det. Dies macht es oft erfor­der­lich, zumin­dest die Anmeldeseite dem Corporate Design des Unternehmens anzu­pas­sen. Der fol­gende Beitrag hat das Ziel, dem Leser einen tech­ni­schen Überblick über die Möglichkeiten zu ver­schaf­fen, wie dies rea­li­siert wer­den kann. 

Technischer Überblick

WAR Overlay

Für Anpassungen der Oberfläche und Konfigurationen emp­fehle ich die Verwendung des CAS Overlay Templates. Hierbei han­delt es sich um ein Maven/Gradle Projekt, wel­ches die WAR Datei des CAS Servers inklu­sive der eige­nen Änderungen erstellt. Die WAR Datei kann anschlie­ßend bspw. in einem Apache Tomcat deployed werden.

Durch die­ses Vorgehen erge­ben sich fol­gende Vorteile:

  • Es ist kein manu­el­ler Download des CAS Server Quellcodes notwendig.
  • Es müs­sen nur die Dateien erstellt wer­den, die auch ver­än­dert wer­den müssen.
  • Die Überwachung der Anpassungen ist dadurch übersichtlicher.
  • Änderungen las­sen sich unkom­pli­zier­ter und dadurch schnel­ler vornehmen.

Das CAS Overlay Template kann in fol­gen­den GitHub Repositorys her­un­ter­ge­la­den bzw. geclo­ned werden.

Struktur des Overlay Projekts

Die Verzeichnisstruktur des Overlay Projekts (\src\main\resources\static) lehnt sich sehr stark an die Struktur der CAS Server Anwendung (\WEB-INF\classes\static) an. Sämtliche Ressourcen (CSS, JavaScript, Templates, etc.), die ange­passt und somit über­schrie­ben wer­den sol­len, müs­sen sich im sel­ben rela­ti­ven Pfad im Overlay Projekt unter­halb von \sta­tic befinden.

Verzeichnisstruktur des CAS Overlay Projektes

Tipp: Die Verzeichnisstruktur des CAS Servers inkl. der Ressourcen kann durch den Build (bspw. via mvn package) eines Overlay Projekts im Target-Verzeichnis (\target\cas\WEB-INF\classes\static) gene­riert wer­den. Sollten im Overlay Projekt bereits Ressourcen unter­halb des \sta­tic Pfads exis­tie­ren, über­schrei­ben diese die Standarddateien.

Template Engine: Thymeleaf

CAS Server nutzt Thymeleaf als Java Template Engine. Sie kann HTML, XML, JavaScript und CSS verarbeiten.

Dabei ermög­licht sie mit HTML-Notationen, Logik zu imple­men­tie­ren. Zu die­sem Zweck wird ein eige­ner XML-Namespace („th:“) ver­wen­det. Dies hat den Vorteil, dass die Template-HTML-Dateien der HTML Syntax (well-formed) entsprechen.

Thymeleaf ver­ein­facht die Zusammenarbeit von Webdesignern und Entwicklern durch einen Mechanismus, der beide Gruppen par­al­lel an den Templates arbei­ten lässt. Eine detail­lier­tere Dokumentation von Thymeleaf ist hier zu finden.

Themes

Das CAS Overlay bie­tet die Möglichkeit, sta­ti­sche und dyna­mi­sche Themes zu erstellen.

Das sta­ti­sche Theme legt das Design der Anwendung fest. Die Pfade zu den Ressourcen wer­den in der cas-theme-default.properties Datei kon­fi­gu­riert. Standardmäßig befin­den sich die Dateien (CSS; JavaScript) im Verzeichnis \src\main\resources\static in den Unterordnern \css und \js.

Dynamische Themes wer­den hin­ge­gen dafür ver­wen­det, in Abhängigkeit von URL-Pfaden, Nutzern, etc., unter­schied­li­che Designs dar­zu­stel­len. Ein Anwendungsgebiet dafür sind bei­spiels­weise Tochterunternehmen mit ihrem eige­nen CD, die den­noch einen gemein­sa­men Authentifizerungsdienst nutzen.

Weiterführende Links:

15. Dezember 2017
|

Related Posts

Pin It on Pinterest