GDPR và dữ liệu kiểm thử là cặp khái niệm mà nhiều nhóm phát triển gộp lại thành một câu hỏi duy nhất: có được dùng dữ liệu người thật trong môi trường thử hay không. Bài này không đưa ra kết luận pháp lý thay cho ai, nhưng sẽ chỉ ra vì sao thói quen sao chép dữ liệu thật vào môi trường thử lại rắc rối, và những nguyên tắc chung đang được áp dụng rộng rãi.
Dữ liệu nào được coi là dữ liệu cá nhân?
Phạm vi rộng hơn nhiều người tưởng. Họ tên, ngày sinh, số giấy tờ tùy thân, địa chỉ, số điện thoại và thư điện tử đều là dữ liệu cá nhân. Một địa chỉ giao hàng, một số tài khoản, hay thậm chí một mã thiết bị cũng có thể thuộc nhóm này nếu nó giúp phân biệt được một người cụ thể.
Với một bản ghi danh tính đầy đủ, bạn đang nắm gần như toàn bộ những gì cần để mô tả một con người. Vì vậy, trước khi đưa bản ghi như vậy vào bất kỳ hệ thống nào, câu hỏi đầu tiên nên là: dữ liệu này thật sự cần thiết cho mục đích hiện tại hay không.
Vì sao môi trường thử cũng phải cẩn thận?
Bởi vì môi trường thử thường không được bảo vệ như môi trường thật. Một bản sao cơ sở dữ liệu có thể nằm trên máy cá nhân của lập trình viên, trong ảnh chụp màn hình gửi cho đối tác, trong tệp đính kèm của báo cáo lỗi, hoặc trong một môi trường thử không đặt mật khẩu. Mỗi chỗ như vậy là một đường rò rỉ tiềm năng, và không ai trong nhóm biết được dữ liệu đã đi tới đâu.
Thói quen này còn vi phạm nguyên tắc mục đích. Dữ liệu được thu thập để phục vụ một việc cụ thể không đương nhiên được dùng cho việc khác. Những nguyên tắc chung vẫn được nhắc nhiều là: thu thập có mục đích rõ ràng, lấy càng ít càng tốt, giữ cho chính xác, chỉ lưu trong thời hạn cần thiết, bảo vệ tính toàn vẹn và bảo mật, và có người chịu trách nhiệm giải trình.
Không nguyên tắc nào trong số đó nói rằng môi trường thử được miễn trừ. Nếu dữ liệu thật nằm ở đó, nó vẫn là dữ liệu cá nhân.
Ẩn danh khác giả danh ở chỗ nào?
Giả danh là thay các thông tin nhận dạng trực tiếp bằng một mã, nhưng vẫn giữ một đường liên kết cho phép khôi phục lại danh tính gốc nếu có thêm dữ liệu tương ứng. Cách này giảm rủi ro khi dữ liệu bị nhìn thấy, nhưng chỉ an toàn chừng nào đường liên kết kia còn được giữ tách biệt và bảo vệ.
Ẩn danh là làm cho việc khôi phục trở nên không còn khả thi, kể cả với người nắm hệ thống. Nói cách khác, giả danh là một biện pháp bảo vệ, còn ẩn danh là một trạng thái khó đạt tới hơn nhiều.
Ranh giới giữa hai thứ này không cố định. Nó phụ thuộc vào việc còn tồn tại bao nhiêu thông tin bổ sung ở nơi khác có thể ghép lại để nhận ra một người. Vì vậy, khi ai đó nói dữ liệu này đã ẩn danh, câu hỏi tiếp theo nên là: ẩn danh trước những ai và bằng cách nào.
Xóa tên đã đủ chưa?
Chưa, và đây là hiểu lầm phổ biến nhất. Bỏ trường họ tên đi không khiến bản ghi trở thành vô danh, vì những trường còn lại vẫn có thể chỉ tới một người. Một ngày sinh cùng với một mã bưu chính và một giới tính đã thu hẹp phạm vi rất mạnh. Thêm số điện thoại hoặc một mã nhân viên thì gần như chắc chắn nhận ra được.
Nhóm trường như vậy được gọi là tổ hợp có khả năng nhận dạng lại. Từng trường riêng lẻ có thể trông vô hại, nhưng ghép lại thì chúng phục hồi được đúng danh tính mà bạn tưởng đã xóa. Đó là lý do nhiều nhóm chọn cách thay hẳn dữ liệu thật bằng dữ liệu tổng hợp ở môi trường thử, thay vì cố che bớt dữ liệu thật.
Dùng gì thay cho dữ liệu thật trong môi trường thử?
Lựa chọn rẻ và an toàn nhất là dữ liệu tổng hợp: bản ghi do thuật toán sinh ra, không lấy từ ai cả. Trình tạo dữ liệu danh tính và kiểm thử trực tuyến của trang này làm đúng việc đó — sinh họ tên, ngày sinh, số giấy tờ tùy thân, địa chỉ và số điện thoại theo định dạng của quốc gia bạn chọn, để biểu mẫu và kiểm thử tự động có dữ liệu đúng hình dạng mà không phải mượn thông tin của người thật.
Toàn bộ dữ liệu là tổng hợp và chỉ dùng cho kiểm thử phần mềm; nó không ứng với một người có thật, không dùng để mạo danh ai, và không thể dùng để vượt qua bất kỳ bước xác minh danh tính nào của tổ chức thật.
Nếu bạn cần dữ liệu có cấu trúc giống dữ liệu thật đến từng phân bố, hãy đọc thêm bài dữ liệu tổng hợp và dữ liệu ẩn danh để chọn đúng đường đi cho từng trường hợp.
Phần dành cho nhà phát triển
Việc cần làm sớm nhất là cắt đường dây giữa môi trường thật và môi trường thử. Nếu quy trình của bạn cho phép sao chép cơ sở dữ liệu thật xuống máy các thành viên, thì bất kỳ quy định nào ở trên cũng chỉ là hình thức.
Vài điểm nên chốt:
- Coi môi trường thử là môi trường có người ngoài nhìn vào: hạn chế quyền truy cập, và đừng dùng chung thông tin đăng nhập giữa các nhóm.
- Kiểm tra cả những chỗ ít ai để ý: nhật ký ghi giá trị trường, ảnh chụp màn hình trong báo cáo lỗi, tệp xuất gửi cho đối tác, và bản sao lưu tự động.
- Ghi lại nguồn gốc dữ liệu bằng một trường đánh dấu, để có thể lọc và xóa toàn bộ dữ liệu thử khi cần.
- Xác định thời hạn lưu cho dữ liệu thử và thực hiện việc dọn dẹp theo định kỳ, thay vì để nó tồn tại vô thời hạn.
- Đừng mô tả dữ liệu đã che bớt là ẩn danh trong tài liệu nội bộ nếu bạn không chứng minh được điều đó. Cách gọi chính xác giúp tránh quyết định sai về sau.
Một lưu ý quan trọng: những nguyên tắc trên là thông lệ chung, không phải lời khuyên pháp lý. Quy định cụ thể và cách áp dụng khác nhau theo nơi bạn hoạt động, nên nếu việc tuân thủ là yêu cầu bắt buộc, hãy để người có chuyên môn xem xét. Văn bản chính thức của quy định bảo vệ dữ liệu chung của Liên minh châu Âu có trên cơ sở dữ liệu pháp luật của Liên minh châu Âu.
Bước tiếp theo
Hãy thử tìm xem trong môi trường thử của bạn có bản ghi nào thật sự đến từ người dùng hay không, bắt đầu từ những tệp xuất và bản sao lưu, vì đó thường là nơi dữ liệu thật tồn tại lâu nhất. Nếu có, hãy thay chúng bằng dữ liệu tổng hợp sinh từ trình tạo dữ liệu danh tính, rồi ghi lại quy trình để lần sau không ai sao chép dữ liệu thật xuống nữa.