• Giúp tôi bảo vệ table user
  • Giúp tôi bảo vệ table user

    thucgia > 22-09-15, 09:25 AM

    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?
    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
  • RE: Giúp tôi bảo vệ table user

    bvchauthanh > 22-09-15, 02:35 PM

    Góp ý nho nhỏ cho bạn là mình thử mã hóa user + pass đi, cho dù họ có xem được cũng chẳng biết là j (những bị xóa là bó tay). Ai có cách hay hơn chia sẽ nào
  • RE: Giúp tôi bảo vệ table user

    maidinhdan > 22-09-15, 04:27 PM

    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!
  • RE: Giúp tôi bảo vệ table user

    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!

    theo các bạn khi mình làm như qui trình trên , thậm chí hidden navigation pane luôn, làm sao tay kia đọc được bảng nguoi_dung của mình vậy.?
  • RE: Giúp tôi bảo vệ table user

    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?
    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
    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ộ
  • RE: Giúp tôi bảo vệ table user

    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!

    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!
    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

    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
  • RE: Giúp tôi bảo vệ table user

    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.
    => Không được
    Thân mến!
    Mình ủng hộ giải pháp 2, ........Nhưng chỉ mã hóa mỗi password thôi

    Thống nhất quan điểm này, như trên phân tích: 2. Mã hóa table: ......những dòng ta viết tiếng việt sẽ mất đi vài dấu.
  • RE: Giúp tôi bảo vệ table user

    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?
    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
    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ộ

    À ra thế từ một file access sẽ import được tất cả các object của mình về access của họ, cám ơn bạn.
    Tuy nhiên mình có kiểm tra thử thì không những file mdb mà cả file mde cũng cho import một cách dễ dàng, Quái chiêu!!!!
    Có cách nào chống import đối vối file mde khôing anh Dan.
    thk
  • RE: Giúp tôi bảo vệ table user

    thucgia > 22-09-15, 07:22 PM

    (22-09-15, 06:38 PM)Noname Đã viết:
    (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!
    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

    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
    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?
  • RE: Giúp tôi bảo vệ table user

    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?

    Set format là password chỉ là đổi...font của mật khẩu chứ không phải là mã hóa. Khi người ta "túm" được table user của mình chỉ cần chuyển thành kiểu text là thấy được.

    Còn MD5 hoặc giải pháp tương tự là băm nhỏ mật khẩu, chỉ có một chiều.
    Tức là chỉ có từ chuỗi A => encode MD5(A)=B
    Nhưng không có chiều ngược lại.

    Chỉ có 1 cách biết duy nhất là lợi dụng sức mạnh của máy tính và ...mò bằng cách thay thế từng từ vào và mã hóa cho tới khi tìm được chuỗi giống với chuỗi B.
    Trong giới h@cker, họ xây dựng một thư viện khổng lồ những từ ngữ thông dụng, được mã hóa thành chuỗi gì, vì thế, chỉ cần tìm được mã MD5, người mò có thể query ngược lại. Tuy nhiên thư viện này không bao gồm ký tự đặc biệt  (tuy vậy data chứa thư viện này cũng đã lên đến vài Terrabyte rồi) và cập nhật tới hôm nay cũng chỉ 11 ký tự. Vì vậy chuyên gia khuyên nên đặt password có ký tự đặc biệt.