应用对象
Office 2016 Office 2013 Microsoft 365 Apps for enterprise Microsoft 365 Business Standard Microsoft 365 Business Basic Microsoft 365 Apps for business Windows 10, version 2004, all editions Windows Server version 2004 Windows 10, version 20H2, all editions Windows Server, version 20H2, all editions Windows 10, version 1909, all editions Windows Server version 1909 Windows 10, version 1809, all editions Windows Server version 1809 Windows Server 2019, all editions Windows 10, version 1803, all editions Windows 10, version 1803 (Enterprise, Education, IoT Enterprise) Windows 10, version 1607, all editions Windows Server 2016, all editions Windows 10

摘要

从 2021 年 5 月 11 Windows 和 Microsoft Office 更新开始,已添加使您的应用程序更安全的选项,以允许您在查询执行中禁用远程引用。

从 2021 年 10 月 12 Windows 开始,当应用程序尝试通过 SQL 查询打开外部数据库时,会添加一个选项来记录 Windows 事件。

当允许非特权用户使用 Jet Red 数据库引擎 或 Access Connectivity Engine (ACE) 运行自定义 SQL 查询时,可能需要这样做。

默认情况下,不会通过安装这些更新来更改访问 Jet 或 ACE。 

更多信息

访问远程数据库

如果您禁用使用 Jet Red Database Engine 或 Access Connectivity Engine (ACE) 访问远程数据库,则在运行 SQL 查询时,可能会收到如下所示的错误消息:

  • Microsoft Access: 如果用户在 Access 中执行查询,则会显示以下错误消息:

错误消息对话框

错误消息文本

此类对象不支持操作

Microsoft Access

此类对象不支持操作。

  • Microsoft Access: 如果用户执行运行查询的代码,则将显示运行时错误 3251,除非该错误消息在代码中得到处理:

错误消息对话框

错误消息文本

运行时错误 3251

Microsoft Visual Basic for Applications

运行时错误 ‘5941’

此类对象不支持操作。

警告: 如果在禁用以下注册表值后选择重新启用它们,则可能导致您的设备容易受到恶意用户或恶意软件的攻击。 不建议在禁用这些注册表值后重新启用它们。 然而,此信息仅供参考,你应自行决定是否选择实施此解决方法。 使用此方法需要您自担风险。

警告: 使用注册表编辑器或其他方法修改注册表不当可能会出现严重问题。 这些问题可能需要您重新安装操作系统。 Microsoft 不能保证可解决这些问题。 请自行承担修改注册表的风险。

审核远程数据库访问尝试

注意: 审核目前仅适用于 Jet Red 数据库引擎。

审核将添加到事件查看器中,该查看器Windows"应用程序和服务日志'\Microsoft\Windows\JetRed"下记录一个事件。

默认情况下,审核通过新的 DWORD AllowQueryRemoteTables_Audit启用和控制, 其中1 启用审核 ,0 禁用审核。

如果   启用此功能,则Windows"级别"为"信息","消息"为"尝试打开外部数据库"。

如果禁用此功能,则"级别"为"错误","消息"为"已阻止外部数据库打开尝试"。

事件的 "详细信息"选项卡将同时包含外部数据库的路径和可执行文件,如以下示例所示:

  • EventData 数据库路径:C:\PathToMyDb\myDatabase.mdb Executable:C:\PathtoMyApplication\myApplication.exe

Jet Red Database Engine

若要禁用使用 Jet Red Database Engine 访问远程数据库,请向注册表添加以下内容:

对于基于 x64 的设备:

  • 注册表位置: HKEY_LOCAL_MACHINE\SOFTWARE\WOW6432Node\Microsoft\Jet\4.0\EnginesDWORD 名称:AllowQueryRemoteTables值数据:0

对于基于 x86 的设备:

  • 注册表位置: HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Jet\4.0\EnginesDWORD 名称:AllowQueryRemoteTables值数据:0

备注 若要重新启用 Jet Red Database Engine 访问远程数据库,将值数据更改为 1

若要在 Jet Red 数据库引擎尝试访问远程数据库时禁用审核,AllowQueryRemoteTables_Audit DWORD添加到注册表:

对于基于 x64 的设备:

  • 注册表位置: HKEY_LOCAL_MACHINE\SOFTWARE\WOW6432Node\Microsoft\Jet\4.0\EnginesDWORD 名称:AllowQueryRemoteTables_Audit值数据:0

对于基于 x86 的设备:

  • 注册表位置: HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Jet\4.0\EnginesDWORD 名称:AllowQueryRemoteTables_Audit值数据:0

备注 若要重新启用 Jet Red 数据库引擎审核对远程数据库的访问尝试,将"值数据"更改为1。

Access Connectivity Engine (ACE)

若要禁用使用 ACE (ACE) 访问远程数据库,请向注册表添加以下 DWord 和值,如下表所示:

  • DWORD 名称: AllowQueryRemoteTables

  • 值数据:0

安装类型

Office 版本

OS 位度

Office位度

注册表路径

C2R

365 / 2019 / 2016

x64

x64

HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Office\ ClickToRun\REGISTRY\MACHINE\Software\Microsoft\ Office\16.0\Access Connectivity Engine\Engine

C2R

365 / 2019 / 2016

x86

x86

HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Office\ ClickToRun\REGISTRY\MACHINE\Software\Microsoft\Office\ 16.0\Access 连接引擎\引擎

C2R

365 / 2019 / 2016

x64

x86

HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Office\ ClickToRun\REGISTRY\MACHINE\Software\Wow6432Node\ Microsoft\Office\16.0\Access Connectivity Engine\Engine

C2R

2013

x64

x64

HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Office\ ClickToRun\REGISTRY\MACHINE\Software\Microsoft\Office\ 15.0\Access 连接引擎\引擎

C2R

2013

x86

x86

HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Office\ ClickToRun\REGISTRY\MACHINE\Software\Microsoft\Office\ 15.0\Access 连接引擎\引擎

C2R

2013

x64

x86

HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Office\ ClickToRun\REGISTRY\MACHINE\Software\Wow6432Node\ Microsoft\Office\15.0\Access Connectivity Engine\Engine

MSI

2016

x64

x64

HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Office\16.0\ AccessConnectivity Engine\Engine

MSI

2016

x86

x86

HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Office\16.0\ AccessConnectivity Engine\Engine

MSI

2016

x64

x86

HKEY_LOCAL_MACHINE\SOFTWARE\Wow6432Node\ Microsoft\Office\16.0\Access Connectivity Engine\Engine

MSI

2013

x64

x64

HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Office\15.0\ AccessConnectivity Engine\Engine

MSI

2013

x86

x86

HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Office\15.0\ AccessConnectivity Engine\Engine

MSI

2013

x64

x86

HKEY_LOCAL_MACHINE\SOFTWARE\Wow6432Node\ Microsoft\Office\15.0\Access Connectivity Engine\Engine

备注 若要重新启用访问 Access Connectivity Engine (ACE) 访问远程数据库,将值数据更改为 1

需要更多帮助?

需要更多选项?

了解订阅权益、浏览培训课程、了解如何保护设备等。