Bảo mật CSDL Access

Liên hệ QC

levanduyet

Hãy để gió cuốn đi.
Thành viên danh dự
Tham gia
30/5/06
Bài viết
1,798
Được thích
4,704
Giới tính
Nam
1. Bảo vệ mã lệnh VBA (Visual Basic for Application) bằng cách chọn mục Properties trên trình đơn Tools của cửa sổ soạn thảo Microsoft Visual Basic rồi chọn trang Protection trên hộp thoại Project Properties. Cuối cùng, chọn Lock project for viewing, kèm theo là mật khẩu bảo vệ. Với cách này, cấu trúc và dữ liệu các bảng (table) vẫn có thể được xem và sửa đổi.

2. Dùng chức năng Make MDE file để ngăn không cho sửa đổi mã lệnh, thiết kế biểu mẫu (form) và thiết kế báo biểu (report). Với cách này, cấu trúc và dữ liệu các bảng (table) vẫn có thể được lấy đi để chuyển vào tập tin .MDB khác mà xem và sửa đổi.

3. Dùng chức năng Encrypt / Decrypt database… để mã hóa CSDL, ngăn không cho các chương trình tiện ích hay xử lý văn bản giải mã nhưng vẫn có thể dùng Access để mở.

4. Dùng chức năng Set database password để quy định mật khẩu cho CSDL. Cách này hơi phiền nếu có một bảng trong CSDL khác liên kết (link) với nó. Nếu quên mật khẩu thì … khóc luôn chứ sao!

5. Thiết kế một biểu mẫu khởi động, trong đó yêu cầu cho biết tên và mật khẩu, dùng hộp thoại Startup (từ danh sách Display Form/Page) để quy định phải mở biểu mẫu này trước tiên mỗi lần mở CSDL. Nhờ cách này, ta có thể giấu luôn cửa sổ Database, nơi có thể xem và chọn các thành phần của CSDL để sửa chữa.

Trong những cách trên, cách thứ 5 vẫn có thể bị vượt qua bằng cách nhấn và giữ phím Shift trong lúc mở CSDL. Để khắc phục, ta có thể dùng Visual Basic gán trị False cho thuộc tính AllowBypassKey để vô hiệu hóa phím Shift khi mở CSDL.

Giả sử bạn có một CSDL tên dbLock.MDB. Mỗi lần người ta mở nó, bạn muốn biểu mẫu frmKhoiDong luôn được hiển thị trước tiên bằng cách xác định Display Form/Page là frmKhoiDong. Để thay đổi thuộc tính AllowBypassKey, bắt buộc phải mở CSDL, gán trị mới cho thuộc tính này, đóng CSDL lại thì lần mở sau mới có ép-phê. Bạn nhớ, cần khóa làm sao để người ta không mở được mà mình mở được, nghĩa là ta phải có chìa khóa để mở. Chìa ở đây chính là một biểu mẫu khác, chẳng hạn có tên là frmChiaKhoa.

Khi đã thay đổi thuộc tính AllowBypassKey được rồi, chắc chắn biểu mẫu frmKhoiDong được hiển thị khi mở CSDL. Cho nên ta đặt chìa khóa thông qua biểu mẫu này bằng cách vẽ một ô điều khiển nào đấy (miễn sao nó có thủ tục xử lý tình huống Click là được), chẳng hạn nhãn lblChiaKhoa, rồi đặt thuộc tính Visible là No và thêm dòng lệnh DoCmd.OpenForm “frmChiaKhoa” vào thủ tục xử lý tình huống Click. Bạn phải nhớ vị trí nhãn lblChiaKhoa để lôi chìa khóa ra nhé. Như vậy, vấn đề còn lại nằm ở biểu mẫu frmChiaKhoa.

Bạn mở cửa sổ soạn thảo Microsoft Visual Basic, chọn mục References… để bảo đảm Microsoft DAO xx.xx Object Library (trong đó, phiên bản xx.xx có thể là: 2.5 hoặc 3.51 hoặc 3.6 tùy theo phiên bản Access, dĩ nhiên nên chọn phiên bản mới nhất) đã được chọn trong danh sách Available References.

