我确定这个特殊问题已经存在了很长一段时间,但是不幸的是,在这里或互联网上的任何地方都没有进行大量搜索,这导致了我的解决方案(严重!)。
我为后端数据库设置了多个前端,这很好。我正试图让IT部门交出我们迫切需要的SQL Server访问权限,但是在那之前,我们必须保护Access数据库中的内容。
后端受保护,前端被禁用(禁用旁路键等),但未加密(因此用户可以打开它)。
前端包含到后端的链接表,因此DLookups可以工作,但事实证明,这样做会暴露出巨大的安全性问题。
如果用户创建一个新数据库,则他们可以从前端导入所有链接的表和查询(该向导可以防止表单和模块从可执行文件中移出),并且不仅可以访问受保护的数据,还可以访问他们实际上也可以在链接数据时对其进行操作。
当然,这不是MS Access中的巨大缺陷,我在这里缺少什么吗?
如何避免这种类型的安全性问题保护数据库,而不必希望将每个DLookup变量更改为一个查看连接字符串SELECT查询的变量?