Conectorii și drepturile pe care le cer
Un conector citește catalogul pe care instrumentul dvs. de copii de siguranță îl ține deja și restaurează un eșantion în spațiul temporar; niciun conector nu scrie într-o sursă, iar o scriere este refuzată înainte de a pleca. Fiecare conector are o notă — ce citește, în ce mod și cu ce drepturi — pe care o confirmați în aplicație înainte de prima citire a sursei; aceeași notă este mai jos, cu versiunile instrumentului pe care a fost testat. În versiunea 1.0.0 conectorii citesc pe Linux și pe macOS; pe Windows urmează într-o versiune ulterioară.
Fișiere pe un disc local
Citește un director de pe un disc local: listează arborele — până la 64 de niveluri și 200.000 de intrări — și deschide doar fișierele din eșantion, fără a urma legăturile simbolice. Nu are nevoie de date de acces: citește cu drepturile contului cu care rulează aplicația, și doar directorul pe care l-ați numit.
Cele mai mici drepturi: un cont, o listă de drepturi sau o montare doar pentru citire. Citirea poate actualiza data ultimului acces al unui fișier, acolo unde sistemul nu o împiedică; aplicația nu scrie nimic.
Fișiere pe o partajare de rețea montată
O partajare de rețea este citită prin același conector ca un disc local, după ce sistemul a montat-o: aplicația nu se conectează ea însăși la server, iar montarea rămâne a sistemului. Numiți directorul montat ca sursă; o cale UNC (\\server\partajare) este refuzată, pentru că ar duce la o gazdă pe care nu ați declarat-o.
Cele mai mici drepturi: montați partajarea doar pentru citire (-o ro) sau cu un cont care doar citește. Sistemul poate actualiza data ultimului acces al unui fișier la citire, dacă montarea o permite.
Fișiere pe o gazdă prin SSH (SFTP)
Citește un director de pe o gazdă prin SFTP: listare și citire de fișiere, nimic altceva — nicio scriere, redenumire sau ștergere nu este trimisă vreodată. Datele de acces — o cheie cu fraza ei sau o parolă — ajung doar la procesul conectorilor. Cheia gazdei se acceptă la prima conectare, după amprenta ei, iar o cheie schimbată oprește conectarea.
Cele mai mici drepturi: pe gazdă, subsistemul SFTP doar pentru citire al OpenSSH (ForceCommand internal-sftp -R într-un bloc Match, cu ChrootDirectory și fără redirecționare de porturi) sau un cont cu drepturi doar de citire. Testat cu serverul SFTP al OpenSSH 9.9; alte servere nu au fost verificate.
restic
Rulează restic de pe calculatorul dvs. doar cu --no-lock și --no-cache și îi citește răspunsurile JSON: listează instantaneele și fișierele lor, citește configurația depozitului și restaurează eșantionul în spațiul temporar; nu scrie în depozit și nu lasă nimic în cache. Parola depozitului este dată programului restic pe intrarea standard, doar pe durata citirii. În versiunea 1.0.0 este acceptat depozitul local; depozitele prin SFTP, REST și S3 urmează.
restic nu are o cheie doar pentru citire: orice parolă deschide tot depozitul. Cele mai mici drepturi se dau de aceea pe stocarea pe care stă depozitul — o montare sau drepturi doar pentru citire pe un depozit local, un cont SFTP doar pentru citire, o cheie S3 doar cu drepturile de listare și de citire — care fac o scriere să eșueze chiar și cu parola. Testat cu restic 0.18 și 0.19; o versiune de la 0.20 încolo este refuzată până la o versiune a aplicației testată pe ea.
BorgBackup
Rulează BorgBackup 1.x de pe calculatorul dvs. cu --bypass-lock: listează arhivele și fișierele lor și extrage eșantionul în spațiul temporar; nu rulează niciodată check sau info, care ar scrie în depozit sau în cache. Fraza de acces este dată programului borg printr-un descriptor de fișier, doar pe durata citirii, iar directoarele de lucru ale lui Borg stau în spațiul temporar. În versiunea 1.0.0 este acceptat depozitul local; depozitele prin SSH urmează.
Fraza de acces a unui depozit Borg descifrează toate arhivele și nu are o formă doar pentru citire, iar Borg poate scrie în depozit după o operație întreruptă, chiar și cu --bypass-lock. Cele mai mici drepturi se dau de aceea pe stocarea pe care stă depozitul: o montare sau drepturi doar pentru citire, care fac orice scriere să eșueze; un depozit local este citit doar dacă nu are o operație întreruptă în urmă. Testat cu BorgBackup 1.2 și 1.4; Borg 2 este refuzat.
Kopia
Conectează Kopia la depozit doar pentru citire (--readonly) și confirmă modul doar pentru citire înainte de orice citire: listează instantaneele tuturor utilizatorilor și gazdelor, citește cuprinsul unui director și restaurează eșantionul. Configurația, jurnalele și cache-ul stau în spațiul temporar; parola nu este păstrată în seiful de chei al sistemului și este dată programului kopia doar pe durata citirii.
Parola depozitului deschide tot depozitul și nu are o formă doar pentru citire. Cele mai mici drepturi: directorul depozitului fără drept de scriere pentru contul care citește — o montare, o listă de drepturi sau permisiuni doar pentru citire — și un depozit care poartă fișierul .shards, creat cu Kopia 0.9 sau mai nou; un depozit mai vechi, în care Kopia ar scrie acel fișier, este refuzat. Testat cu Kopia 0.22 și 0.23; o versiune de la 0.24 încolo este refuzată până la o versiune a aplicației testată pe ea.
Depozite compatibile S3
Citește un bucket compatibil S3 doar prin cereri GET și HEAD: lista obiectelor și a versiunilor lor, starea protecției la scriere (Object Lock) și eșantionul, prin cereri pe intervale de octeți. O listare este o fotografie a prefixului: dacă prefixul se schimbă între listare și citire, citirea este refuzată și listarea se reface.
Cele mai mici drepturi: o cheie doar pentru citire, a cărei politică acordă s3:ListBucket, s3:ListBucketVersions și s3:GetBucketObjectLockConfiguration pe bucket și s3:GetObject, s3:GetObjectVersion, s3:GetObjectRetention și s3:GetObjectLegalHold pe obiecte — și nimic altceva; kms:Decrypt doar pentru obiectele cifrate cu o cheie KMS. Conexiunea este doar prin HTTPS.
Cloudflare R2
Cloudflare R2 nu face parte din versiunea 1.0.0. Conectorul citește un bucket R2 prin API-ul lui compatibil S3, doar prin cereri GET și HEAD: lista obiectelor și eșantionul. Regulile de blocare ale bucketului nu sunt citite, așa că protecția la scriere a copiilor rămâne nedeclarată.
Cele mai mici drepturi: un token R2 cu dreptul „Object Read only”, limitat la bucket. Niciun token al API-ului Cloudflare nu este cerut.
Copii de baze de date PostgreSQL
Citește copiile de baze de date PostgreSQL — pg_dump în format personalizat, director, tar sau simplu, și gzip — și copiile de bază (pg_basebackup, cu backup_manifest), dintr-un director de pe disc: doar antetul și cuprinsul lor, ca octeți, fără a executa nimic din fișier. Un test de bază de date încarcă copia într-un motor temporar PostgreSQL inclus în aplicație și rulează interogările pe care le-ați numit.
Nu are nevoie de date de acces: drepturile sunt cele ale directorului citit — un cont, o listă de drepturi sau o montare doar pentru citire. Formate: versiunile de arhivă ale pg_dump de la PostgreSQL 10 la 19 și manifestele în versiunile 1 și 2.
Copii de baze de date MySQL și MariaDB
Citește copiile de baze de date MySQL sau MariaDB (mysqldump, mariadb-dump) și copiile Percona XtraBackup sau MariaDB Backup dintr-un director: doar comentariile de antet și fișierele de control, fără a executa nimic din fișier. O copie scrisă cu --compact sau --skip-comments nu are antet: rămân doar datele despre fișierul în sine. Un test de bază de date încarcă copia într-un container pornit prin Docker sau Podman de pe calculatorul dvs., după acordul dvs. pentru imagine; fără un motor de containere, testul nu este disponibil.
Nu are nevoie de date de acces: drepturile sunt cele ale directorului citit. Formate: antetele mysqldump și mariadb-dump, fișierele de control ale XtraBackup 8.4 și ale MariaDB Backup de la 10.11 la 12.3.
Copii de siguranță în formatul propriu al SQL Server
Citește, dintr-un director, copiile de siguranță în formatul propriu al SQL Server, doar după mărime și după semnătura formatului; nimic altceva nu este interpretat. Testul de bază de date pentru SQL Server nu este disponibil în versiunea 1.0.0.
Nu are nevoie de date de acces: drepturile sunt cele ale directorului citit.
Windows Server Backup
Windows Server Backup nu face parte din versiunea 1.0.0. Conectorul citește seturile de copii prin Get-WBBackupSet, local pe server sau prin WinRM pe HTTPS, cu șabloane PowerShell fixe; nu rulează niciodată o recuperare către locurile originale.
Cele mai mici drepturi: Windows Server Backup nu documentează un rol doar pentru citire, iar un cont din grupul Backup Operators poate și să facă, și să restaureze copii; nota conectorului spune asta înainte de prima conectare.