Access Control Reference
__CAPGO_KEEP_0__のセットアッププロンプトをコピーして、インストール手順とこのプラグインのフルマークダウンガイドを取得します。
Capgoは ロールベースのアクセス制御(RBAC)を使用して 各チームメンバーが何ができるかを管理します。ロールは 範囲 — 組織全体から単一のバンドルまで
For a visual walkthrough of managing members in the dashboard, see 組織.
権限範囲
権限範囲のセクションすべてのロールは、権限範囲によって決まるリソースにアクセスできるものです。
| 権限範囲 | 適用対象 | 使用例 |
|---|---|---|
| 組織 | 全体の組織とすべてのアプリ | 共同創業者はSuper Admin、会計士はBilling Managerを割り当てます |
| アプリ | __CAPGO_KEEP_0__ | __CAPGO_KEEP_0__ |
| __CAPGO_KEEP_0__ | __CAPGO_KEEP_0__ | __CAPGO_KEEP_0__ staging __CAPGO_KEEP_0__ |
| __CAPGO_KEEP_0__ | 1つのアプリとそのチャンネル | 1つのアプリに取り組むコントラクターはApp Developerを取得します |
チャンネル 1つのアプリ内にある単一のチャンネル QAエンジニアは、チャンネルのみを管理します
組織ロール
組織ロールメンバーを招待する際に割り当てられるロールです。組織全体へのアクセスを許可します。
| ロール | 内部名 | 説明 |
|---|---|---|
| スーパーアドミン | org_super_admin | オーナーに相当する。組織を削除、請求管理、アプリの移行を含むフルコントロール。組織を作成したユーザーに自動的に割り当てられます。 |
| 管理者 | org_admin | フル管理者 — メンバー、アプリ、チャンネルを管理できます。組織を削除、請求管理を更新、ユーザーをスーパーアドミンに昇格することはできません。 |
| 請求管理者 | org_billing_admin | 請求管理のみアクセス:請求情報、請求書、請求アクセスログを表示および更新できます。アプリやメンバーへのアクセスはありません。 |
| メンバー | org_member | 組織とそのすべてのアプリへの読み取り専用アクセス。 |
組織の権限マトリックス
組織の権限マトリックス| 権限 | 説明 | スーパーアドミン | 管理者 | 請求管理者 | メンバー |
|---|---|---|---|---|---|
org.read | 組織を表示 | ✅ | ✅ | ✅ | ✅ |
org.update_settings | 組織名、ロゴ、管理メールアドレスの編集 | ✅ | ✅ | ❌ | ❌ |
org.delete | 組織を永久に削除する | ✅ | ❌ | ❌ | ❌ |
org.read_members | メンバーの一覧を表示する | ✅ | ✅ | ❌ | ✅ |
org.invite_user | 新しいメンバーを招待する | ✅ | ✅ | ❌ | ❌ |
org.update_user_roles | メンバーの役割を変更する (管理者はスーパーアドミンに昇格できない — ロール階層によりブロックされる) | ✅ | ✅ | ❌ | ❌ |
org.read_billing | 請求情報と現在のプランを表示する | ✅ | ✅ | ✅ | ❌ |
org.update_billing | 支払い方法とプランを更新する | ✅ | ❌ | ✅ | ❌ |
org.read_invoices | 請求書を表示する | ✅ | ✅ | ✅ | ❌ |
org.read_audit | 組織の活動ログを表示する | ✅ | ✅ | ❌ | ❌ |
org.read_billing_audit | 請求関連の監査ログを表示する | ✅ | ✅ | ✅ | ❌ |
アプリロール
アプリロールのセクション1つのアプリに限定されます。チームメンバーが1つのアプリのみで作業するようにする場合に使用してください。
| ロール | 内部名 | 説明 |
|---|---|---|
| App管理者 | app_admin | __CAPGO_KEEP_0__ |
| アプリ開発者 | app_developer | __CAPGO_KEEP_0__ |
| アプリアップローダ | app_uploader | __CAPGO_KEEP_0__ |
| アプリ読み取り者 | app_reader | __CAPGO_KEEP_0__ |
アプリ権限マトリックス
__CAPGO_KEEP_0__| 権限 | 説明 | App管理者 | App開発者 | Appアップローダー | Appリーダー |
|---|---|---|---|---|---|
app.read | アプリの詳細、統計、メタデータを表示 | ✅ | ✅ | ✅ | ✅ |
app.update_settings | アプリの設定を編集 | ✅ | ❌ | ❌ | ❌ |
app.read_bundles | アップロードしたバンドルのリストを表示 | ✅ | ✅ | ✅ | ✅ |
app.upload_bundle | 新しいバンドルバージョンをアップロード | ✅ | ✅ | ✅ | ❌ |
app.create_channel | 新しいチャンネルを作成 | ✅ | ❌ | ❌ | ❌ |
app.read_channels | チャンネルを表示 | ✅ | ✅ | ✅ | ✅ |
app.read_logs | アップデート配信ログを表示 | ✅ | ✅ | ✅ | ✅ |
app.manage_devices | デバイスを割り当て、上書き、または解除 | ✅ | ✅ | ❌ | ❌ |
app.read_devices | __CAPGO_KEEP_0__リストを表示 | ✅ | ✅ | ✅ | ✅ |
app.build_native | __CAPGO_KEEP_0__のネイティブクラウドビルドをトリガー | ✅ | ✅ | ❌ | ❌ |
app.read_audit | __CAPGO_KEEP_0__のアプリレベルアクティビティログを表示 | ✅ | ✅ | ✅ | ✅ |
app.update_user_roles | __CAPGO_KEEP_0__のアプリスコープロール割り当てを管理 | ✅ | ❌ | ❌ | ❌ |
bundle.delete | __CAPGO_KEEP_0__を削除 | ✅ | ❌ | ❌ | ❌ |
チャンネルロール
チャンネルロールのセクション1つのチャンネルにスコープされている。特定のリリースチャンネルへのターゲットされたアクセスを与えるのに役立ちます。
| ロール | 内部名 | 概要 |
|---|---|---|
| チャンネル管理者 | channel_admin | __CAPGO_KEEP_0__ |
| チャンネルビューア | channel_reader | 読み取り専用 — 現在のバンドル、履歴、強制デバイス、監査ログ。 |
チャンネル権限マトリックス
権限| 概要 | チャンネル管理者 | チャンネルビューア | チャンネルとその現在のバンドルを表示します。 |
|---|---|---|---|
channel.read | __CAPGO_KEEP_0__ | ✅ | ✅ |
channel.update_settings | チャンネル設定を編集 (プラットフォームの切り替え、更新ポリシー…) | ✅ | ❌ |
channel.delete | チャンネルを削除 | ✅ | ❌ |
channel.read_history | バンドル割り当ての履歴を表示 | ✅ | ✅ |
channel.promote_bundle | チャンネルに現在のバンドルを設定 | ✅ | ❌ |
channel.rollback_bundle | 前のバンドルに戻す | ✅ | ❌ |
channel.manage_forced_devices | 特定のデバイスにこのチャンネルを強制 | ✅ | ❌ |
channel.read_forced_devices | 強制デバイスの一覧を表示 | ✅ | ✅ |
channel.read_audit | チャンネル活動ログを表示 | ✅ | ✅ |
バンドルロール
バンドルロールバンドルバージョンに特定され、ほとんどのチームはアプリレベルロールを使用するため、まれに必要
| 内部名 | 説明 | バンドル管理者 |
|---|---|---|
| 特定のバンドルのメタデータを読み取り、更新、削除できます。 | bundle_admin | バンドルビューア |
| 特定のバンドルの読み取り専用アクセス | bundle_reader | チャンネル権限のオーバーライド (ダッシュボード) |
__CAPGO_KEEP_0__
チャンネル許可のオーバーライド (ダッシュボード)ダッシュボードでは、デフォルトではユーザーのアプリロールによってチャンネルへのアクセスが決定されます。より細かい制御が必要な場合は、 ユーザーまたはグループごとに特定のチャンネル許可をオーバーライドできます。 アプリロールを変更することなく
オーバーライドは、アプリの アクセス タブから、ユーザーに隣接するチャンネル許可ボタン(盾アイコン)をクリックして設定されます。詳細は Organization — Overriding channel permissions を参照してください。
オーバーライド可能な許可
許可| 許可 | 概要 | デフォルトの動作 |
|---|---|---|
| 読む | __CAPGO_KEEP_0__とその現在のバンドルを表示 | __CAPGO_KEEP_1__から継承 |
| 履歴 | __CAPGO_KEEP_0__のバンドル割り当て履歴を表示 | __CAPGO_KEEP_1__から継承 |
| __CAPGO_KEEP_0__を関連付け | __CAPGO_KEEP_0__を__CAPGO_KEEP_0__に設定または変更 | __CAPGO_KEEP_1__から継承 |
各権限を次のいずれかに設定できます
- Default —
- Allow — explicitly grant, regardless of the app role
- Deny — explicitly block, regardless of the app role
This lets you, for example, give an App Reader the ability to associate bundles on the staging channel without promoting them to App Developer.
Role hierarchy
Section titled “Role hierarchy”Roles form a hierarchy. A parent role inherits all permissions の子どもたち。 これは、 org_admin ができることを意味します。 app_admin ができることを意味します。 channel_admin ができることを意味します。
Super Admin (org_super_admin) └── Admin (org_admin) └── App Admin (app_admin) ├── App Developer (app_developer) │ └── App Uploader (app_uploader) │ └── App Reader (app_reader) ├── Bundle Admin (bundle_admin) │ └── Bundle Viewer (bundle_reader) └── Channel Admin (channel_admin) └── Channel Viewer (channel_reader)実際の動作:
- An 管理者 組織レベルで ができることを意味します。 アプリ管理者
- ができることを意味します。 すべてのアプリに。 App Admin 特定のアプリで一切のことができる Channel Admin そのアプリ内のすべてのチャネルで一切のことができる
- An アプリ開発者は App Uploader ができることの他にさらに多くのことができる 階層は下方のみ流れます
— a __CAPGO_KEEP_0__ __CAPGO_KEEP_0__ channel_admin __CAPGO_KEEP_0__が組織レベルの権限を取得することはなく、Appレベルロールを保持している場合でも。
グループ
「グループ」セクションユーザーごとにロールを割り当てるのではなく、グループを作成してロールをグループに割り当てることができます。グループのメンバー全員が自動的にロールを継承します。 グループのしくみ セクション「グループのしくみ」
グループは1つの組織に属します
— 複数の組織を跨ぐことはできません。- グループはロールバインディングを保持できます Groups Section titled “Groups”
- Instead of assigning roles to each user individually, you can create 任意のスコープ: org, app, channel, or bundle. 例えば、グループは App A に "App Developer" の役割と App B の "channel" に "Channel Admin" の役割を割り当てることができます。 アプリ開発者 チャネル管理者 権限が評価される際、ユーザーのすべてのグループメンバーシップは透明性を持って解決されます。必要な権限がユーザーのグループのいずれかで許可されている場合、許可されます。 ユーザーは
staging複数のグループ - に属することができ、すべてのグループからの権限は加算されます。
- グループベースの権限は にのみ適用されます。
- Group-based permissions only apply to ユーザー原理者 — API キーはグループロールを継承しません。
グループを使用するとき
「グループを使用するとき」のセクション| シナリオ | グループなし | グループあり |
|---|---|---|
| 5人のQAエンジニアが3つのアプリに開発者アクセスが必要 | 15個の個別ロールバインディング | 1つのグループ + 3つのロールバインディング |
| QAチームに新メンバーが加わりました | 3つのロールバインディングを手動で追加 | グループに追加する |
| QAチームから誰かが去った | __CAPGO_KEEP_0__を使用してグループを手動で3つのロールバインディングを削除する | グループから削除する |
APIを使用してグループを管理する
「APIを使用してグループを管理する」すべてのグループエンドポイントは認証が必要であり、Cloudflareで提供される /private/groups.
グループの一覧
「グループの一覧」curl -X GET "https://api.capgo.app/private/groups/<ORG_ID>" \ -H "authorization: <API_KEY>"必要 org.read_members 許可権。
グループを作成
「グループを作成」のセクションcurl -X POST "https://api.capgo.app/private/groups/<ORG_ID>" \ -H "authorization: <API_KEY>" \ -H "Content-Type: application/json" \ -d '{ "name": "QA Team", "description": "Quality assurance engineers" }'必要な org.update_user_roles 許可権(スーパーアドミン または アドミン).
グループを更新
「グループを更新」のセクションcurl -X PUT "https://api.capgo.app/private/groups/<GROUP_ID>" \ -H "authorization: <API_KEY>" \ -H "Content-Type: application/json" \ -d '{ "name": "QA Team", "description": "Updated description" }'グループを削除
グループを削除curl -X DELETE "https://api.capgo.app/private/groups/<GROUP_ID>" \ -H "authorization: <API_KEY>"グループを削除すると、そのグループのロールのバインドも削除されます。メンバーは組織から削除されません。
グループメンバーの一覧
グループメンバーの一覧curl -X GET "https://api.capgo.app/private/groups/<GROUP_ID>/members" \ -H "authorization: <API_KEY>"グループにメンバーを追加
グループにメンバーを追加するセクションcurl -X POST "https://api.capgo.app/private/groups/<GROUP_ID>/members" \ -H "authorization: <API_KEY>" \ -H "Content-Type: application/json" \ -d '{ "user_id": "<USER_UUID>" }'組織のメンバーである必要があります。既存のメンバーを追加することは何の影響もありません。
グループからメンバーを削除する
グループからメンバーを削除するセクションcurl -X DELETE "https://api.capgo.app/private/groups/<GROUP_ID>/members/<USER_UUID>" \ -H "authorization: <API_KEY>"APIを通じてロールを割り当てます。
APIを通じてロールを割り当てるセクションメンバーの一覧
メンバーの一覧セクションcurl -X GET "https://api.capgo.app/organization/members" \ -H "authorization: <API_KEY>" \ -H "Content-Type: application/json" \ -d '{ "orgId": "<ORG_ID>" }'レスポンス:
[ { "uid": "user-uuid", "email": "alice@example.com", "image_url": "https://...", "role": "org_admin", "is_tmp": false }]メンバーを招待
メンバーを招待するセクションcurl -X POST "https://api.capgo.app/organization/members" \ -H "authorization: <API_KEY>" \ -H "Content-Type: application/json" \ -d '{ "orgId": "<ORG_ID>", "email": "bob@example.com", "invite_type": "org_admin" }'__CAPGO_KEEP_0__の許可された値 invite_type:
| 値 | __CAPGO_KEEP_0__割り当てられたロール |
|---|---|
org_super_admin | スーパーアドミン |
org_admin | アドミン |
org_billing_admin | 請求管理者 |
org_member | メンバー |
メンバーを削除
「メンバーを削除」セクションcurl -X DELETE "https://api.capgo.app/organization/members" \ -H "authorization: <API_KEY>" \ -H "Content-Type: application/json" \ -d '{ "orgId": "<ORG_ID>", "email": "bob@example.com" }'CLIを使用した役割の割り当て
CLIを使用した役割の割り当てのセクション組織のリスト
組織のリストのセクションnpx @capgo/cli organization list --apikey <API_KEY>メンバーのリスト
メンバーのリストのセクションnpx @capgo/cli organization members <ORG_ID> --apikey <API_KEY>カスタムロール
「カスタムロール」のセクション組み込みロールはほとんどのチーム構造をカバーしています。カスタムロールの作成は、ロードマップ上にあります — これがチームに必要な場合、 私たちに連絡してください。あなたのケースは、この機能を優先するために私たちに直接役立ちます。
Access Control Referenceから続けて
「Access Control Referenceから続けて」のセクションあなたが Access Control Reference ダッシュボードとAPIの操作を計画している場合、 API Overview APIの実装詳細についての概要 概要 __CAPGO_KEEP_0__のキー API Keysの実装詳細について for the implementation detail in API Keys, __CAPGO_KEEP_0__の実装詳細についてのデバイス バンドル __CAPGO_KEEP_0__の実装詳細についてのバンドル ページを編集