viragomann
Goto Top

S3 Objektspeicher mit Datenverschlüsselung einbinden

Hallo,

ich suche nach einer geeigneten Möglichkeit, einen S3 Objektspeicher mit Datenverschlüsselung im Betriebssystem einzubinden.

Die Herausforderung:
Wir betreiben Webapplikationen, die auch ein Dokumentmanagement bereitstellen.
Diese sollen nun in die Cloud verlagert werden und als Speicher für die DM-Daten soll ein S3 Objektspeicher des Cloud-Anbieters genutzt werden.
Der Cloud-Anbieter ist zwar ein europäischer und das Rechenzentrum ist ebenfalls im Inland beheimatet, dennoch sollen oder müssen die abgelegten Daten verschlüsselt werden.
Hier dachte ich an eine clientseitige Verschlüsselung, also auf unseren Servern (VMs), so dass der Provider mit dem Schlüssel nichts zu tun hat.

Meine Frage ist jetzt, wie ich den Datenspeicher im Betriebssystem einbinde, damit Daten, die darauf gespeichert werden, automatisch verschlüsselt und Daten, die gelesen werden, automatisch entschlüsselt werden.
Die Betriebssysteme sind Linux und Windows, jedoch verwenden beide unterschiedliche Daten. Es können also unterschiedliche Verschlüsselungssystem zum Einsatz kommen.

Ich stelle mir vor, dass das soweit transparent ablaufen sollte, so dass ich im Dateibrowser des Betriebssystems die Daten ganz normal sehen und verwenden kann, das ist aber nicht Bedingung. Jedoch sollten sie für die Webapplikationen transparent vorliegen.

Hat hier jemand Erfahrung damit oder kann jemand Tipps für die richtigen Werkzeuge geben?

Ich weiß, dass es für beide Systeme Verschlüsselungen für Volumes gibt, habe diese bislang jedoch nicht verwendet und weiß nicht, ob sich diese auch für einen S3 Objektspeicher verwenden lassen.

Grüße

Content-Key: 43296415885

Url: https://administrator.de/contentid/43296415885

Printed on: June 22, 2024 at 23:06 o'clock

Member: C.R.S.
C.R.S. Apr 05, 2024 at 11:49:48 (UTC)
Goto Top
Hallo,

Blob-Storage sollte man meines Erachtens auf Anwendungsebene implementieren. Zur Verschlüsselung siehe dann z.B. "Amazon S3 Encryption Client".

Virtuelle Dateisysteme, fuse-Treiber etc. werden nicht nur von Anfang an unnötige Performance-Einbußen bedeuten, sondern machen ein horizontales Skalieren der Anwendung praktisch unmöglich.

Grüße
Richard
Member: flo72it
flo72it Apr 05, 2024 at 15:19:57 (UTC)
Goto Top
Moin,

JuiceFS (https://juicefs.com/) ist ggf. das was du suchst. Die Performance ist technologiebedingt okay, erwarte hier halt keine Wunder.

Viele Grüße, Flo
Member: viragomann
viragomann Apr 08, 2024 at 09:47:22 (UTC)
Goto Top
Hallo,

schönen Dank mal für die Antworten.

Was ich nicht erwähnt hatte, neben der Anwendung soll auch noch ein Elastic Search über den Datenspeicher laufen und die Files indizieren. Das könnte ggf. doch höhere Ansprüche an die Performance bedeuten.

Die Applikation selbst speichert die Dokumente einmal ab. Abgerufen werden sie dann nur gelegentlich, erneuert äußerst selten bis gar nicht.

Die eine Anwendung ist Nextcloud, also PHP, die ja eine Verschlüsselung implementiert hätte. Allerdings weiß ich nicht, ob ich dieser trauen kann. Die andere Anwendung ist eine Eigenentwicklung auf ASP.Net Basis.

JuiceFS (https://juicefs.com/) ist ggf. das was du suchst.

Danke. Ich werde mir das mal ansehen.

Grüße
Member: flo72it
flo72it Apr 13, 2024 at 18:49:09 (UTC)
Goto Top
Ahoi,

wenn du verschiedene Applikationen einsetzt und einen object store dann müssen entweder alle Applikationen die Ver-/Entschlüsselung können oder du setzt ein Dateisystem ein (wie bspw. JuiceFS), welches den Job übernimmt.

Was du da vorhast klingt nicht besonders sinnvoll - das würde ich nochmal überdenken.

Viele Grüße, Flo
Member: viragomann
viragomann Apr 15, 2024 at 14:02:37 (UTC)
Goto Top
Hi!

Was du da vorhast klingt nicht besonders sinnvoll - das würde ich nochmal überdenken.

So hatte ich mir die schöne neue Object Storage Welt vorgestellt.
Ich habe es aber infolge eurer Antworten und weiterer Recherchen nochmals überdacht. Das hier war ja erstmal eine Anfrage und Teil meiner Recherche, wie man so etwas anbindet.
Auch andere gefundene Artikel zum Thema liefen darauf hinaus, dass die Anwendungen selbst den Storage ansprechen, die Files verwalten und ver- und entschlüsseln sollten.

Es geht hier um zwei Speicher:
A: Daten werden von eigenentwickelter ASP.Net Anwendung genutzt. Aktuell gut 500 k Files, 600 GB
B: Daten werden von Nextcloud genutzt. Elastic Search ist in Nextlcoud eingebunden. Aktuell 0 Files

Für A möchte ich es mit JuiceFS versuchen. Der Storage sollte in Zukunft eher runter skaliert werden.
Funktioniert das nicht in brauchbarer Weise, müssen unsere Entwickler eben Hand anlegen und den Storage direkt einbinden.

Für B soll der Storage direkt in Nextcloud eingebunden werden. Auch die Verschlüsselung soll in Nextcloud passieren.
Elastic Search läuft auch über Nextcloud. Daher hoffe ich, dass das mit der Verschlüsselung klappt.
Das möchte ich als Nächstes mal einrichten und testen.

VG