在Access 2007中保护 Access密码和进行加密
在Access 2007中保护 Access密码和进行加密
作者: 代翀, 出处:IT专家网, 责任编辑: 包春林,
2009-05-06 10:01
Microsoft Access 2007推出了一个用于存储Access数据库信息的新的文件格式。这个文件格式可以由任何以.ACCDB结尾的文件识别。虽然Microsoft Access2007仍然支持.MDB的文件类型,但是未来的Access将围绕.ACCDB格式来建立。
Microsoft Access 2007推出了一个用于存储Access数据库信息的新的文件格式。这个文件格式可以由任何以.ACCDB结尾的文件识别。虽然Microsoft Access2007仍然支持.MDB的文件类型,但是未来的Access将围绕.ACCDB格式来建立。
.ACCDB格式最显著的一个改变是一个新的加密方法,它是基于数据库密码的。这个改变是一个非常显著的安全改进,因为加密的ACCDB数据库是(理论上)足够强大,它们只可以使用非常强大的密码恢复才能破解。当然,如同所有的安全一样,如果许多人以同样方式来进行,那么这个风险要高得多,因为有人将得出怎样破坏这个安全。这无疑将适用于加密一个Access 2007数据库,因为使用的默认加密算法是40位密钥的RC4,它没有达到它所能达到的那么强大。在这篇文章里,将向你展示怎样使得你的密码加密数据库比标准的ACCDB加密更加安全。
这个加密是什么以及为什么它很重要
Access 2007以块——也就是页面的形式读取和写入到.ACCDB文件。这些页面的大小是固定的:4096字节。加密是发生在页面级别的,为了使事情变得简单(以及考虑性能原因),加密的页面必须也是4096字节。在ACCDB中,每个加密 的“页面”有一个唯一键,它是从一个密码哈希(它包含随机基础数据)获得的。这是非常重要的,因为现在数据库密码不再存储在这个文件中(不像之前的版本)。这个方法意味着只有强力密码恢复才有可能。
另外,默认加密只使用40位密钥,这确实使得它差一些,但是幸运的是这可以提高到128位加密。在本文中会介绍如何做到这一点。
在你开始加密之前
你可能会在读一篇关于数据库的文章时,会急于在你所使用的数据库上进行尝试。在这个例子中,请不要这么做;使用这篇文章所带的数据库,并在一个不含有任何其它数据库的文件夹下进行试验。当你准备好要对你自己的数据库添加一个密码时,请确保你有一个系统用于记住密码,例如打印和存储在一个安全的保险箱中。
使用标准40位密钥加密一个Access 2007数据库
要加密一个数据库,开始时和你进行Access
相关文档:
1、添加ADODC1到窗体
2、准备好一个ACCESS新建的空数据库66.mdb
Private Sub Form_Load()
With Adodc1
.ConnectionString = "Provider=Microsoft.Jet.OLEDB.4.0;Data Source=" & _
"C:\Documents and Settings\Administrator\" & _
"My Docume ......
using System;
using System.Data;
using System.Configuration;
using System.Web;
using System.Web.Security;
using System.Web.UI;
using System.Web.UI.WebControls;
using System.Web.UI.WebControls.WebParts;
using System.Web.UI.HtmlControls;
using System.Data.OleDb;
/// <summary>
/// Data ......
自定义数据库链接类(Access)是链接Access数据库时使用的类。
补足:Application.StartupPath.ToString是指定生成.EXE文件的路径,把数据库和执行文件存放到一起时,不管安装后在什么路径都无需特定指定。
Imports System.Data.OleDb
#Region "全局变量"
Private mTimeo ......
C# access日期查询加#
if (((string)((ComboBoxItem)cmbField.SelectedItem).Value).Equals("System.DateTime"))
{
//判断日期的;
& ......