Thema dieser Dokumentation
Thema dieser Dokumentation

Thema dieser Dokumentation / Das FirstSpirit 5 Modul- / Komponenten-Modell / FirstSpirit Security Architektur - Java Web Start (javaws)

FirstSpirit Security Architektur - Java Web Start (javaws)

Der FirstSpirit SiteArchitect und der FirstSpirit ServerManager werden über eine jnlp-Datei, d.h. über Java Web Start ausgeführt. Daraus ergeben sich zunächst einmal Einschränkungen in der Nutzung einiger Funktionalitäten für nicht von e-Spirit signierte Module bzw. in den JAR-Archiven enthaltene Klassen. Java-Programme laufen normalerweise in einer „Sandbox" ab. D.h. sie haben keinen vollwertigen Zugriff auf den Rechner und dessen Ressourcen, auf dem sie ausgeführt werden, sondern können nur innerhalb der Java-VM (Java Virtual Machine) arbeiten. Der Zugriff auf lokale Ressourcen wie Dateien, Zwischenablage, Netzwerk etc. geschieht über einen Security-Manager. Dieser ist normalerweise entsprechend den Sicherheitsanforderungen konfiguriert. Praktisch heißt das: Programme, die direkt (z. B. von der Konsole) gestartet werden, haben alle Privilegien; Programme, die über einen Netzwerkverbindung gestartet werden (Applets oder Java Web Start-Applikationen), haben erstmal keine Zugriffsprivilegien auf lokale Ressourcen. Die FirstSpirit-eigenen Module sind mit dem „e-Spirit AG“-Schlüssel signiert. Dieser ist wiederum Bestandteil der FirstSpirit-eigenen Security-Policy. Des Weiteren ist der Schlüssel von einer Root-Authority bestätigt, die wiederum dem Java Zertifikat Manager bekannt ist. Im Allgemeinen erhält man bei einer Applikation, die gegen die Sicherheitsrichtlinien verstößt, eine recht informative Meldung (Popup-Dialog). Alle auftretenden Security-Exceptions werden ggf. in der Java Console ausgeben.

Sollen die in einem Modul enthaltenen Archive und somit deren Klassen mit einem eigenen vertrauenswürdigen Schlüssel signiert werden, um Zugriff auf lokale Ressourcen bzw. sicherheitsrelevante Ressourcen zu erlangen, sind somit zur Ausführung der Web Start-Anwendung zwei vertrauenswürdige Schlüssel innerhalb des FirstSpirit SiteArchitects vorhanden. Nun sollte man annehmen, dass zwei „recht informative Meldungen“ (Popup-Dialog) beim ersten Starten des SiteArchitects angezeigt werden, wie es von Applets bekannt ist. Damit sollte die Möglichkeit bestehen, beide Zertifikate zu akzeptieren, d.h. als vertrauenswürdig einzustufen und in den Java Web Start-internen Zertifikat-Cache zu übernehmen. Laut JSR-56[1] ist dieses nicht der Fall. Es wird immer nur ein Security-Warning-Dialog angezeigt, dieses ist immer das vertrauenswürdige e-Spirit-Zertifikat.

Was bedeutet dieses nun für externe Komponenten/Module, die auf sicherheitsrelevante Funktionalitäten zugreifen müssen?

JAR-Archive bzw. die darin enthaltenen Klassen müssen signiert sein, der Signaturschlüssel muss im Java Web Start Zertifikat-Cache auf dem Client importiert werden (importierte Zertifikate überprüfen mittels: jcontrol unter dem Reiter Security.)

Wichtig Da die zuvor erläuterte Vorgehensweise bei einer Vielzahl von FirstSpirit-Nutzern auf unterschiedlichen Client-Rechnern nicht praktikabel ist, besteht in FirstSpirit Version 4.1 die komfortable Alternative -- die Verwendung des FirstSpirit eigenen Security-Managers sowie des Security-Classloaders. Die Zuweisung von Rechten auf Modulebene wird über den FirstSpirit ServerManager vorgenommen (siehe Verwendung des FirstSpirit Security-Managers/Classloaders). In der FirstSpirit Version 4.0 werden alle Module automatisiert durch den FirstSpirit Security-Manager als vertrauenswürdig eingestuft.

[1] JSR-56 [9] – JavaTM Network Launching Protocol (JNLP) Specification ("Specification")

© 2005 - 2019 e-Spirit AG | Alle Rechte vorbehalten. | FirstSpirit 2019-11 | Datenschutz | Impressum | Kontakt