Cloudflare メンバーの権限を、個々の Cloudflare Tunnel インスタンスと Cloudflare Mesh ノードに限定できます。アカウント内のすべての Tunnel と Mesh ノードへのアカウント全体のアクセスを付与する必要はありません。これにより、プライベートネットワーキング運用での最小権限の委譲ができます。たとえば、サポート担当者に、アカウントの残りを公開せずに 1 つの Tunnel のログをストリーミングさせる、といった使い方です。
細かい権限は アカウントスコープのロール と並行する層です。置き換えるものではありません。すでに Cloudflare Access や Cloudflare Zero Trust などのアカウントレベルのロールを持つメンバーは、アカウント内のすべての Tunnel と Mesh ノードへの書き込みアクセスを引き続き持ちます。
特定の Tunnel または Mesh ノードに対する API リクエストでは、プリンシパルが いずれか を持っていればアクセスが許可されます。
- そのリソースをカバーするアカウントレベルのロール(例:
Cloudflare AccessまたはCloudflare Zero Trust)、または - その特定の Tunnel または Mesh ノードに紐付いた リソーススコープのロール
リソース列挙エンドポイント(GET /accounts/{id}/cfd_tunnel、GET /accounts/{id}/warp_connector)は、プリンシパルが少なくとも読み取りアクセスを持つリソースだけを返します。
細かい権限は、標準の メンバー管理 フローで割り当てます。
- Cloudflare ダッシュボード ↗ で、Manage Account > Members を開き、Invite Members を選ぶか、既存メンバーを開いて権限を編集します。
- 権限ポリシーを追加し、Tunnel または Mesh ノードを対象とする リソーススコープのロール を選びます。
- Scope セクションで Specific resources を選びます。
- Resource type を次のいずれかに設定します。
- Cloudflare Tunnel instances — 個々の Cloudflare Tunnel インスタンス向け。
- Cloudflare Mesh nodes — 個々の Cloudflare Mesh ノード向け。
- リソースピッカーから、1 つ以上の特定の Tunnel または Mesh ノードを選びます。
- ポリシーを保存します。
同じメンバーに複数の細かいポリシーを付けて、異なる Tunnel と Mesh ノードを異なるロールでカバーできます。
一覧エンドポイントは認可を認識します。プリンシパルが一覧エンドポイントを呼び出すと、レスポンスは少なくとも読み取りアクセスを持つリソースに絞り込まれます。
| エンドポイント | メソッド | 返す内容 |
|---|---|---|
/accounts/{account_id}/cfd_tunnel |
GET |
プリンシパルが読み取りまたは管理できる Cloudflare Tunnel インスタンス。 |
/accounts/{account_id}/warp_connector |
GET |
プリンシパルが読み取りまたは管理できる Cloudflare Mesh ノード。 |
/accounts/{account_id}/teamnet/routes |
GET |
プリンシパルが読み取りまたは管理できる Tunnel に付いているルート。 |
Tunnel と Mesh をカバーするアカウントレベルのロールを持つメンバーは、引き続きアカウント内のすべてのリソースを見られます。
- 既存のアカウントレベルのロールと API トークンは、これまでどおり機能します。
- アカウントレベルのトークンで認証する既存の自動化(例:
Cloudflare Accessトークンを使う Terraform パイプライン)は影響を受けません。 - 細かい権限はオプトインです。メンバーに付与すると能力が追加されます。アカウントレベルのロールですでに持っている能力は削除されません。
- ロールリファレンス — Tunnel と Mesh ノード向けのリソーススコープロールを含む、Cloudflare ロールの全一覧。
- ロールスコープ — アカウント、ドメイン、リソース層にわたるポリシースコープの仕組み。
- アカウントメンバーを管理する — メンバーの招待と編集フロー。
- Cloudflare Tunnel
- Cloudflare Mesh