Hình vẽ dưới là biểu mẫu frmChiaKhoa cần thiết kế, bao gồm một ô văn bản txtPassword để nhận mật khẩu mà người cần mở khóa phải gõ vào, một nút lệnh cmdLock thực hiện việc khóa CSDL và một nút lệnh cmdUnlock thực hiện việc mở khóa CSDL. Xong, bạn gõ các thủ tục xử lý như đoạn mã 1. Trước khi quậy chuyện này trên một CSDL, bạn nên sao chép phòng hờ CSDL để tránh sự cố khóa được rồi nhưng không mở được (do bạn gõ nhầm các dòng lệnh).

Mã:
'Đoạn mã 1
'Hàm ChangeProperty thay đổi các thuộc tính của CSDL
Function ChangeProperty(strPropName, varPropType, varPropValue)
 Dim dbs As Database, prp As Property
 Const conPropNotFoundError = 3270
 Set dbs = CurrentDb
 On Error GoTo Change_XuLyLoi
 dbs.Properties(strPropName) = varPropValue
 ChangeProperty = True
Change_KetThuc:
 Exit Function
Change_XuLyLoi:
 'Thuộc tính không thấy
 If Err = conPropNotFoundError Then  
 Set prp = dbs.CreateProperty(strPropName, _
 varPropType, varPropValue)
 dbs.Properties.Append prp
 Resume Next
 Else
 'Không biết lỗi gì
 ChangeProperty = False
 Resume Change_KetThuc
 End If
End Function
'Xử lý tình huống chọn nút [Khóa database]
Private Sub cmdLock_Click()
 ‘Biểu mẫu này được nạp trước
 ChangeProperty "StartupForm", dbText, "frmKhoiDong"
 ChangeProperty "StartupShowDBWindow", dbBoolean, False
 ChangeProperty "StartupShowStatusBar", dbBoolean, False
 ChangeProperty "AllowBuiltinToolbars", dbBoolean, False
 ChangeProperty "AllowFullMenus", dbBoolean, False
 ChangeProperty "AllowBreakIntoCode", dbBoolean, False
 ChangeProperty "AllowSpecialKeys", dbBoolean, False

 ‘Không cho xài phím Shift để bỏ qua biểu mẫu frmKhoiDong
 ChangeProperty "AllowBypassKey", dbBoolean, False

 MsgBox "Cơ sở dữ liệu đã được khóa! Đóng cơ sở dữ liệu, _
 rồi mở lại mới có ép-phê.", vbOKOnly, "eChip Security"

 cmdExit.SetFocus
 cmdUnlock.Visible = True
 cmdLock.Visible = False

End Sub

'Xử lý tình huống chọn nút [Mở database]

Private Sub cmdUnlock_Click()

 ‘Không cần biểu mẫu khởi động nữa
 ChangeProperty "StartupForm", dbText, ""
 ChangeProperty "StartupShowDBWindow", dbBoolean, True
 ChangeProperty "StartupShowStatusBar", dbBoolean, True
 ChangeProperty "AllowBuiltinToolbars", dbBoolean, True
 ChangeProperty "AllowFullMenus", dbBoolean, True
 ChangeProperty "AllowBreakIntoCode", dbBoolean, True
 ChangeProperty "AllowSpecialKeys", dbBoolean, True
 ChangeProperty "AllowBypassKey", dbBoolean, True
 MsgBox "Cơ sở dữ liệu đã được mở khóa ! _
 Đóng cơ sở dữ liệu, rồi mở lại mới có ép-phê.", _
 vbOKOnly, "eChip Security"
 cmdExit.SetFocus
 txtPassword = ""
 cmdLock.Visible = True
 cmdUnlock.Visible = False
 txtPassword.Visible = False

End Sub

'Xử lý tình huống khi mở biểu mẫu

