跳转到内容
本站为社区维护的非官方中文翻译,与 Cloudflare, Inc. 无关联。本站不提供账户登录,请勿在任何非官方站点输入您的 Cloudflare 账户信息。官方文档:developers.cloudflare.com

Gateway 的细粒度权限

最后更新 查看 MarkdownAgent 设置

你可以将 Cloudflare 成员权限限定到单个 Gateway 流量策略和列表,而无需授予对每个 Gateway 资源的账户范围访问权限。例如,你可以让安全分析师管理一组特定的 HTTP 策略,同时不暴露 DNS 策略或账户级配置。

细粒度权限是与账户范围角色平行的一层,并不会取代后者。已经拥有账户级角色(如 Cloudflare Gateway 或 Cloudflare Zero Trust)的成员,仍对账户中的每个 Gateway 资源拥有写入权限。

账户级角色

Gateway 提供专用的账户级角色,可在整个账户范围内授予对特定资源类型的访问权限,而无需使用更宽泛的 Cloudflare Gateway 或 Cloudflare Zero Trust 角色。

角色 访问权限
Zero Trust Gateway Read Only 对所有 Gateway 资源的只读访问。
Zero Trust Account Lists Admin 对所有 Gateway 列表的完整创建、编辑和删除权限。
Zero Trust DNS Location Admin 对所有 DNS 位置的完整创建、编辑和删除权限。
Zero Trust DNS Policies Admin 对所有 DNS 策略的完整创建、编辑、删除和重新排序权限。
Zero Trust HTTP Policies Admin 对所有 HTTP 策略的完整创建、编辑、删除和重新排序权限。
Zero Trust Network Policies Admin 对所有网络策略的完整创建、编辑、删除和重新排序权限。
Zero Trust Resolver Policies Admin 对所有解析器策略的完整创建、编辑、删除和重新排序权限。
Zero Trust Egress Policies Admin 对所有出站(egress)策略的完整创建、编辑、删除和重新排序权限。
Zero Trust Proxy Endpoints Admin 对所有代理端点的完整创建、编辑和删除权限。

这些角色会出现在角色参考中。

资源范围角色

除账户级角色外,你还可以向成员授予对特定单个策略或列表 的访问权限。例如,你可以允许团队成员编辑一条 HTTP 隔离策略,而不暴露账户中的其他策略。

资源范围角色覆盖对现有资源的读取和编辑权限。它们不授予创建新策略或列表的能力。要创建新资源,成员需要账户级角色。

Gateway 支持以下资源范围权限:

  • 单个 Gateway 列表,允许成员编辑策略表达式中使用的特定列表。
  • 单个 Gateway 策略,允许成员编辑特定流量策略。适用于所有策略系列:
    • DNS 策略
    • HTTP 策略(包括隔离策略)
    • 网络策略
    • 解析器策略
    • 出站(egress)策略

工作原理

对于针对特定 Gateway 策略或列表的任何 API 请求,如果主体满足以下任一 条件,则将被授予访问权限:

  • 涵盖该资源的账户级角色(例如 Zero Trust HTTP Policies Admin、Cloudflare Gateway 或 Cloudflare Zero Trust),或者
  • 绑定到该特定策略或列表的资源范围角色。

列表端点仅返回主体至少拥有读取权限的策略和列表。

授予细粒度权限

细粒度权限通过标准成员管理流程进行分配。

  1. 在 Cloudflare 仪表板 ↗中,转到 Manage Account(管理账户) > Members(成员) 并选择 Invite Members(邀请成员),或打开现有成员以编辑其权限。
  2. 添加权限策略,并选择针对 Gateway 策略或列表的资源范围角色。
  3. 在 Scope(范围) 部分中,选择 Specific resources(特定资源)。
  4. 将 Resource type(资源类型) 设置为以下之一:
    • Gateway policies(Gateway 策略),将访问范围限定到单个流量策略(DNS、HTTP、网络、解析器或出站)。
    • Gateway lists(Gateway 列表),将访问范围限定到单个列表。
  5. 从资源选择器中选择一个或多个特定策略或列表。
  6. 保存策略。

你可以将多个细粒度策略附加到同一个成员,以便用不同角色覆盖不同的 Gateway 资源。

资源枚举

列表端点具有授权感知能力。当主体调用列表端点时,响应会过滤为他们至少具有读取访问权限的资源。

端点 方法 返回
/accounts/{account_id}/gateway/rules GET 主体可以读取或管理的 Gateway 策略。
/accounts/{account_id}/gateway/lists GET 主体可以读取或管理的 Gateway 列表。

拥有涵盖 Gateway 的账户级角色的成员,仍可看到账户中的所有资源。

Browser Isolation 策略

隔离策略是带有 Isolate(隔离) 或 Do Not Isolate(不隔离) 操作的 Gateway HTTP 策略。所有 Gateway HTTP 策略权限同样适用于隔离策略,Browser Isolation 没有单独的权限面。

每条策略的设置(复制/粘贴、文件下载/上传、键盘、打印)属于 HTTP 策略对象的一部分,因此能编辑该策略的人也能编辑这些设置。

要委派特定隔离策略的管理权限,请为该条 HTTP 策略向成员授予资源范围角色。

向后兼容性

  • 现有的账户级角色和 API 令牌继续像以前一样工作。
  • 使用账户级令牌进行身份验证的现有自动化(例如,使用 Cloudflare Gateway 令牌的 Terraform 流水线)不受影响。
  • 细粒度权限是可选加入的。向成员授予细粒度权限只会增加能力,绝不会移除该成员从账户级角色中已有的能力。

相关资源

  • 角色参考 —— Cloudflare 角色的完整列表,包括针对 Gateway 策略和列表的资源范围角色。
  • 角色范围 —— 策略范围如何在账户、域和资源层之间工作。
  • 管理账户成员 —— 成员邀请和编辑流程。

这篇文档对您有帮助吗?