数据安全性和 Excel 中的 Python
应用对象
有关可用性信息,请参阅 Excel 中的 Python 可用性。 如果在使用 Excel 中的 Python 时遇到任何问题,请通过在 Excel 中选择帮助 > 反馈来报告这些问题。
不熟悉 Excel 中的 Python? 从 Excel 中的 Python 简介和 Excel 中的 Python 入门开始。
Python 以企业级安全性运行
Excel 中的 Python 以企业级安全性在 Microsoft Cloud 上的安全容器中运行 Excel 使用的 Python 代码。
Excel 中的 Python 是一种合规 Microsoft 365 连接体验,Python 代码在组织的合规性边界内运行。 在 OneDrive 上存储的文档或使用 Excel 中的“分析数据”功能与他人协作是符合 Microsoft 365 连接体验的其他示例。
Excel 中的 Python 符合一般数据保护条例 (GDPR) 和欧盟数据边界 (EUDB) 的规定。
Excel 中的 Python 使用以下属性在 Microsoft Cloud 中运行。
-
Python 代码在虚拟机监控程序隔离的容器上运行,不会超出组织的合规性边界。
-
只要工作簿处于打开状态或超时,容器就会保持联机状态。
-
数据不会保留在 Microsoft Cloud 中。
-
Python 代码无权访问计算机、设备或帐户。
-
Python 代码没有网络访问权限。
-
Python 代码无权访问用户令牌。
-
容器具有 Python 和 Anaconda 提供的一组精选的安全库。
-
该环境使用适用于 Python 的 Anaconda 分发版,其中包含源生成的 Python 和直接从 Anaconda 提供的库。
-
作为 Python 公式的一部分,Python 代码可以通过内置 xl() 函数通过引用访问数据。 这意味着,Python 公式有权通过 Power Query 连接名称,根据单元格引用或外部数据源中的值读取工作簿中的单元格值。
-
Python 代码通过 =PY() Excel 函数返回工作簿的输出,该函数在输入函数的单元格中显示 Python 代码的结果。 Python 函数无法返回其他对象类型,如宏、VBA 代码或其他公式。
-
Python 代码无权访问工作簿中的其他属性,例如公式、图表、数据透视表、宏或 VBA 代码。
常见问题解答
在从 Internet 或不受信任的源打开工作簿时,Excel 中的 Python 遵循与 Excel 相同的安全策略。
如果打开的工作簿包含来自 Internet 的 Python 代码,则 Excel 受保护视图不会在工作簿中运行 Python 公式。 如果使用 Microsoft Defender 应用程序防护打开工作簿,则默认情况下不会运行 Python 公式。
此外,Excel 中的 Python 始终在工作簿自己的专用虚拟机监控程序隔离容器中运行 Python 公式,有助于防止对从其他打开的工作簿运行的其他 Python 代码进行潜在的交互或干扰。
容器是隔离且安全的环境,可以运行应用程序和服务,而不会影响系统的其余部分。 为了帮助确保容器的安全性和可靠性,定期更新和修补程序会应用到它们。
Python 和库通过以下方式进行更新,以帮助确保数据安全和数值结果一致。
-
修补程序应用于运行容器的基础作系统。 这有助于确保容器免受可能影响数据的漏洞和攻击。 这是自动完成的,无需输入。
将发布 Python 环境的定期更新,其中包含 Python 和 Anaconda 提供的库。 这些版本包括来自 Python 和 Anaconda 社区的最新安全修补程序和增强功能。 这些版本将通过博客文章和文档进行公布。 此操作将自动完成,无需安装,Microsoft 默认为最新环境。 现有工作簿仍将根据创建工作簿的环境版本进行计算,如果有较新的版本,系统将提示用户进行升级。 此方法有助于确保数字结果保持一致,并使你和你的组织保持最新状态。
你的隐私对于 Microsoft 非常重要。 有关更多详细信息,请参阅 Microsoft 隐私声明。
若要查看 Microsoft 365 连接体验的数据保护策略,请参阅 Microsoft 365 中的连接体验。
若要在将 Copilot 与工作簿数据配合使用时查看数据保护策略,请参阅 智能 Microsoft 365 Copilot 副驾驶®的数据、隐私和安全性。
若要了解如何处理从工作簿发送到容器的数据,请参阅 Office 所需的服务数据。
是的,Excel 中的 Python 符合一般数据保护条例 (GDPR) 和欧盟数据边界 (EUDB) 的规定。 欧盟 (EU) 的客户的容器在欧盟运行。 跨国租户可将其所有容器配置为通过 Office 配置服务在欧洲运行。 有关合规性的详细信息,请参阅 Azure、Dynamics 365 和 Microsoft 365 合规性产品/服务。
Excel 中的 Python 不处理或存储任何静态数据。 数据不会向外传输。 它不与任何第三方共享,也不用于 Copilot 的 AI 训练。
否。
可以。 有关合规性的详细信息,请参阅 Azure、Dynamics 365 和 Microsoft 365 合规性产品/服务。
用户代码在最低特权帐户下的虚拟机监控程序隔离容器中运行。 用户代码可以在容器内执行写入磁盘或执行 shell 命令等操作。 为了提高性能和可用性,会提前创建这些容器。
Excel 中的 Python 假定容器中运行的所有内容都是恶意的,并严格限制容器的输入和输出。 只能访问公式引用的数据。 只能返回值或图像。 使用容器后,就会销毁它。 会话或用户之间不会保留任何数据。
Excel 中的 Python 保留阻止发现破坏虚拟机监控程序隔离或网络边界的任何内容的权利。
其他注意事项
更新注册表以切换 Excel 中的 Python 的安全警告
以下命令演示如何更新注册表以更改 Excel 中的 Python 的安全警告设置。 在 Windows 设备上从提升的命令提示符运行命令。
-
使用此命令禁用所有安全警告。 这是 Excel 中的 Python 的默认设置。reg add HKCU\software\policies\microsoft\office\16.0\excel\security /v PythonFunctionWarnings /t REG_DWORD /d 0 /f
-
打开包含 Python 公式的工作簿时,使用此命令启用安全提示。 它在 Excel 业务栏中启用安全警告通知。reg add HKCU\software\policies\microsoft\office\16.0\excel\security /v PythonFunctionWarnings /t REG_DWORD /d 1 /f
-
使用此命令可禁止所有 Python 函数在打开的工作簿中运行。 Python 函数将返回错误 #BLOCKED!。reg add HKCU\software\policies\microsoft\office\16.0\excel\security /v PythonFunctionWarnings /t REG_DWORD /d 2 /f
Microsoft 将继续监视和调整 Excel 中的 Python,以确保你和你的数据安全。 这可能涉及将来对用户体验和注册表设置的更改。
若要及时了解最新信息并查看影响 Microsoft 产品和服务的安全漏洞报告,请参阅 Microsoft 安全响应中心更新指南。