Hai lớp bảo vệ hai mối đe doạ khác nhau, không thay thế nhau.
- In-transit: bảo vệ dữ liệu khi đang đi trên đường — trình duyệt tới server, service tới service, app tới database. Cơ chế là TLS (HTTPS,
sslmode=requirekhi nối Postgres). Chống nghe lén và chống người đứng giữa sửa gói tin. - At-rest: bảo vệ dữ liệu khi nằm im trên đĩa — file DB, backup, snapshot, log. Cơ chế là disk/volume encryption của nhà cung cấp hoặc TDE của DB. Chống việc ai đó lấy được ổ đĩa, file backup hay snapshot.
Vẫn cần cả hai. TLS không giúp gì nếu bản backup .sql bị tải về từ một bucket cấu hình public. Ngược lại disk encryption không giúp gì nếu API trả dữ liệu qua HTTP thường.
Lưu ý: disk encryption của cloud là mặc định gần như miễn phí và trong suốt với ứng dụng — nghĩa là bất cứ ai query được DB vẫn đọc được dữ liệu rõ. Muốn chống cả trường hợp đó thì phải mã hoá ở mức trường trong ứng dụng, đó là bài toán khác.