Private Sub Form_Open(Cancel As Integer)

 Dim dbs As Database
 Set dbs = CurrentDb
 On Error GoTo KhongCoThuocTinh_Err
 If dbs.Properties("AllowBypassKey") Then
   cmdLock.Visible = True
   txtPassword.Visible = False
 Else
   cmdLock.Visible = False
   txtPassword.Visible = True
 End If

 Exit Sub

 KhongCoThuocTinh_Err:

 cmdLock.Visible = True
 txtPassword.Visible = False

End Sub

'Khi người ta gõ mật khẩu và nhấn phím Enter

Private Sub txtPassword_LostFocus()

 If txtPassword = "echip" Then
   cmdUnlock.Visible = True
 End If

End Sub

Theo E-chip.

Lê Văn Duyệt
 
Em chào anh Lê Văn Duyệt
Em đã viết xong một chương trình Quản lý công văn bằng Ms Access nhưng không biết làm sau để bảo mật CSDL Access.
Tham khảo bài anh Post theo E-chip em chưa hiểu lắm.
Anh có thể giúp em hướng dẫn rõ cách dán đoạn mã 1 ở vị trí nào
Theo tài liệu E-chip chỉ nói chung chung em chưa hiểu
 
Bảo mật CSDL viết trên Access thì:
- Mức đơn giản: Bảo mật với pws đối với file mdb. Dĩ nhiên bạn có thể làm thành nhiều mức bảo mật với cách này
- Mức pro: mã hóa toàn bộ phần CSDL quan trọng (nếu dữ liệu nhiều thì cũng chịu vì làm thế chậm lắm)
- Mức advance: đổi tên các tables thành các ký tự vô nghĩa dạng ABC, XYZ (dĩ nhiên có bảng định nghĩa ở 1 nơi khác), kết hợp với việc mã hóa toàn bộ những phần CSDL quan trọng (tức là mã hóa dữ liệu với các bảng dữ liệu quan trọng)

Riêng đối với quản lý công văn, cần mã hóa cả nội dung văn bản (vì thông thường nếu CSDL là Access thì khó mà có thể nhét cả nội dung văn bản vào file MDB như các hệ quản trị CSDL client/server vì nếu làm vậy thì file MDB quá to và việc open sẽ rất chậm)

Như vậy, tùy vào level và mục tiêu sử dụng của bạn mà bạn có thể áp dụng hình thức bảo mật nào.

Tuy nhiên, khái niệm bảo mật với CSDL là Access cũng gần như vô nghĩa nếu ta đặt pws nhỏ hơn 18 ký tự (có tip để có thể mở mật khẩu file mdb trong vòng tích tắc mà ko cần dò mật khẩu, ko nhớ trước code đó để đâu mất rồi nhưng hình như trên PSC đã từng công bố đoạn code ngắn tẹo để làm việc đó). Nếu "xịn hơn", thì vào đây mua sản phẩm này về để recover password của file Access.

Cách thứ 5 ở topic 1 nói trên, sau khi đã biết được pws bằng công cụ recover pws thì ko mở file đó mà sử dụng 1 file mdb khác và link tới các tables trong file MDB đó (gán pws lúc tạo attached file), rồi ta mở file MDB mới để tạo ra, sau đó xem dữ liệu trong file MDB mới chứ ko cần open file MDB gốc.

Và trên hết, MDB ko có tính bảo mật vì khi chạy qua mạng thì phải sharefull cả thư mục thì mới "update" được, chỉ cần "độp" 1 cái là cả file CSDL đi tong thì còn nói gì tới chuyện bảo mật nữa --=0
 
Lần chỉnh sửa cuối:
Và trên hết, MDB ko có tính bảo mật vì khi chạy qua mạng thì phải sharefull cả thư mục thì mới "update" được, chỉ cần "độp" 1 cái là cả file CSDL đi tong thì còn nói gì tới chuyện bảo mật nữa --=0
Anh nhớ đã đọc ở đâu đó có nói cách khắc phục việc share full này.

LVD
 
Anh nhớ đã đọc ở đâu đó có nói cách khắc phục việc share full này.

LVD

