thucgia > 22-09-15, 09:25 AM
bvchauthanh > 22-09-15, 02:35 PM
maidinhdan > 22-09-15, 04:27 PM
thucgia > 22-09-15, 04:56 PM
(22-09-15, 04:27 PM)maidinhdan Đã viết: Bạn thucgia và bạn bvchauthanh thân mến!
Bảo vệ table là đều em rất mong mỏi từ khi biết về Access cho đến nay, nhưng đã thử rất nhiều cách, xin liệt kê như sau:
1. Đặt Pass cho table: (phần này có thể bẻ khó@ dù pass ngắn hay dài...cho nên nó chỉ ngăn những người bình thường thôi.
=> Không được
2. Mã hóa table: Đây cũng là 1 phương pháp hay, nhưng cũng câu nói phía trên: Có thể bị bẻ khó@, ngoại trừ ta chuyển thành file *.MDE, nhưng vẫn còn 1 vấn đề đó là, khi mã hóa Table ta chỉ có thể Mã hóa table tiếng việt không dấu thôi, nếu giải mã thì những dòng ta viết tiếng việt sẽ mất đi vài dấu.
=> Không được
3. Dấu file Back End trong file nén ( file nén có pass): => Cũng giống như ý 2
.....
Dù có liệt kê thêm nửa thì kinh nghiệm của bản thân cho ra kết luận 1 câu là:
* Bảo vệ table là điều không thể, ngay cả pass VBA... ( tính đến thời điển mình trả lời các bạn, chứ còn cao thủ khác chưa biết thế nào)
* Nói chung ta chỉ nên dùng Access cho những gì nho nhỏ, không đòi hỏi tính bảo mật, và chủ yếu để ngăn người bình thường vào thôi.
Thân mến!
tranthanhan1962 > 22-09-15, 06:18 PM
(22-09-15, 09:25 AM)thucgia Đã viết: Tôi có một file access, có một table nguoi_dung=id,ten,email,level....dùng để phân quyền, làm sao bảo vệ được table này khỏi sự dòm ngó của các người dùng trong mạng lan?Nếu bạn chưa ẩn table (attribute = hidden) và CSDL của bạn vẫn còn là mdb thì người ta vẫn có thể import table của bạn vào cơ sở dữ liệu của họ. Ngay cả bạn làm tất cả những gì có thể trên cơ sở dữ liệu bạn vẫn có thể bị lộ. Đôi khi chỗ bị rò rỉ không từ chỗ bạn nghĩ. Nếu tôi cài trên máy của bạn một công cụ ghi lại hoạt động màn hình, hoặc cao thủ hơn dùng camera quay phim màn hình của bạn, hoặc sử dụng teamviewer v.v và v.v... thì danh sách của bạn cũng sẽ bị lộ
thk for help.
ps: Tui đã làm như sau
1.split thành hai file : 1 là front end và 1 là back end
2. Cài pass cho back end
3. Trong front end xóa table, tiến hành relink lại vào back end, khi relink vào back end nó hỏi pass kỹ lưỡng lém
4. Trong front end ngăn shift, ngăn full menu, ngăn F11
Tưởng thế là an toàn vậy và mới đây có một cao thủ họ biết tất cả danh sách user trong bảng người dùng của tui mới tức ghê chứ. help, help help
Noname > 22-09-15, 06:38 PM
(22-09-15, 04:27 PM)maidinhdan Đã viết: Bạn thucgia và bạn bvchauthanh thân mến!Mình ủng hộ giải pháp 2, đó là cách cả thế giới đang làm với table User. Nhưng chỉ mã hóa mỗi password thôi
Bảo vệ table là đều em rất mong mỏi từ khi biết về Access cho đến nay, nhưng đã thử rất nhiều cách, xin liệt kê như sau:
1. Đặt Pass cho table: (phần này có thể bẻ khó@ dù pass ngắn hay dài...cho nên nó chỉ ngăn những người bình thường thôi.
=> Không được
2. Mã hóa table: Đây cũng là 1 phương pháp hay, nhưng cũng câu nói phía trên: Có thể bị bẻ khó@, ngoại trừ ta chuyển thành file *.MDE, nhưng vẫn còn 1 vấn đề đó là, khi mã hóa Table ta chỉ có thể Mã hóa table tiếng việt không dấu thôi, nếu giải mã thì những dòng ta viết tiếng việt sẽ mất đi vài dấu.
=> Không được
3. Dấu file Back End trong file nén ( file nén có pass): => Cũng giống như ý 2
.....
Dù có liệt kê thêm nửa thì kinh nghiệm của bản thân cho ra kết luận 1 câu là:
* Bảo vệ table là điều không thể, ngay cả pass VBA... ( tính đến thời điển mình trả lời các bạn, chứ còn cao thủ khác chưa biết thế nào)
* Nói chung ta chỉ nên dùng Access cho những gì nho nhỏ, không đòi hỏi tính bảo mật, và chủ yếu để ngăn người bình thường vào thôi.
Thân mến!
maidinhdan > 22-09-15, 07:00 PM
(22-09-15, 06:38 PM)Noname Đã viết:(22-09-15, 04:27 PM)maidinhdan Đã viết: 2. Mã hóa table: Đây cũng là 1 phương pháp hay, nhưng cũng câu nói phía trên: Có thể bị bẻ khó@, ngoại trừ ta chuyển thành file *.MDE, nhưng vẫn còn 1 vấn đề đó là, khi mã hóa Table ta chỉ có thể Mã hóa table tiếng việt không dấu thôi, nếu giải mã thì những dòng ta viết tiếng việt sẽ mất đi vài dấu.Mình ủng hộ giải pháp 2, ........Nhưng chỉ mã hóa mỗi password thôi
=> Không được
Thân mến!
thucgia > 22-09-15, 07:18 PM
(22-09-15, 06:18 PM)tranthanhan1962 Đã viết:(22-09-15, 09:25 AM)thucgia Đã viết: Tôi có một file access, có một table nguoi_dung=id,ten,email,level....dùng để phân quyền, làm sao bảo vệ được table này khỏi sự dòm ngó của các người dùng trong mạng lan?Nếu bạn chưa ẩn table (attribute = hidden) và CSDL của bạn vẫn còn là mdb thì người ta vẫn có thể import table của bạn vào cơ sở dữ liệu của họ. Ngay cả bạn làm tất cả những gì có thể trên cơ sở dữ liệu bạn vẫn có thể bị lộ. Đôi khi chỗ bị rò rỉ không từ chỗ bạn nghĩ. Nếu tôi cài trên máy của bạn một công cụ ghi lại hoạt động màn hình, hoặc cao thủ hơn dùng camera quay phim màn hình của bạn, hoặc sử dụng teamviewer v.v và v.v... thì danh sách của bạn cũng sẽ bị lộ
thk for help.
ps: Tui đã làm như sau
1.split thành hai file : 1 là front end và 1 là back end
2. Cài pass cho back end
3. Trong front end xóa table, tiến hành relink lại vào back end, khi relink vào back end nó hỏi pass kỹ lưỡng lém
4. Trong front end ngăn shift, ngăn full menu, ngăn F11
Tưởng thế là an toàn vậy và mới đây có một cao thủ họ biết tất cả danh sách user trong bảng người dùng của tui mới tức ghê chứ. help, help help
thucgia > 22-09-15, 07:22 PM
(22-09-15, 06:38 PM)Noname Đã viết:Thay vì dùng md5 thì mình dùng set format cho field pass là password thì có an toàn không anh Noname?(22-09-15, 04:27 PM)maidinhdan Đã viết: Bạn thucgia và bạn bvchauthanh thân mến!Mình ủng hộ giải pháp 2, đó là cách cả thế giới đang làm với table User. Nhưng chỉ mã hóa mỗi password thôi
Bảo vệ table là đều em rất mong mỏi từ khi biết về Access cho đến nay, nhưng đã thử rất nhiều cách, xin liệt kê như sau:
1. Đặt Pass cho table: (phần này có thể bẻ khó@ dù pass ngắn hay dài...cho nên nó chỉ ngăn những người bình thường thôi.
=> Không được
2. Mã hóa table: Đây cũng là 1 phương pháp hay, nhưng cũng câu nói phía trên: Có thể bị bẻ khó@, ngoại trừ ta chuyển thành file *.MDE, nhưng vẫn còn 1 vấn đề đó là, khi mã hóa Table ta chỉ có thể Mã hóa table tiếng việt không dấu thôi, nếu giải mã thì những dòng ta viết tiếng việt sẽ mất đi vài dấu.
=> Không được
3. Dấu file Back End trong file nén ( file nén có pass): => Cũng giống như ý 2
.....
Dù có liệt kê thêm nửa thì kinh nghiệm của bản thân cho ra kết luận 1 câu là:
* Bảo vệ table là điều không thể, ngay cả pass VBA... ( tính đến thời điển mình trả lời các bạn, chứ còn cao thủ khác chưa biết thế nào)
* Nói chung ta chỉ nên dùng Access cho những gì nho nhỏ, không đòi hỏi tính bảo mật, và chủ yếu để ngăn người bình thường vào thôi.
Thân mến!
Riêng với giải pháp 2, phần password ta chỉ cần mã hóa 1 chiều, nên không lo lắng việc giải mã không được.
Quy trình như sau:
1/Khi tạo mã
Nhập mật khẩu=> => Mã hóa (mật khẩu) =>lưu xuống table
2/ Khi login
Nhập mật khẩu=> mã hóa(mật khẩu đã nhập) => so sánh với mật khẩu đã mã hóa lưu trong table.
Thuật toán thường dùng nhất cho việc lưu mật mã là MD5, mọi người từ từ hiện thực nhé!
Việc còn lại là chống phá hoại chứ không lo chống bị xem mật mã nữa. Vì bản thân người quản trị database cũng không biết mã là gì.
Tìm thấy 1 file MD5 cho VBA, chưa thử nên post cho mọi người tham khảo.
http://www.di-mgt.com.au/src/basMD5.bas.html
Noname > 22-09-15, 07:46 PM
(22-09-15, 07:22 PM)thucgia Đã viết: Thay vì dùng md5 thì mình dùng set format cho field pass là password thì có an toàn không anh Noname?