Tunnel 权限决定了谁可以运行和管理 Cloudflare Tunnel。两个文件控制着本地管理的 Tunnel 的权限:
- 账户证书 (
cert.pem) 会在您登录cloudflared时为 Cloudflare 账户颁发。请务必谨慎选择存储此证书的位置和机器,因为此证书允许用户创建、删除和管理该账户的所有 Tunnel。 - Tunnel 凭据文件 (
<TUNNEL-UUID>.json) 会在您创建 Tunnel 时为该 Tunnel 颁发。凭据文件仅允许用户运行该特定的 Tunnel,无法执行其他操作。因此,作为管理员,您可以与负责运行 Tunnel 的用户共享 Tunnel 凭据。
请参阅下表,对比这两个文件以及它们各自的设计用途。
| 账户证书 | Tunnel 凭据 | |
|---|---|---|
| 文件名 | cert.pem |
<TUNNEL-UUID>.json |
| 用途 | 对您的 Cloudflare 账户验证您的 cloudflared 实例 |
验证与其关联的 Tunnel |
| 作用域 | 账户级 | 仅限特定 Tunnel |
| 文件类型 | .pem |
.json |
| 存储于 | 默认目录 | 默认目录 |
| 在运行时颁发 | cloudflared tunnel login |
cloudflared tunnel create <NAME> |
| 有效期 | 至少 10 年,且其中包含的服务令牌在被吊销前一直有效 | 永久有效 |
| 需要用于 | 管理 Tunnel(例如创建、路由、删除和列出 Tunnel) | 运行 Tunnel。创建配置文件。 |
Tunnel 所有权绑定到在对 cloudflared 进行身份验证时为其颁发 cert.pem 文件的 Cloudflare 账户。如果 Cloudflare 账户中的某个用户创建了 Tunnel,则同一账户中能够访问该账户 cert.pem 文件的任何其他用户都可以删除、列出或以其他方式管理其中的 Tunnel。
您的账户证书 (cert.pem) 包含一个 API 令牌,用于授权 cloudflared 管理您的 Cloudflare 账户中的 Tunnel。要吊销账户证书,请删除与您的 Tunnel 关联的 API 令牌:
- 登录 Cloudflare 仪表板 ↗,转到 My Profile(我的个人资料) > API Tokens(API 令牌)。
- 找到适用于您的区域和账户的 Cloudflare Tunnel API Token 或 Argo Tunnel API Token。
- 选择三个点 > Delete(删除)。
一旦删除该令牌,cloudflared 将无法再使用旧的 cert.pem 文件来读取或编辑您账户中的 Tunnel。要生成新的令牌和 cert.pem 文件,请运行 cloudflared tunnel login。
为账户创建、删除和配置隧道所需的最低权限:
将流量路由到公共主机名以及执行 cloudflared login 所需的额外权限: