【问题标题】:Is it possible to bypass DAO group/user security of old access database?是否可以绕过旧访问数据库的 DAO 组/用户安全?
【发布时间】:2012-02-02 22:30:52
【问题描述】:

我正在尝试为我没有代码的旧软件构建与 Windows 7 兼容的新数据库管理器。我使用的是 64 位 Windows 7,因此无法安装用于连接数据库的必要 DAO 驱动程序。

不幸的是,数据库是使用 DAO 用户/工作组权限保护的。有没有办法从数据库中提取信息或绕过该文件的安全措施?

【问题讨论】:

标签: security ms-access dao


【解决方案1】:

您没有提及您必须使用哪个版本的 Access。

如果您有权访问 2010 或 2013,则可以使用工作组安全文件和快捷方式打开数据库。

2010

"C:\Program Files (x86)\Microsoft Office\Office14\MSACCESS.EXE"
"c:\RidesDev\SkiRides\RidesXP\RidesXP.mdb"
/wrkgrp "c:\RidesDev\SkiRides\RidesXP\Rides.mdw"

2013

"C:\Program Files (x86)\Microsoft Office\Office15\MSACCESS.EXE"
"c:\RidesDev\SkiRides\RidesXP\RidesXP.mdb"
 /wrkgrp "c:\RidesDev\SkiRides\RidesXP\Rides.mdw"

上面的快捷键当然是一行,每个部分用空格隔开。

一旦您使用上述快捷方式打开数据库,就会指定工作组安全文件。系统将提示您输入用户名和密码。完成此操作后,即可从 Access 文件菜单中关闭数据库。 (不要退出访问)。此时您可以新建一个空白的 2010 accDB 数据库。然后从旧的 mdb 数据库中导入所有对象。

请注意,上述工作是通过您不退出 Access 进行的——这意味着您将继续连接到安全组。由于您仍然连接到安全工作组,您可以将所有对象从旧 mdb 导入到您刚刚创建的新 accDB。此时,我将退出 Access,然后启动新创建的数据库。

因此,新数据库将没有任何安全性,并且您退出 + 重新进入 Access 并在没有安全组快捷方式的情况下启动 Access 意味着您正在打开没有工作组安全性的新数据库。

以上假设您拥有正确的用户 + 密码登录并拥有对数据库的完全权限。如果数据库具有您无法绕过的启动代码和表单,那么您可以创建一个空白数据库并再次为新数据库指定上述工作组安全文件,这也将允许您将对象导入新空白数据库。结果应该是一个没有任何安全性的 accDB 文件。

【讨论】:

    猜你喜欢
    • 2011-12-25
    • 1970-01-01
    • 2017-12-29
    • 1970-01-01
    • 2022-08-10
    • 1970-01-01
    • 1970-01-01
    • 2014-01-01
    • 1970-01-01
    相关资源
    最近更新 更多