Hana Sicherheit – Neue Dimensionen
Bisher waren die Datenhaltungs- und die Anwendungsebene klar voneinander getrennt. In der Datenbank selbst waren lediglich die Datenbankadministratoren als Benutzer angelegt. Die Entwickler und Endanwender befanden sich im Abap-Stack, in dem auch die gesamte Berechtigungsvergabe erfolgte.
Neue Nutzerverteilung
Auch wenn im ERP-Nachfolger S/4 Hana ein Großteil der Anwendungen noch über den Abap-Stack abgebildet ist, so finden doch viele Entwicklungen bereits in der Hana-Datenbank selbst statt.
Das BW/4 Hana, offiziell nicht als Nachfolger von SAP BW deklariert, sondern als neues Produkt, ist bereits vollständig in der Hana-Datenbank abgebildet. Daher sind als Benutzer in der Hana-Datenbank nun nicht nur Datenbankadministratoren tätig, sondern auch Entwickler und zukünftig vermehrt auch Endanwender.
Security
Die Sicherheitsebenen beim Betrieb einer Hana-DB sind vielfältig, da sie DB- und Applikationssicherheit einschließen. Dies beginnt mit der Sicherheit der Server, auf denen Hana installiert ist.
Sie kann ausschließlich auf bestimmten Unix-Derivaten installiert werden. Im Dateisystem wird der SSFS (Secure Store in the File System) abgelegt, in dem u. a. die root keys für die Verschlüsselungen gespeichert werden.
Ebenso werden im Dateisystem die persistenten Daten gespeichert. Zu Wiederherstellungszwecken speichert Hana in regelmäßigen Abständen (Savepoints) Abbilder der DB auf der Festplatte des Hana-Servers (persistenter Speicher).
Standardmäßig werden die persistenten Daten unverschlüsselt auf die Festplatte geschrieben. Die Verschlüsselung muss explizit aktiviert werden.
Auch die Kommunikation erfolgt in der Standardinstallation unverschlüsselt. Zur Verschlüsselung der internen und externen Kommunikation kann das Transport-Layer-Security-(TLS-)/Secure-Sockets-Layer-(SSL-)Protokoll genutzt werden. Auch unverschlüsselte Verbindungen werden standardmäßig akzeptiert.
Für die Systemsicherheit ist die Konfiguration der sicherheitsrelevanten Systemparameter substanziell. Auch diese werden in Textdateien im Unix gespeichert. Vergleichbar mit den Systemparametern des Abap-Stack steuern diese Komponenten wie die Authentifizierung, die Verschlüsselung und die Protokollierung.
Zugriffsregelung
Hinsichtlich der eingerichteten Benutzer in der Hana-DB liegt die wesentliche Unterscheidung darin, ob sie lediglich Anwendungen ausführen sollen (Endanwender) oder einen Zugriff auf die Datenbank selbst benötigen (Admins, Entwickler, Prüfer).
Endanwender werden als Restricted User definiert. Dadurch ist gesichert, dass eine direkte Anmeldung an die Datenbank via ODBC/JDBC (z. B. mittels Eclipse) nicht möglich ist.
Außerdem müssen ihnen explizit Berechtigungen für ihre Anwendungen zugeordnet werden, während normalen Benutzerkonten standardmäßig bereits beim Anlegen eine Rolle mit den grundlegenden Berechtigungen zugeordnet wird (Katalogrolle Public).
Auch die Protokollierung ist unternehmensspezifisch zu konfigurieren. Werden im Abap-Stack eine Vielzahl aufbewahrungspflichtiger Protokolle automatisch erzeugt, so ist dies in der Hana-DB individuell einzurichten.
So muss z. B. die Protokollierung der Benutzerpflege und der Rollenzuordnung explizit aktiviert werden. Dies betrifft auch Änderungen an den Systemparametern und den Einstellungen zur Verschlüsselung.
Lediglich für Änderungen innerhalb des Repositories, also der Entwicklungsumgebung, werden automatisch Protokolle (Versionen) erzeugt.
Ein wesentlicher Punkt ist natürlich auch das Berechtigungskonzept. Dessen Funktionalität ist sehr transparent in der Hana-Datenbank abgebildet, sodass die Berechtigungen der Endanwender klar und strukturiert von denen der Administratoren und Entwickler getrennt werden können.
Zurück zu den Wurzeln?
Die Prüfung der Sicherheit einer Hana-DB ist aktuell für Prüfer noch eine kleine Herausforderung, da im Hana-Standard keine Tools zur Prüfung existieren – außer dem SQL-Editor. Hier heißt es „back to the roots“ durch Prüfungen direkt auf Tabellenebene.
Glücklicherweise ist zumindest das Einrichten der für Prüfer erforderlichen Berechtigungen erheblich einfacher als noch im Abap-Stack.