Informationsschutz fĂĽr Engineering-Daten mit Eclipse EMF und CDO
Eclipse EMF dient einigen Engineering-Tools als grundlegendes Framework. Die Kombination mit der neuen CDO-Version erfĂĽllt auch die Anforderungen an den Schutz unternehmenswichtiger Daten.
- Andreas Graf
Viele Engineering-Werkzeuge basieren inzwischen auf der Tooling-Plattform Eclipse und verwenden fĂĽr die Implementierung ihrer Datenmodelle das Eclipse Modeling Framework (EMF), um das sich ein umfangreiches Ă–kosystem an Editoren, Transformatoren und Generatoren gebildet hat.
EMF speichert in der Standard-Konfiguration die Modelle in XML-Dateien im Projektverzeichnis ab. Dieses Vorgehen integriert sich zwar in das Konzept des "Eclipse Workspace", aber in einigen Szenarien sind andere Ansätze erforderlich. So fordern einige Unternehmen in ihren IT-Richtlinien für die Verwaltung unternehmenskritischer Dateien eine 3-Tier-Architektur mit einer Datenbank und einem Autorisierungskonzept zur Persistenz.
Bei Eclipse kĂĽmmern sich verschiedene Projekte um alternative Persistenzmechanismen fĂĽr EMF-Modelle. Eines der bekanntesten ist Eclipse CDO, das als Backend die unterschiedlichsten Datenbanken unterstĂĽtzt. In den aktuellsten Entwickler-Versionen (CDO 4.3) ist auch das Autorisierungskonzept deutlich erweitert worden, sodass es den unterschiedlichsten Anforderungen genĂĽgt.
Über den Security-Manager, der sich beim Start des CDO-Servers konfigurieren lässt, werden beim Zugriff auf das EMF-Modell feingranulare Rechte gemäß eines Rollenkonzepts überprüft. Über ein neues User-Interface können Benutzer, Rollen und Rechte angelegt und zugeordnet werden. Dabei lassen sich Zugriffe sehr detailliert durch logische Ausdrücke modellieren. Das Security-Modell ist konsequenterweise selbst wieder ein EMF-Modell.
Da CDO unter anderem mit der quelloffenen Datenbank H2 zusammenarbeitet, lassen sich einfach die erforderlichen Architekturen aufbauen. Für Entwicklung und lokalen Betrieb ist der Ressourcenbedarf dabei so gering, dass Client und Server nicht nur auf der gleichen Maschine laufen können – da H2 in Java implementiert ist, lässt es sich auch direkt in der gleichen JVM wie die Client-Anwendung starten.
Für echten Informationsschutz wählt man natürlich eine getrennte Hardware-Architektur – die flexible Konfiguration von CDO/H2 vereinfacht jedoch die Entwicklungsarbeit. ()