Sử dụng Winsock anh ạ (viết giả lập Server), viết vô cùng phức tạp và chậm. Món đó cũng available in PSC với 3 ví dụ của 1 tác giả (trong đó có 1 ứng dụng gọi là Mail Server+Client (Office Messenger) viết khá tốt). Nhưng mà 3 ví dụ đó viết từ năm 2003 thì phải và sau này chả ai phát triển tiếp nữa. (trong khi làm việc với MS SQL thì lại vô cùng đơn giản)

How this works:
Bascially how this works, It sends the server a few commands/strings, and the server generates the sql statement and sends back the results, to the client winsock application, it then recieves the information and displays it out into a listview control with columns.

PIC200012321707724.jpg

Màn hình ví dụ về connect file mdb với ADO remotely qua Winsock​

Còn cách nào khác thì hơi khó (nếu ko muốn nói là IMPOSSIBLE) vì bản chất khi connect thẳng tới file mdb thì nó lập tức tạo ra file ldb ngay. Nếu ko sharefull thì làm sao file đó tạo được.

Nói tóm lại, MDB nên bị thay thế bởi MSDE!
 
Lần chỉnh sửa cuối:
Các anh thử nghiên cứu cách lấy dữ liệu từ các file .mdb trong các chương trình của tác giả thuongall -caulacbovb.com nhé !(search google lấy file). Theo em thấy đó là cách bảo mật khá tốt!
 
Các anh thử nghiên cứu cách lấy dữ liệu từ các file .mdb trong các chương trình của tác giả thuongall -caulacbovb.com nhé !(search google lấy file). Theo em thấy đó là cách bảo mật khá tốt!

Không có khái niệm bảo mật dữ liệu trên Access (ở môi trường đa người dùng)!

Bảo mật dữ liệu là gì: Là không bị mất dữ liệu ở 2 dạng sau:

- Đọc được dữ liệu (dữ liệu quan trọng: Kiểu danh sách khách hàng, số liệu tài chính nhạy cảm, danh sách tài khoản...). Có hàng chục cách bảo mật file mdb như đổi đuôi file (ví dụ *.mdb --> * .dat, nhưng khi connect thì vẫn lòi ra file ldb), nén có pws, mã hóa, mã hóa + nén có pws + pws của mdb, sửa cấu trúc file để các phần mềm recover ko đọc được, v.v...
- Xóa mất dữ liệu (ko cần đọc) <-- Trừ việc viết giả lập mô hình Client/Server app (bản chất của MDB, Excel là desktop chứ ko phải client/server) như bài viết ở trên (connect database via IP & open port) thì kể cả thuongall hay ghetall cũng chả có cách nào bảo mật cả. (Dĩ nhiên đang nói viết trên môi trường mạng, chứ còn để máy cá nhân thì an toàn rồi).

Dùng MDB khi nào?
- Ứng dụng đơn lẻ (ko có nhu cầu chạy nhiều người)
- Tính bảo mật dữ liệu là ko ở mức "cực kỳ quan trọng"
- Bộ cài nhỏ (ko cần engine như MSDE kèm theo)
- ...
 
Lần chỉnh sửa cuối:
Không có khái niệm bảo mật dữ liệu trên Access (ở môi trường đa người dùng)!

Bảo mật dữ liệu là gì: Là không bị mất dữ liệu ở 2 dạng sau:

- Đọc được dữ liệu (dữ liệu quan trọng: Kiểu danh sách khách hàng, số liệu tài chính nhạy cảm, danh sách tài khoản...). Có hàng chục cách bảo mật file mdb như đổi đuôi file (ví dụ *.mdb --> * .dat, nhưng khi connect thì vẫn lòi ra file ldb), nén có pws, mã hóa, mã hóa + nén có pws + pws của mdb, sửa cấu trúc file để các phần mềm recover ko đọc được, v.v...
- Xóa mất dữ liệu (ko cần đọc) <-- Trừ việc viết giả lập mô hình Client/Server app (bản chất của MDB, Excel là desktop chứ ko phải client/server) như bài viết ở trên (connect database via IP & open port) thì kể cả thuongall hay ghetall cũng chả có cách nào bảo mật cả. (Dĩ nhiên đang nói viết trên môi trường mạng, chứ còn để máy cá nhân thì an toàn rồi).

