可以通过向数据库添加 数字签名 来表明你认为数据库是安全的,并且其内容可以信任。 数字签名 确认数据库中的任何宏、代码模块和其他可执行组件都源自签名者,并且自数据库签名以来,没有人对其进行更改。 这有助于使用数据库的用户决定是否信任数据库及其内容。 将安全证书视为用于对内容进行数字签名的笔,或只有你才能应用的蜡封。 若要添加 数字签名 ,可以使用商业安全证书,也可以创建自己的证书。 用于对数据库进行数字签名的过程取决于所使用的数据库版本。
有两种类型的安全证书:商业证书和自签名证书。
如果要对数据库进行数字签名,然后以商业方式分发该数据库,则应从商业 证书颁发机构 (CA) 获取商业安全证书。 这些证书颁发机构会进行背景调查,确保内容(如数据库)的创建者是值得信任的。 有关详细信息,请参阅 查找数字 ID 或数字签名服务。
如果要将数据库用于个人或有限工作组方案,以便在自己的组织中使用,可以使用 Microsoft 365 附带的 SelfCert 工具创建 数字证书 。
重要: 如果使用创建的 数字证书 对文档进行数字签名,然后共享数字签名的文件,则其他人无法在不手动决定信任自签名证书的情况下验证 数字签名 的真实性。
-
浏览到包含 Microsoft Office 程序文件的文件夹。
你需要找到可执行文件 (SelfCert.exe),并且位置可能因各种条件而异,例如,如果你使用的是 32 位或 64 位 Windows 操作系统,或者你使用的是 Microsoft 365 。
Office 版本
位置
Microsoft 365
C:\Program Files\Microsoft Office \root\Office16
C:\Program Files (x86) \Microsoft Office \root\Office16
Office 2019
Office 2016
C:\Program Files\Microsoft Office \Office16
C:\Program Files (x86) \Microsoft Office \Office16
-
找到正确的文件夹,然后双击 SelfCert.exe。
将出现“创建数字证书”对话框。
-
在“您的证书名称”框中,键入新测试证书的名称。
-
单击两次“确定”。
可以轻松快速地对数据库进行签名和分发。 可以打包文件,将 数字签名 应用到包,然后将已签名的包分发给其他用户。 “包和签名”功能将数据库置于 Access Deployment (.accdc) 文件中,对文件进行签名,然后将已签名的包放置在你确定的位置。 随后,用户可以从该包中提取数据库,并直接在该数据库中工作,而不是在包文件中工作。 请注意,你仍然可以使用打包功能来生成 .accdc 文件,不管你是否也对数据库进行代码签名。 有关详细信息,请参阅 部署 Access 应用程序。
Access 的所有版本都允许以 .mdb 和 .mde 数据库格式将 数字签名 应用于组件。 从 Microsoft 365 版本 2211 的 Access 开始,还支持 .accdb 和 .accde 数据库格式。
若要对数据库进行代码签名,请执行以下操作:
-
打开要签名的数据库。
-
在“ 数据库工具 ”选项卡上的“ 宏 ”组中,单击“ Visual Basic ”以启动 Visual Basic 编辑器 ,或按 Alt+F11。
-
在“项目资源管理器”窗口中,选择要签署 (VBA) 项目的应用程序的数据库或 Visual Basic 。
-
在“工具”菜单上,单击“数字签名”。
将出现“数字签名”对话框。
-
单击“选择”选择测试证书。
将出现“选择证书”对话框。
-
选择要应用的证书。 有关详细信息,请参阅 获取安全证书。
如果您是按照前一部分中的步骤操作的,请选择使用 SelfCert 创建的证书。
-
单击“ 确定 ”关闭“ 选择证书 ”对话框,再次单击“ 确定 ”以关闭“ 数字签名 ”对话框。
注意
-
若要避免您的解决方案用户因无意中修改 VBA 项目而使签名无效,请先锁定 VBA 项目,然后再对其进行签名。 但是,锁定 VBA 项目不会阻止其他用户将 数字签名 替换为另一个签名。 企业管理员可能对模板和加载项重新签名,以便精确地控制哪些用户可以在相应的计算机上运行模板和加载项。
-
如果应用程序修改数据库的方式会使签名失效(例如,通过创建新的操作查询),则避免对数据库进行数字签名。 请改为使用已签名的包 (.accdc) 进行分发,然后将其与受信任的位置结合使用。