Serverseitige Verschluesselung optional machen
Der S3-Treiber setzte bei jedem PutObject fest ServerSideEncryption: 'AES256'. Das mitgelieferte MinIO laeuft ohne KMS und lehnt das mit "NotImplemented" ab - es liess sich kein einziges Dokument ablegen. Wer der INSTALLATION.md folgte, landete zwangslaeufig dort; es war kein Konfigurationsfehler des Betreibers, sondern der Auslieferungszustand. Gebraucht wird die Zeile ohnehin nicht mehr. Seit v1.11.0 verschluesselt die Anwendung jede Datei selbst, bevor sie den Server verlaesst. Eine zweite Lage durch den Anbieter schuetzt vor nichts, was der eigene Umschlag nicht schon abdeckt. Jetzt steuert S3_SSE, ob der Kopf mitgeht. Leer bedeutet aus - auch eine Zeile mit Leerzeichen, sonst schickte eine leergelassene .env-Zeile einen leeren Kopf und der Anbieter antwortete mit einem Fehler, den niemand versteht. Im Kommentar von v1.11.0 stand, die serverseitige Verschluesselung "kostet nichts". Das war falsch: Auf MinIO ohne KMS kostete sie die gesamte Funktion. Der Satz ist korrigiert. Aufgefallen ist das erst im Betrieb, und der Grund ist derselbe wie beim Ausloeser: In der Entwicklung laeuft der Dateitreiber, der S3-Pfad wurde von keinem Test ausgefuehrt. Deshalb pruefen die neuen Tests den Befehl ab, bevor er das Netz sieht - was hineingeschrieben wird, ist jetzt belegt, nicht angenommen. Gegen drei Mutationen geprueft: SSE wieder fest verdrahtet, leere Angabe nicht abgefangen, Inhalt unverschluesselt - jede wird rot. Refs #42
This commit is contained in:
@@ -163,6 +163,26 @@ export const env = {
|
||||
bucket: pflicht('S3_BUCKET'),
|
||||
accessKeyId: pflicht('S3_ACCESS_KEY_ID'),
|
||||
secretAccessKey: pflicht('S3_SECRET_ACCESS_KEY'),
|
||||
|
||||
/**
|
||||
* Serverseitige Verschluesselung - nur, wenn ausdruecklich gewuenscht.
|
||||
*
|
||||
* Frueher stand im Treiber fest ServerSideEncryption: 'AES256'. Das
|
||||
* mitgelieferte MinIO laeuft ohne KMS und lehnt das mit
|
||||
* "NotImplemented" ab: Es liess sich kein einziges Dokument ablegen,
|
||||
* und wer der INSTALLATION.md folgte, landete zwangslaeufig dort.
|
||||
*
|
||||
* Gebraucht wird sie ohnehin nicht mehr. Seit v1.11.0 verschluesselt
|
||||
* die Anwendung jede Datei selbst, bevor sie den Server verlaesst
|
||||
* (src/lib/speicher/umschlag.ts). Serverseitige Verschluesselung
|
||||
* schuetzt vor nichts, was der eigene Umschlag nicht schon abdeckt -
|
||||
* sie ist hoechstens eine zweite Lage fuer Anbieter, die sie
|
||||
* anbieten.
|
||||
*
|
||||
* Leer bedeutet aus. Wer sie will, setzt S3_SSE=AES256 oder den Wert,
|
||||
* den sein Anbieter erwartet.
|
||||
*/
|
||||
serverseitigeVerschluesselung: process.env.S3_SSE?.trim() || null,
|
||||
}
|
||||
},
|
||||
|
||||
|
||||
Reference in New Issue
Block a user