Dùng MDB khi nào?
- Ứng dụng đơn lẻ (ko có nhu cầu chạy nhiều người)
- Tính bảo mật dữ liệu là ko ở mức "cực kỳ quan trọng"
- Bộ cài nhỏ (ko cần engine như MSDE kèm theo)
- ...

Ý kiến đóng góp của em xuất phát từ bài viết đầu tiên của anh Duyệt ( Tất nhiên nội dung bài viết cũng đã nêu rõ mục đích đảm bảo tính riêng tư của nội dung thông tin khi lưu trong một tập tin access >>> Chính vì thế em được phép sử dụng khái niệm " Bảo mật" không kể ở chế độ đơn hay đa truy nhập) ( Search từ khóa "Bảo mật"+"access" hình như cũng có cỡ 718000 kết quả**~**) .

Hồi trước em còn nhớ tác giả thuongall có một chương trình bói toán vui vui nên cũng tính chuyện chôm ít dữ liệu để xem cho nó đầy đủ --=0+-+-+-+ .Em đã tìm rồi thử mấy cách .Tuy nhiên về mảng tin học thì em còn rất a ma tơ nên ý định xấu đó không thực hiện được :-= (Chính vì không mở xem được nội dung nhận xét chủ quan của em về cách làm của tác giả đó là tốt). Nhân có bài viết của anh Duyệt cũng muốn được mọi người chỉ giúp làm sao mà người ta lại làm được giỏi như vậy. Còn những khái niệm gì như desktop hay Client/Server app gì đó em cũng chẳng buồn quan tâm tra từ điển xem nghĩa của nó là gì vì không đụng chạm gì đến chuyên môn cho lắm. Ngồi tính rồi vẽ cho xong bộ hồ sơ ngày mai trình sếp biết đâu lại được khen vài câu rồi cuối tháng hay cuối năm lại có tiền thưởng mang về nhà khoe mẹ --=--/-*+/
 
Hồi trước em còn nhớ tác giả thuongall có một chương trình bói toán vui vui nên cũng tính chuyện chôm ít dữ liệu để xem cho nó đầy đủ. Em đã tìm rồi thử mấy cách. Tuy nhiên về mảng tin học thì em còn rất a ma tơ nên ý định xấu đó không thực hiện được (Chính vì không mở xem được nội dung nhận xét chủ quan của em về cách làm của tác giả đó là tốt)

Đó là vì em ko mở được, ko xem được chứ ko phải đó là cách bảo mật hay hơn, "tốt hơn" các cách đã nói ở trên (cái thời thuongall ở vbclub viết cũng là cái thời tớ join vào cái vbclub đó từ lâu lắm rồi nên biết hầu hết các thành viên trong đó viết cái gì, viết như thế nào, viết đến đâu). Nếu chỉ bảo mật như vậy thì ko chỉ thuongall mà có cả trăm ngàn người khác với trăm ngàn cách khác nhau đối với 1 file nói chung, 1 file access nói riêng. Khi người ta nói về bảo mật dữ liệu thì người ta thường nói về mã hóa dữ liệu. Mà mà hóa thì có hàng trăm cách cơ bản khác nhau, sửa tý đi thì thành hàng nghìn hàng vạn "thuật toán" khác nhau.

Tôi nói khái niệm bảo mật ở trên là mang tính rộng và theo đúng nghĩa của IT chứ ko mang tính hẹp nào đó.

Thôi, nói thế là đủ về món này rồi.
 
Lần chỉnh sửa cuối:
Nếu chỉ bảo mật như vậy thì ko chỉ thuongall mà có cả trăm ngàn người khác với trăm ngàn cách khác nhau đối với 1 file nói chung, 1 file access nói riêng. Khi người ta nói về bảo mật dữ liệu thì người ta thường nói về mã hóa dữ liệu. Mà mà hóa thì có hàng trăm cách cơ bản khác nhau, sửa tý đi thì thành hàng nghìn hàng vạn "thuật toán" khác nhau.

Tôi nói khái niệm bảo mật ở trên là mang tính rộng và theo đúng nghĩa của IT chứ ko mang tính hẹp nào đó.

