使用 Microsoft 登录
登录或创建帐户。
你好,
使用其他帐户。
你有多个帐户
选择要登录的帐户。

本文介绍如何使用名为沙盒模式的 Access 安全功能。 在沙盒模式下,Access 会阻止“不安全”表达式:任何表达式使用函数或属性,恶意用户可能利用这些函数或属性来访问他们没有授权的驱动器、文件或其他资源。 例如, KillShell 等函数可用于损坏计算机上的数据和文件,因此在沙盒模式下会阻止它们。

注意: 本主题不适用于 Access Web 应用或 Access Web 数据库,也不涵盖其他 Access 安全功能。

本文内容

概述

沙盒模式是一项安全功能,可防止 Access 运行某些可能不安全的表达式。 无论数据库是否“受信任”(其内容已启用)都会阻止这些不安全的表达式。

沙盒模式的设置方式

使用注册表项指定 Access 是否应在沙盒模式下运行。 默认情况下启用沙盒模式 - 在计算机上安装 Access 时,注册表项值设置为启用沙盒模式。 如果要允许所有表达式运行,可以将注册表项值更改为禁用沙盒模式。

受信任的数据库

无论是否在注册表中启用沙盒模式,除非数据库文件位于受信任位置或具有有效的信任签名,否则 Access 都不允许运行可能不安全的表达式。 如果数据库不“受信任”,则 Access 使用沙盒模式。

下图显示了 Access 遇到不安全表达式时遵循的决策过程。

沙盒模式的判定过程

如果不熟悉注册表,或者自己不习惯更改注册表项,请向熟悉并熟悉更改注册表的人员寻求帮助。 必须在计算机上具有管理员权限才能更改注册表值。

返回页首

禁用沙盒模式 (运行不安全的表达式)

在某些安装中,可以通过更改注册表项的值来禁用沙盒模式。

注意: 并非所有 Access 安装都将包括以下过程中引用的 SandBoxMode 注册表项。 如果找不到注册表项,建议不要添加它,因为它可能会干扰 Office 更新。

谨慎      注册表编辑不当可能会严重损坏操作系统,导致你必须重新安装它。 Microsoft 无法保证可解决因注册表编辑不当而引起的问题。 编辑注册表之前,请备份任何有价值的数据。 有关如何使用和保护计算机注册表的最新信息,请参阅 Microsoft Windows 帮助。

更改注册表项

重要: 按照下列步骤进行操作可以允许计算机上的所有用户在所有 Access 实例中运行不安全的表达式。

  1. 关闭要禁用沙盒模式的计算机上运行的所有 Access 实例。

  2. 按 Windows 键,键入 “运行”,然后按 Enter。

  3. “打开”框中,键入 regedit,然后按 Enter。

    即会启动注册表编辑器。

  4. 注册表项的特定位置将有所不同,具体取决于你运行的 Access 版本、 (32 位或 64 位) Windows 和 Access 版本的位数,以及是否有即点即用安装。 如果在从下面显示的可能选项中找到正确的注册表项时遇到问题,请尝试在注册表中搜索 Access Connectivity Engine

    展开 HKEY_LOCAL_MACHINE 文件夹,导航到以下注册表项:

    如果使用 Access 2010,请尝试查看以下位置: \Software\Microsoft\Office\14.0\Access Connectivity Engine\Engines 或 此处: \Software\WOW6432Node\Microsoft\Office\14.0\Access Connectivity Engine\Engines

    如果使用 Access 2013,请尝试查看以下位置: \Software\Microsoft\Office\15.0\Access Connectivity Engine\Engines 或 此处: \Software\WOW6432Node\Microsoft\Office\15.0\Access Connectivity Engine\Engines

    如果使用 Access 2016 或 Access 2019,请尝试在此处查看:\Software\Microsoft\Office\16.0\Access Connectivity Engine\Engines 或此处:\Software\WOW6432Node\Microsoft\Office\16.0\Access Connectivity Engine\Engines

    如果使用的是 32 位 Microsoft 365 Access 订阅版本或 32 位即点即用安装 Access,请尝试查看此处: Software\Microsoft\Office\ClickToRun\Registry\Machine\Software\Microsoft\Office\16.0\Access Connectivity Engine\Engines

    ...或此处:

    Software\Microsoft\Office\ClickToRun\Registry\Machine\Software\Microsoft\Office\15.0\Access Connectivity Engine\Engines

    如果使用的是 64 位 Microsoft 365 Access 订阅版本或 64 位即点即用安装 Access,请尝试查看此处: Software\Microsoft\Office\ClickToRun\Registry\Machine\Software\Wow6432Node\Microsoft\Office\16.0\Access Connectivity Engine\Engines

    ...或此处:

    Software\Microsoft\Office\ClickToRun\Registry\Machine\Software\Wow6432Node\Microsoft\Office\15.0\Access Connectivity Engine\Engines

  5. 在注册表编辑器的右窗格中,在 “名称”下,双击“ SandBoxMode ”(如果存在)。 如果找不到 SandBoxMode 注册表项,建议 不要 添加它,因为它可能会干扰 Office 更新。

    此时将出现“编辑 DWORD 值”对话框。

  6. “数值数据”字段中,将值从“3”更改为“2”,然后单击“确定”

  7. 关闭注册表编辑器。

重要: 请记住,如果不首先启用数据库中的内容,则无论是否更改此注册表设置,Access 都会禁用任何不安全的表达式。

可以将注册表值设置为以下值,其中 0 (零) 最宽松,3 表示最宽松。

设置

说明

0

沙盒模式随时处于禁用状态。

1

沙盒模式用于 Access,但不适用于非 Access 程序。

2

沙盒模式用于非 Access 程序,但不适用于 Access。

3

沙盒模式随时使用。 这是在安装 Access 时设置的默认值。

返回页首

需要更多帮助?

需要更多选项?

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

社区可帮助你提出和回答问题、提供反馈,并听取经验丰富专家的意见。

此信息是否有帮助?

你对语言质量的满意程度如何?
哪些因素影响了你的体验?
按“提交”即表示你的反馈将用于改进 Microsoft 产品和服务。 你的 IT 管理员将能够收集此数据。 隐私声明。

谢谢您的反馈!

×