答案 0 :(得分:8)
乍一看,这种新的“受限模式”似乎没有必要而且很突兀。
我相信它的目的是防止执行不受信任的代码 - 例如由于扩展名或在不受信任的文件上使用“调试”选项。它的工作方式似乎与 MS Office 应用程序(如 MS Word)上的受限模式类似,后者在手动启用之前会限制编辑、保存和打印文件。
来自Visual Studio Code documentation on Workspace Trust:
<块引用>受限模式试图通过禁用或限制几个 VS Code 功能的操作来阻止代码自动执行:任务、调试、工作区设置和扩展。
就我个人而言,我从来没有遇到过这样的情况,这可能会成为一个问题,并且为了一个可能有用的场合,这似乎是一个持续的麻烦。也就是说,我想有些人会更频繁地处理潜在的可疑文件。
如果您想删除该功能,只需关闭 Trust,即“控制是否在 VS Code 中启用工作区信任”。我已经试过了,它似乎完全禁用了这个新功能 - 甚至从命令面板中删除了相关选项。
您还可以控制 VS Code 在打开空环境时的工作方式以及 VS Code 在处理不受信任的文件时的行为方式。
如果您启用“信任”,您还可以配置您认为“安全”的文件夹 - 例如您常用的工作区与下载文件夹。
按照以下步骤配置您的可信文件夹:
Workspaces: Manage Workspace Trust
并在出现时选择该条目。可以在 GitHub 上找到 release notes for VS Code v1.57。还有一个 specific page dedicated to workspace trust on code.visualstudio.com。
答案 1 :(得分:3)
另一个新选项,来自 VSCode 1.58(2021 年 6 月)
<块引用>谈到配置工作区信任功能的设置,您会注意到一个新的设置,当横幅出现时要配置,以通知指示当前窗口处于受限模式。
与 security.workspace.trust.startupPrompt
设置一样,新的 security.workspace.trust.banner
允许您在熟悉工作区信任功能后完全禁用横幅,并且不需要任何指示您的哪些窗口是处于受限模式。
默认情况下,此横幅在每个工作区显示一次,并一直保留到被取消为止。
注意:Chris Dias 的新(2021 年 7 月)文章“Workspace Trust”详细介绍了“信任”概念。
<块引用>我们特别询问您是否信任此工作区的作者,因为 VS Code 无法判断代码是否是恶意的(嘿,我们只知道 1 和 0)、它来自哪里,如果您打算为项目等
另一方面,你很聪明,你知道代码的来源:你(好的)、你的公司(可能好的)、你的好友 Kai(取决于)或互联网上的一些随机人(绝对不是).
这些知识有助于使工具更智能。如果你相信作者,太好了!工具和扩展程序已获准去做他们的事情并提供神奇的体验,我们不会再给您带来麻烦。
如果不这样做,就是在告诉我们要小心 VS Code,不要执行任何代码。这就是我们所说的受限模式,在这种模式下可能有害的功能被禁用,因此您可以更安全地浏览代码并最终做出明智的决定。
注意:
<块引用>通过我们自己的测试以及对其他开发者的采访,我们发现人们通常有一个主要文件夹,他们将所有来源放在其中并认为它值得信赖。
<块引用>因此,我们添加了直接从对话框信任父文件夹的功能。
您可以一键信任它和所有子文件夹,然后您将不会再次看到信任提示。
答案 2 :(得分:1)
当工作区信任对话框提示时,如果您选择否,我不信任作者,VS Code 将进入受限模式以阻止代码执行。工作台将在顶部显示一个横幅,其中包含通过 Workspace Trust 编辑器管理您的文件夹和了解有关 Workspace Trust 的更多信息的链接。
您还会在状态栏中看到受限模式徽章。
受限模式试图通过禁用或限制多个 VS Code 功能任务、调试、工作区设置和扩展的操作来防止代码自动执行。
要查看在受限模式下禁用的功能的完整列表,您可以通过横幅中的管理链接或单击状态栏中的受限模式徽章打开工作区信任编辑器。
答案 3 :(得分:1)
这将禁用所有提示和信任模式功能,使 vscode 的行为与添加此功能之前完全一样。
图形界面 (ctrl ,)
security.workspace.trust.enabled
settings.json
"security.workspace.trust.enabled": false
答案 4 :(得分:0)
Restricted mode
表示您当前在 untrusted workspace(“受限模式”)下工作。在“受限模式”下,某些编辑器功能(调试、任务、某些扩展)被禁用,以确保您在处理来自未知来源的项目时的安全。
要禁用 Restricted mode
状态栏条目:
workspace trust
条目请注意,这只会隐藏状态栏条目,不会更改工作区的受信任状态。 This answer 详细介绍了工作区信任、如何信任工作区(也会删除状态栏条目)以及如何在需要时完全禁用工作区信任
即使在禁用 Restricted Mode
状态栏条目后,您始终可以使用 Workspace: Manage Workspace Trust
命令信任工作区