Online Magazine
Sandboxen: Wie man sie anwendet und was sie nützen

Eine Sandbox ist zum Ausprobieren da. Somit ist sie gerade für heikle Operationen im Unternehmen oder für Schulungen attraktiv. Besonders spannend sind herstellerübergreifende Lösungen.
von Stefan Oehrli

Das Prinzip einer Sandbox ist ziemlich einfach: Wie für Kinder der Sandkasten ist auch das technologische Äquivalent eine Umgebung zum Erproben und Ausprobieren. Dabei kann nichts passieren, da die Testumgebung nicht mit anderen operativen Systemen verbunden ist. Dies kann für verschiedene betriebliche Szenarien von Vorteil sein.
Sandboxen – Wofür?
Es gibt viele Ansätze, wo Sandbox-Umgebungen einer Datenbank oder angrenzender Systeme nützlich sein können. Zum Beispiel möchte man kurzfristig eine Labor-Umgebung für Prototypen auf die Beine stellen oder seine Mitarbeiter*innen schulen. Das soll natürlich nicht direkt auf der Produktivumgebung passieren, wo Fehler reale Auswirkungen haben, sondern auf einem möglichst gutem Abbild – der Sandbox.
Was wäre zum Beispiel, wenn eine Bank eine zentrale Authentifizierung und Autorisierung von Datenbankbenutzer*innen etablieren will?
Beispiel Authentifizierung und Autorisierung von Datenbankbenutzer*innen
Genau bei diesem Vorhaben haben wir kürzlich eine grössere Bank unterstützt. Bei dem Projekt war die Integration von verschiedenen Infrastrukturkomponenten wie Oracle Datenbank, MS Active Directory und Kerberos Authentifizierung, aber auch von Oracle-Tools wie Oracle Enterprise Manager Cloud Control entscheidend. Diese unterschiedlichen Komponenten korrekt zu integrieren, ist nicht ganz einfach. Insbesondere wenn dabei unternehmenskritische Systeme wie ein MS Active Directory involviert sind. Der Aufbau einer Sandbox-Umgebung ermöglichte es uns, verschiedene Arbeiten auszuführen, ohne den produktiven Betrieb zu stören. Dazu gehörten in diesem Fall folgende Tätigkeiten:
- Verifikation des Konzepts für die zentrale Authentifizierung von Oracle Datenbank Accounts
- Prüfen und Testen des Migrationsablaufes
- Entwickeln von Skripten und Tools für die Administration und den Betrieb
- Troubleshooting der Konfiguration insbesondere der verschiedenen Komponenten
- Verifikation von Betriebsabläufen
- Schulung der Administration
- Proof of Concept des ganzen Konzeptes
Diese Abläufe konnten wir dank der Sandbox ohne Störungen im normalen Betrieb erproben. Doch Sandboxen sind auch für andere Bereiche in einem Betrieb von Vorteil.
Beispiel Schulungen
Nehmen wir das Beispiel Mitarbeiter*innen-Schulungen: Gerade bei Schulungen ist es wichtig, dass die Teilnehmer zwar dem realen System «ausgesetzt» sind, sich darin aber austoben können, ohne Angst haben zu müssen, etwas kaputt zu machen.
Wir verwenden Sandbox-Umgebungen zum Beispiel für unsere wiederkehrenden Oracle-Schulungen. Dort geht es beispielsweise um das Thema Datenbanksicherheit und die Anwendungen Oracle Unified Directory, MS Active Directory sowie allenfalls Oracle Enterprise Manager Cloud Control. Diese lassen sich nicht einfach mal schnell in einer produktiven Umgebung ausprobieren. Mithilfe einer Sandbox-Umgebung können Mitarbeiter*innen in Form einer Schulung relativ einfach lernen, spezifische Abläufe und Konfigurationen zu prüfen, bevor sie diese in der Praxis ausführen. Dazu gehören unter anderem Folgende:
- Verifikation eines Datenbank Security Konzeptes
- Betriebliche Abläufe, z.B. zentrale Benutzerverwaltung, Security Konfigurationen
- Troubleshooting und Analysen von Integrationsproblemen, z.B.: Wieso funktioniert die Kerberos Authentifizierung nicht mit DB?
- Testen von neuen DB Features für zukünftige Erweiterungen eines Security Konzeptes, z.B. Verschlüsselung mit Transparent Data Encyrption (TDE), Schutz vor Admin-Zugriff mit Oracle Database Vault
- Testen der Integration verschiedener Infrastrukturkomponenten, z.B. DB Server mit MS Active Directory mit und ohne Oracle Unified Directory
In der folgenden Grafik sieht man das Beispiel einer Sandbox-Umgebung in der Oracle Cloud Infrastruktur. Der LAB Benutzer greift von überall her via Bastion Host auf seine Sandbox-Systeme zu, welche in einem geschützten privaten Netzwerk laufen. Der Zugriff kann sowohl via SSH, Guacamole Remote Desktop Console oder auch VPN erfolgen.
Für Schulungen ist es allerdings nicht nur wichtig, dass Mitarbeiter*innen Abläufe gefahrlos ausprobieren können. Es ist auch essenziell ...
- ... die Live-Umgebungen in ihrer vollen Komplexität abbilden und
- ... diese mit echten Daten befüllen zu können.
- ... vergleichbare Response-Zeiten wie im realen System zu haben.
- ... vollwertigen Remote-Zugriff von jedem Standort zu gewährleisten.
Um diese Vorteile sicherzustellen, ist eine herstellerübergreifende Sandbox nötig.
In sich geschlossene vs. herstellerübergreifende Sandbox-Umgebungen
Viele Hersteller von Schulungslösungen legen den Fokus auf eine einzelne Herstellerumgebung oder ein spezifisches Thema. Damit sind die Möglichkeiten, die diese Schulungen bieten, begrenzt. Beispielsweise ist eine Kombination aus Bastion Host, Oracle Datenbank Server, Windows Active Directory und ein Unified Directory Server aufgrund der Herstellergrenzen nicht auf Knopfdruck möglich. Dazu kommt, dass sich diese leere Systemumgebung nicht von allein füllt – besonders für Onboardings und periodische Weiterbildungen muss Hersteller-übergreifender Schulungscontent erstellt werden. Zuletzt scheitert ein vollwertiger Remote-Zugriff auf Test- und Schulungsumgebungen in vielen Fällen an der IT-Sicherheit.
Tatsächlich gibt es aber mittlerweile Sandbox-Umgebungen, die über einzelne Herstellerumgebungen hinausgehen und damit problemlos verschiedene IT-Umgebungen, Infrastrukturen und Software integrieren können. So erfassen sie die ganze Komplexität eines Live-Systems, das in der Realität fast immer verschiedene Anbieter und Software kombiniert.
Somit bietet eine herstellerübergreifende Sandbox die Möglichkeit zum Ausprobieren und ist gleichzeitig komplex, sicher und von überall her zugänglich.
Fazit: Herstellerübergreifende Sandboxen als Königsweg
Sandbox-Umgebungen bieten Vorteile für unterschiedliche Szenarien, die alle etwas gemeinsam haben: Man soll gefahrlos etwas ausprobieren können, ohne dass dies Auswirkungen auf das reale System hat – wie in einem Sandkasten eben.
Neben dem Testen heikler Operationen ist das auch für Schulungen ideal, weil die Teilnehmer*innen dann selbst mit Funktionen experimentieren können. Besonders interessant sind dabei herstellerübergreifende Sandboxen: Diese bilden die Live-Umgebungen in ihrer vollen Komplexität ab und lassen sich mit echten Daten befüllen. Sie ermöglichen vergleichbare Response-Zeiten wie im realen System und vollwertigen Remote-Zugriff von jedem Standort.
