cloudnative-pg / cloudnative-pg/plugin-barman-cloud

[Request] - support encrypt files before pushing to object store

Offen
#911 3 Kommentare 5 Reaktionen 0 zugewiesene Personen Auf GitHub ansehen
enhancement
Vorherrschende Sprache
Go
Sterne
191
Forks
72
Ø Merge
2 T. 21 Std.
Gemergte PRs (30 T.)
21

Beschreibung

As best as I can tell, the only [options for tuning encryption](https://pkg.go.dev/github.com/cloudnative-pg/barman-cloud/pkg/api#EncryptionType) are 'passed through' to the underlying `s3` (or compatible) API calls.

If it turns out that I'm wrong on that one, please let me know!

My question/request: allow use of symmetric encryption _before_ the files leave the host and are sent off to the object store.

I think this could be as straight forward as passing in a key/cypher to the [underlying archiver](https://github.com/cloudnative-pg/plugin-barman-cloud/blob/9be87b0d9c87c0df7f1f72caa33bf848fbc16582/internal/cnpgi/common/wal.go#L147)

The motivation: not all object stores support "BYO" key for bucket encryption and even if they do, you're still required to hand the sensitive key material off to the remote backend so that it can encrypt things for you. One of the simplest ways to address this is to encrypt objects before they're ever off the host.
Symmetric encryption is sufficient for "at rest, I need to know that I truly am the only person that can read it" needs.

Beitragsleitfaden

Beitragsleitfaden öffnen

Rechercherichtung

Beginnen Sie mit der EncryptionType API und internal/cnpgi/common/wal.go beim verlinkten archiver-Aufruf. Verfolgen Sie, wie WAL-Dateien an den archiver übergeben werden und wie Verschlüsselungsoptionen die object-store API erreichen; für den Abschluss sind eine definierte Konfiguration für symmetrische Verschlüsselung und ein verifizierter Schutz vor dem Upload erforderlich.

Vom Indexierungsmodell aus dem Issue-Text verfasst.

Bewertung

Tech-Stack
go
Bereich
cloud, security
Issue-Typ
Feature
Schwierigkeit
5/5
Geschätzter Aufwand
Über eine Woche
Aktivitätsstatus
Ruhig
Klarheit
Größtenteils klar
Anfängerfreundlichkeit
35/100

Neue Issues direkt in Ihr Postfach

Eine kurze Übersicht über anfängerfreundliche GitHub-Issues.