Skip to main content

MCP 专用注册表强制实施

了解使用专用注册表服务器执行 MCP 专用注册表的逻辑和限制。

重要

此功能已进入 公开预览 ,不建议使用此方法来限制对 MCP 服务器的访问。 更安全的正式发布方法是在企业 managed-settings.json 文件中定义设置。 请参阅“为企业配置 MCP 服务器允许列表”。

支持的表面

下表列出了支持 MCP 专用注册表功能的位置。

Surface注册表显示允许列表强制实施
Copilot 命令行界面(CLI)
v1.0.11+
Copilot云代理
Eclipse
v4.38+
JetBrains
v1.5.64+
Visual Studio
v18.4.0+
VS Code
v1.109.3+
Xcode
v0.47.0+

注意

对于 Eclipse、JetBrains 和 Xcode,Copilot 的预发行版本支持 MCP 管理功能。

当前执行限制

MCP 专用注册表强制目前具有以下限制:

  • 强制措施仅基于服务器名称/ID 匹配,可通过编辑配置文件来绕过该匹配项。
  • 禁止安装非注册表服务器的严格强制措施尚不可用。 有关用户无法在本地重写的更严格的基于 URL 的强制措施,请参阅 为企业配置 MCP 服务器允许列表

强制使用本地服务器

MCP 专用注册表强制实施适用于远程和本地 MCP 服务器。 配置“仅注册表”时,本地服务器必须包含在注册表中,其服务器 ID 必须与已安装的服务器 ID 完全匹配。 服务器的规范 ID 通常在其文档或清单文件中定义。

具有多个席位的用户的策略解决

MCP 专用注册表执法始终与分配 GitHub Copilot 席位的组织或企业相关联。 如果用户有多个席位, GitHub 则会自动解决冲突并应用单个活动策略和注册表。

解决逻辑为:

  1. 作用域:父企业设置的策略将替代组织设置的策略。 企业策略会渗透到该企业中的所有组织和成员。
  2. 强制严格性:由于Registry onlyAllow all更严格,因此始终优先。
  3. 注册库上传的时间:如果两个策略具有相同的范围和严格性,将应用最近上传的注册库。