Sở dĩ em có nhận xét file đó được bảo vệ tốt bởi vì em đã từng sử dụng hết thảy 5 cách (có tổ hợp từ 5 cách trên)như bài viết trên báo echip (Đã được post rất phổ biến trên các diễn đàn tin học) cũng không thể mở hay link table được.Bước ban đầu là mở file để đọc dữ liệu đã bị thất bại. Như vậy em có thể vote cho file của tác giả kia 1 phiếu. Và theo như anh nói thì có cả trăm ngàn cách khác nữa. Những kinh nghiệm này lớp người đi sau như em rất nên học hỏi và áp dụng.

Vấn đề bảo mật dữ liệu bằng cách mã hóa :Nói tới mã hóa thông thường người ta cũng sử dụng hai cấp bậc đó là mã hóa file và dữ liệu chứa trong file. Chẳng hạn người ta sẽ mã hóa một file .MDB để chính chương trình MS access không thể nhận biết được loại file này để mà mở (báo lỗi kiểu Unrecognized database format) giả sử có cách nào đó mở được file này ra thì cũng được đón tiếp bởi phương án mã hóa dữ liệu trong file đó. Đúng như anh nói có tới hàng ngàn hàng vạn "thuật toán" để làm việc này và ai đó muốn có được dữ liệu chỉ còn cách đi xin code hoặc chịu khó dịch ngược lại chương trình.

Xin phép được nhấn mạnh: Vấn đề em muốn được học hỏi chính ở bước đầu là có những cách nào để có thể lấy được dữ liệu trong file đã được bảo vệ ?? (không quan trọng dữ liệu đã bị mã hóa hay chưa)

Theo em hiểu thì khái niệm bảo mật - security (trích trong cuốn từ điển tin học - Chắc là có tham khảo trước bởi các nhà IT) : Sự bảo vệ dữ liệu để cho những người không được phép sẽ không thể xem trộm hoặc sao chép nó ...

Rất mọng nhận được sự chia sẻ kinh nghiệm từ các anh chị.
 
bài toán này đến đây là hết rồi à. còn 1 cách cũng hay được dùng là tạo workgroup administrator (file *mdw) kèm theo file mdb khi xuất phần mềm. trong mdw có lưu các thông số username, password, workgroup ... để quản lý cái mdb đi theo. còn bản thân file mdb thì chẳng cần cài password hay mã hóa gì hết. nhưng nếu bạn bấm open cái mdb lên thì sẽ báo lỗi "không có quyền truy xuất".

hỏi có cách nào open nó lên ko thì trả lời là có. nhưng sẽ hiện ra cái msgbox hỏi username và password (đã được mã hóa đủ thứ tiếng). vậy xin hỏi hai2hai hay các bạn có phản biệt gì cách này ko ?
 
hỏi có cách nào open nó lên ko thì trả lời là có. nhưng sẽ hiện ra cái msgbox hỏi username và password (đã được mã hóa đủ thứ tiếng). vậy xin hỏi hai2hai hay các bạn có phản biệt gì cách này ko ?

Tôi có nhận xét thế này:

workgroup-security.gif

http://www.intelore.com/workgroup-password-recovery.php

Ngoài phần mềm này ra thì còn nhiều PM khác dạng này lắm

Mà nói chung cái gì cũng recover được nếu đã ngồi trên máy đó. Nhưng với các hệ quản trị CSDL client/server như Oracle, MS SQL thì sẽ thực hiện khó hơn vì những cái hệ QT CSDL được cài đặt trên máy chủ (máy mà người hacker không ngồi trực tiếp trên đó mà phải vượt qua nhiều cửa ải mới vào được - gọi là hack)
 
Lần chỉnh sửa cuối:
Mình có file database bằng Access có chứa đoạn code để bảo vệ nhưng không biết cách nào để tìm code đăng nhập vào bên trong CSDL để xem thông tin. Rất mong mọi người giúp đỡ mình nhé.

3L0.10954957_1_1.jpg

