Bạn nên bắt đầu thực thi bảo mật ở mức chi tiết nhất càng sớm càng tốt. Vai trò giúp đỡ trong vấn đề này - cho phép mọi người truy cập vào một số bảng cùng một lúc không phải là một cơn ác mộng.
Tài khoản duy nhất cho mọi người là một nguồn câu hỏi tuyệt vời ở đây và những nơi khác - "bản ghi x đã bị xóa, làm cách nào để biết ai đã làm điều đó?" - câu trả lời là bạn không thể - không có tài khoản cá nhân và kiểm toán .
Bằng cách "kiểm toán" Tôi có nghĩa là trong khi tất cả đều có tài khoản cho tất cả mọi người, điều đó không có nghĩa là bạn có bảo mật thực sự. Nếu, giả sử, một bản ghi trong bảng HR bị xóa, tất cả những gì bạn có thể nói là ai đó có quyền truy cập vào bảng HR đã làm điều đó - đó là x số người.
Bạn cần kích hoạt trong hệ thống của mình để ghi lại các hành động để có thể theo dõi cấp độ cá nhân đã thực hiện hành động X (trừ khi bạn có RDBMS như Oracle nơi điều này có thể được thực hiện tự động).
Trong mọi trường hợp, bạn phải luôn đảm bảo an ninh của mình càng chi tiết càng sớm càng tốt - cung cấp cho mọi người quyền truy cập vào các bảng chỉ trên cơ sở "cần biết". Và, luôn bao gồm dấu thời gian cho các hành động đối với các bảng - mọi người thường đưa id của họ cho người khác - nếu bạn có thể nói, "Jimmy, bạn là người duy nhất trong văn phòng lúc 17:49 ..." - một lần nữa, đó không phải là sắt, chỉ là một mũi tên khác trong run rẩy của bạn.
Có lẽ nếu bạn đã cho chúng tôi RDBMS của bạn, bạn có thể nhận được lời khuyên cụ thể hơn / phù hợp hơn với tình huống của bạn không?