11 为 Claude 配置工具访问权限
Access bundle(访问包)是 Claude Tag 操作所需的凭据集合。了解如何创建专用服务账号、首先连接哪些工具,以及如何通过允许的网站限制访问范围。
export const BetaNote = () => Claude Tag is in public beta. Features and behavior described here may change before general availability.;
Claude 在你连接任何工具之前就能开始工作。仅凭 Slack 内容,它就能帮团队快速了解频道或话题的上下文、对请求频道进行分流、将讨论转化为文档,以及从频道历史中追踪项目进度。连接器能让它做得更多——每增加一个连接,Claude 就能在一个新的系统中采取行动。
11.1 创建你的第一个 Access bundle
Access bundle 是一组命名的凭据、代码仓库授权和指令,Claude 在该包覆盖的频道中使用这些内容。连接是包中的一个服务凭据(例如 Datadog API 密钥或数仓服务账号),Claude 用它在包的作用域下的任何频道中操作该服务。
如果你正处于初始设置中,可以直接在那里添加这些连接,跳转到决定连接什么。以下步骤用于在设置之外、直接在管理页面上创建包。
打开 [`claude.ai/admin-settings/claude-tag`](https://claude.ai/admin-settings/claude-tag)。在 **Claude Tag's access** 下,**Slack** 标签页显示你的作用域(组织级别的 **Slack** 行、每个工作区及其下的频道)。**Slack** 行展开为 **Default Slack access**。
在你希望包生效的作用域上,点击 **Access bundles** 旁边的 **+**,选择 **Create new bundle**。这一步会同时创建包并将其附加到该作用域;包对话框随即打开。
点击 **Untitled access bundle** 旁边的铅笔图标进行重命名(控制台中 "profile" 和 "Access bundle" 可互换使用)。
你也可以在左侧导航栏的 Access bundles 页面上点击 Create 创建一个未附加的包,之后再将其附加到作用域。
连接属于代理身份,而不是任何个人。个人 claude.ai 连接器仅在私信(DM)中生效。
建议根据包授予的权限来命名,因为你将在决定将哪些包绑定到频道时看到这个名字:data-readonly(数据只读)、github-write(GitHub 写入)、monitoring(监控)、gtm-tools(GTM 工具)。当同一个包服务于多个团队时,能力名称更有意义;如果某个团队需要完整的访问权限作为复用单元,则可以用团队名(如 devprod-team)。
11.1.1 为什么需要创建多个包
多个包让你能按能力授予访问权限,并按频道组合。例如,有分开的 data-readonly、github-write 和 monitoring 包:#platform-eng 获得全部三个,#gtm-analytics 只获得 data-readonly,#incidents 获得 monitoring 加 github-write。每个凭据只定义一次,因此轮换 Datadog 密钥只需编辑一个包而不影响其他包。
包除了 Credentials 和 Repositories 标签外,还有 Domains、Plugins 和 Instructions 标签。在包的 Instructions 中放置应跟随凭据的指导;对于与特定位置相关的指导,使用按作用域的自定义指令。
11.2 决定连接什么
六个类别涵盖了大多数团队交给 Claude 的工作。任何有 HTTP API 的服务都可以添加;从与你的团队已有工作方式匹配的类别开始。
只读连接在组合使用时最有用:一个关联了工单、部署和错误率的答案需要三个系统都连接。以只读方式连接多个系统,与在任何地方授予写入权限,是不同的决定。
| 连接类别 | 示例 | 建议权限 | 增加的能力 |
|---|---|---|---|
| 知识和文档 | Google Drive, Notion, Confluence | 只读 | 基于设计文档、运维手册和历史决策的回答 |
| 代码 | GitHub, GitLab | 读写 | 分支、Pull Request、代码审查、CI 跟进。GitHub 通过 Claude GitHub App 管理 |
| 数据仓库 | BigQuery, Snowflake, Redshift | 只读 | 在话题中用图表回答数据问题;定期报告 |
| 监控 | Sentry, Datadog, PagerDuty | 只读 | 用于调试和事件处理的日志、指标和错误 |
| 任务跟踪 | Linear, Asana, Jira | 读写 | 在工作所在系统中创建工单和发布状态更新 |
| 市场运营(GTM) | HubSpot, Gong, Salesforce | 只读 | 用于客户问题的销售管道和客户状态信息 |
每个服务的详细指南(包括凭据字段和允许的网站值)在连接指南中。
11.2.1 为每个服务创建专用账号
你连接的凭据是 Claude 在该工具中的账号,不是你自己的。在包作用域覆盖的频道中,任何人都可以通过 Claude 使用它,因此请使用你控制的专用身份,而非个人登录。
对于每个工具,为代理创建专用身份,而不是复用共享的 bot 密钥。具体方式取决于服务。
| 服务类型 | 推荐模式 |
|---|---|
| Google Workspace(Drive、Calendar、Docs) | 创建一个虚拟用户如 claude@yourcompany.example.com,共享它需要的文件夹和日历。如果使用带域级委派的 GCP 服务账号密钥,请将委派限制为单个主体和最小 OAuth scope;否则 DWD 可以模拟你域中的任何用户。 |
| 原生支持服务账号的 SaaS(Datadog、Snowflake、Sentry) | 在该工具的管理后台创建服务账号,将其范围限定为项目或只读角色,使用其 API 密钥 |
| 不支持服务账号的 SaaS(Linear、Asana) | 为代理创建一个专用用户席位,使用该席位的个人访问令牌 |
| Cloud API(AWS、GCP) | 创建一个专用 IAM 主体,策略范围尽可能缩小到覆盖所需工作 |
专用账号让代理的活动在每个工具的日志中可单独审计,并且可以在不影响任何人的情况下撤销其访问。在以下类别中标明只读的地方,请授予只读权限;Claude 永远无法超出密钥允许的范围。
如果管理某个服务的人不是你,可以发给他们这段话:
text wrap theme={null} Please create a service account in [service] for our Claude agent, scoped to [read-only / the specific project], and send me the credential through [your secrets channel]. It will be used by an org-managed agent, with the credential injected at a network proxy; the agent itself never holds the key. Details: https://claude.com../admins/add-connections.qmd
11.2.2 限制对特定资源的访问
连接本身没有设置来控制 Claude 在工具内可以访问哪些页面、文件夹或项目。连接的可达范围就是所连接账号在该工具中能访问的所有内容。要将 Claude 限制在子集中,请缩小账号权限:
- Confluence 或其他 wiki: 只给服务账号 Claude 应该看到的空格或页面的只读权限
- Google Drive: 只与专用 Google 账号共享相关文件夹;参见 Google Workspace
- 项目或工单跟踪器: 只将服务账号添加到它需要的项目中
连接上的主机、路径和方法限制控制 Claude 可以调用哪些 API 端点,而不是这些端点返回哪些记录。请将它们与账号级别的范围控制配合使用,而不是替代。
对于共享或外部频道,将缩小范围的连接放在自己的包中,并仅将该包附加到该频道,这样凭据在其他地方不可用。
11.3 连接列表中没有的服务
Credentials 标签上有 Connect 按钮的服务是预设项,并非 Claude 可以连接的全部。任何有 API 的应用都可以连接:点击标签底部 Custom tool 旁边的 Connect。表单字段、凭据类型和如何添加自定义 MCP 服务器的说明,请参见自定义连接指南。
11.4 允许无凭据访问的主机
Claude 在隔离的沙箱中执行频道工作。网络请求是沙箱发送到主机的流量,例如 API 调用、curl 抓取或包安装。在 Claude 从频道发起请求之前,目标主机必须被以下三个设置之一允许:
- 域名条目: 此包 Domains 标签上列出的主机名。发往该主机的请求无需附加凭据即可通过;参见添加域名。
- 连接: 此包 Credentials 标签上的凭据。匹配其允许的网站的请求会附上该凭据通过。
- 作用域的环境: 作用域会话运行的计算配置,自带网络访问设置,默认为 Trusted access 级别,覆盖常见的包注册表。发往其允许主机的请求无需凭据通过;参见通过环境实现广泛网络访问。
如果以上三个设置都不允许某个主机,该主机将不可达。当多个包附加到一个作用域时,所有包的条目都适用。网络搜索不受以上设置管辖,因为搜索发生在 Anthropic 的服务器上而非沙箱中;参见网络搜索与网络请求。
11.4.1 添加域名
域名条目为此包覆盖的每个频道允许一个主机名。添加后,从这些频道的沙箱发往该主机的请求无需附加凭据即可通过。
操作路径:在 claude.ai/admin-settings/claude-tag 的 Claude Tag’s access 下,从覆盖该频道的作用域打开包;如果该作用域还没有包,先创建一个。在包的 Domains 标签上填写表单并点击 Add domain:
- Domain: 要允许的主机名;通配符可用作最左边的标签,如
*.example.com,覆盖任意深度的子域名但不包含example.com本身 - Ports: 仅当服务监听非 443 端口时需要
你不必预先预测完整列表。当请求被阻止时,Claude 会在话题中说明并指出主机名;将该主机添加到此处然后重试;如果仍被阻止,开启一个新的话题。
典型条目是工作无需密钥即可调用的主机,如文档站点或公共 API。常见的包注册表通常已通过环境的 Trusted access 默认设置可达,需要凭据的主机应放在连接中。条目显示在表单下方,可单独移除。
管理员可以编辑现有包的 Domains 标签;创建包本身需要 Owner 角色。
Agent Proxy 仅支持 HTTP 和 HTTPS。非 HTTP 协议(如 SSH)无法通过代理,因此在此处列出主机并不能使其通过 SSH 可达。
11.4.2 通过环境实现广泛网络访问
域名条目逐个允许主机。对于工作需要更多网络访问的作用域,环境设置授予更广泛的访问权限。环境是作用域会话运行的沙箱化计算配置,自带网络访问设置。
新环境的网络访问级别为 Trusted access,允许一组已文档化的包注册表和开发者主机。频道已经可以在没有域名条目的情况下访问 pypi.org 和 registry.npmjs.org 等主机。
要给作用域更广泛的访问权限,创建一个具有更宽松级别的环境并在作用域上固定它。
从 [管理设置](https://claude.ai/admin-settings) 的 **Cloud environments** 页面,添加一个[组织共享环境](https://code.claude.com/docs/en/cloud-environments#organization-shared-environments)并设置其网络访问级别。**Full access** 允许任何域名;其他级别参见 [Claude Code 文档中的网络访问](https://code.claude.com/docs/en/cloud-environments#network-access)。此步骤需要 Owner 或管理员权限。
不要在 [`claude.ai/code`](https://claude.ai/code) 创建环境:在那里创建的环境属于你的个人账号,不会出现在选择器中。
打开作用域的 **Advanced** 部分,使用 **Environment** 选择器。未固定时,会话使用组织默认值。
环境必须范围为组织级,而非个人账号。如果会话没有使用你固定的环境,请参见环境故障排除条目。
11.4.3 允许所有主机
允许所有出站流量默认关闭;请联系你的 Anthropic 客户团队为你的组织启用。启用后,你可以输入 * 作为域名。* 条目需要分配端口;它允许那些端口上的任何主机,不附加凭据。
* 生效时:
- 没有连接覆盖的主机请求无需附加凭据通过。
*条目永远不会携带凭据,连接的凭据仍然只发送到其允许的网站。- 私有和内部网络地址以及云元数据端点仍然被阻止。
如果未启用允许所有出站流量,保存 * 会失败并显示通用错误 “Couldn’t add domain.”,不会说明原因。如果该功能后来被禁用,你可以禁用现有的 * 条目或缩小到特定主机,但不能保持其活跃状态。
11.4.4 网络搜索与网络请求
网络搜索不需要域名条目、连接或环境设置。它是 Anthropic 内置的网络搜索工具,搜索发生在 Anthropic 的服务器上而非频道的沙箱中,因此没有允许层适用。
打开页面不是搜索的一部分。搜索返回匹配页面的内容,Claude 阅读并引用;从沙箱抓取 URL 与任何其他网络请求一样,主机需要允许层。Claude 可能从搜索结果的页面回答,但报告无法打开相同的链接。
如果工作需要 Claude 打开并阅读页面而非从搜索结果回答,请通过上述设置允许这些主机。网络搜索与网络请求涵盖了这种分离背后的会话机制。
11.5 添加连接
在包的 Credentials 标签上,点击列出的服务旁边的 Connect,或对于列表中没有的服务点击 Custom tool。
对于自定义连接,选择凭据类型:
| 凭据类型 | 用途 |
|---|---|
| Bearer | API 密钥和 OAuth Bearer Token。大多数 SaaS REST API。 |
| Basic | HTTP Basic 认证。 |
| Body parameter | API 期望在请求体或查询字符串中传递的令牌,而非 Header。 |
| AWS SigV4 | 使用访问密钥对向 AWS API 发送签名请求。 |
| GCP access token(带 Service Account Key) | 通过服务账号 JSON 密钥访问 Google Cloud API。Google Workspace 服务如 Drive 和 Calendar 也使用此方式;参见 Google 指南。 |
| GCP IAP(带 Service Account Key) | 位于 Identity-Aware Proxy 后面的 Google Cloud 服务。 |
| OAuth 2.0 JWT bearer | 服务器到服务器的 OAuth。 |
| OAuth 2.0 client credentials | 服务器到服务器的 OAuth。Salesforce 使用此方式。 |
| OAuth 2.0 authorization code(三方) | 以管理员身份登录一次;代理即以此账号操作。 |
| GitHub App | GitHub 仓库;参见 Configure GitHub access。 |
凭据由 Agent Proxy 在网络边界注入;模型和沙箱不会获得密钥。发往你未允许的主机的请求会被阻止,不会发送。参见Agent Proxy 的工作原理。
11.5.1 设置允许的网站
列出连接凭据可以发送到的主机。通配符仅可用作最左边的标签,如 *.example.com;它覆盖任意深度的子域名但不包含 example.com 本身。你不能在此处单独输入 *;凭据始终限于特定主机。要让 Claude 无凭据访问任何主机,参见允许所有主机。
要更改连接名称或允许的网站,在包的 Credentials 标签上打开该连接行的 ⋮ 菜单,选择 Edit。同一菜单中有 Rotate secret(在凭据类型支持时)和 Delete。
保存前请核对主机与你的账号区域。某些预设会填写一个默认主机,可能与你账号的区域不匹配;例如 Datadog 密钥只对你账号的 Datadog 站点有效,如 api.datadoghq.com 或 api.datadoghq.eu。
11.5.2 按路径或方法限制
保存后,你可以按 URL 路径或 HTTP 方法限制连接,例如允许 GET 但不允许 DELETE,以实现比主机级别更精细的控制。
11.5.3 连接与 claude.ai 连接器的区别
连接库列出的是代理可以持有的凭据类型,而非你的组织或其成员在 claude.ai 上设置的连接器。连接验证的是代理而非个人;某人个人 claude.ai 账号上的连接器不会出现在这里。对于 Google 服务,使用服务账号密钥或 OAuth 登录选项,两者都为代理提供一个凭据来访问频道所需的数据。个人连接器在私信中继续工作。
11.6 附加插件
连接授予访问权限;插件教 Claude 如何善用该访问权限。插件是一组技能——针对特定工具或遵循特定流程的可复用指令——你将插件附加到携带连接的同一个 Access bundle 或作用域上,这样凭据就和如何使用它的指引一起到达。
例如,Datadog API 密钥使 API 可达,而 Datadog 插件告诉 Claude 哪些端点回答哪些问题。被覆盖频道的会话会自动获取已附加的插件;频道成员无需安装或启用任何东西。
Anthropic 为常用工具提供插件,你也可以从技能仓库添加自己的插件。要给 Claude 组织级技能,将其打包成插件。
插件在两处附加,行为有所不同:
- 直接在作用域上添加的插件(作用域面板上的插件标签)在添加后立即在那里启用。
- 包的 Plugins 标签列出组织可用的插件,每个都需要你打开开关才会启用。
在组织级别注册插件使其可用,而非活跃。只有在包中启用它或作用域直接添加它时才生效。
添加或移除插件和技能仅对新话题生效。已经在运行的话题保持其开始时的设置;启动新话题以获取变更。
Claude 不能在话题内部发布新的技能版本;该更新在管理设置中进行。
11.7 验证连接已保存
- 每个连接列在包中,带有你设置的主机。
- 新话题会自动获取新连接。现有话题不会被告知在其启动后添加的连接,但连接在那里仍然有效;通过名称要求 Claude 使用该服务即可。
11.8 相关资源
- 设置支出限额:为你刚添加的连接提供资金
- 配置 GitHub 访问:通过 Claude GitHub App 管理仓库访问
- 代理身份的工作原理:你刚添加的凭据如何在不进入沙箱的情况下到达 Claude