Dưới đây mình xin đính kèm file database để mọi người download về, file này được đặt password bảo vệ do MS Access quản lý & sau khi qua được password này thì còn phải qua thêm code bảo vệ nữa :

Download : http://www.mediafire.com/?t0yynzmmnym
Password : Karaoke±Å²Æ³Ç´µ¢¶£·
 
Trong đó toàn là danh mục cac bài hat = tiếng việt,philippin, rusian,spanish,...
progress.gif
 
Sở dĩ em có nhận xét file đó được bảo vệ tốt bởi vì em đã từng sử dụng hết thảy 5 cách (có tổ hợp từ 5 cách trên)như bài viết trên báo echip (Đã được post rất phổ biến trên các diễn đàn tin học) cũng không thể mở hay link table được.Bước ban đầu là mở file để đọc dữ liệu đã bị thất bại. Như vậy em có thể vote cho file của tác giả kia 1 phiếu. Và theo như anh nói thì có cả trăm ngàn cách khác nữa. Những kinh nghiệm này lớp người đi sau như em rất nên học hỏi và áp dụng.

Vấn đề bảo mật dữ liệu bằng cách mã hóa :Nói tới mã hóa thông thường người ta cũng sử dụng hai cấp bậc đó là mã hóa file và dữ liệu chứa trong file. Chẳng hạn người ta sẽ mã hóa một file .MDB để chính chương trình MS access không thể nhận biết được loại file này để mà mở (báo lỗi kiểu Unrecognized database format) giả sử có cách nào đó mở được file này ra thì cũng được đón tiếp bởi phương án mã hóa dữ liệu trong file đó. Đúng như anh nói có tới hàng ngàn hàng vạn "thuật toán" để làm việc này và ai đó muốn có được dữ liệu chỉ còn cách đi xin code hoặc chịu khó dịch ngược lại chương trình.

Xin phép được nhấn mạnh: Vấn đề em muốn được học hỏi chính ở bước đầu là có những cách nào để có thể lấy được dữ liệu trong file đã được bảo vệ ?? (không quan trọng dữ liệu đã bị mã hóa hay chưa)

Theo em hiểu thì khái niệm bảo mật - security (trích trong cuốn từ điển tin học - Chắc là có tham khảo trước bởi các nhà IT) : Sự bảo vệ dữ liệu để cho những người không được phép sẽ không thể xem trộm hoặc sao chép nó ...

Rất mọng nhận được sự chia sẻ kinh nghiệm từ các anh chị.
anh chị nào có biết cách mở files mã hóa kiểu trên không(Unrecognized database format)
 
Theo cách 5 của anh Duyệt thì rất phổ biến dùng, mình không cần bỏ code đó vào chương trình mà mình dùng 1 file Access khác để thiết kế riêng để làm chức năng khóa và mở phím shift. Như vậy nó tiện lợi vô cùng. Mở phím shift và vô hiệu hóa phím shift của bấc kỳ file access nào mình muốn.
 
Giúp đỡ tạo menu access

Mình đang làm đề tài Quản lý công văn, Khi mình tạo 1 menu trong Access 2003, làm sao để cho tất cả các Menu đều ẩn, chỉ có 1 menu Đăng nhập hệ thống sáng, khi mình đăng nhập thành công thì các menu còn lại sẽ sáng lên. Điều đó cũng tương tự khi mình tạo 1 form gồm nhiều command button, trong đó có command button "Đăng nhập hệ thống", và khi mình đăng nhập vào hệ thống thành công thì tất cả các command button sẽ tự động sáng lên. Ai biết chỉ giúp dùm mình với. Mình cám ơn nhiều!
 
đào mộ lại bài viết này mong ae thông cảm! thật sự mình gặp 1 file đang mã hóa kiểu như a Duyệt nói, đã vô hiệu phím shift! và chủ nhân file này cũng đi mất, giờ mình muốn vào lại để xuất các dsach trước đây để cập nhật lại nhưng ko biết pass là gì thì truy cập thế nào? mong các bac chỉ giáo, mình ko phải dân chuyên access. nếu cần mình có thể up file lên lun.
 
Web KT
Back
Top Bottom