> ## Documentation Index
> Fetch the complete documentation index at: https://manuals.cobo.com/llms.txt
> Use this file to discover all available pages before exploring further.

# 用户角色和权限介绍

> 获取有关角色和权限的详细信息，确保安全的操作环境。

用户角色由预定义的规则组成，可用于为团队内的指定成员分配特定权限。Cobo Portal 提供了一系列预设角色。

<Note>您需要配置至少 2 名管理员，可以起到交叉验证、互为备份的作用。其他角色应根据实际需求妥善配置。不建议给同一个成员分配多个角色。</Note>

Cobo Portal 根据不同的业务使用场景,提供两种组织类型:**支付类组织** 和 **托管类组织**。

* **托管类组织**:适用于资产托管场景,支持全面的资产管理与操作需求。
* **支付类组织**:适用于稳定币支付场景,支持稳定币的收款、付款及出金等操作。

请注意，同一角色在不同类型的组织中，角色权限存在差异：对于带有 \* 标记的权限项，仅在托管类组织中可用；对于带有 △ 标记的权限项，仅在支付类组织中可用；不带有任何标记的权限项，为通用权限，适用于所有类型的组织。

## Cobo Portal 用户角色

### 角色能力概览

以下摘要说明每个默认角色的典型用途，并非完整权限列表。请以下方详细表格作为权限参考。

| Role               | 典型能力                               |
| ------------------ | ---------------------------------- |
| Viewer             | 查看团队信息、钱包信息、余额、地址和交易记录。            |
| Spender            | 对 Wallet Scope 范围内的钱包发起提币、转账等钱包操作。 |
| Approver           | 审核并批准需要审批的交易和其他请求。                 |
| Staker             | 对支持的资产和钱包执行质押相关操作。                 |
| Operator           | 处理日常运营任务，包括部分团队、钱包和开发者操作。          |
| Compliance Officer | 查看合规相关信息，例如交易分类和风控记录。              |
| Manager            | 管理团队成员、角色、策略、钱包和开发者设置，用于运营管理。      |
| Admin              | 拥有团队管理、钱包操作、风控和开发者设置等范围内的广泛管理权限。   |

<Warning>请谨慎分配 Spender。Spender 可以对 Wallet Scope 范围内的钱包发起提币和转账，因此在工作流需要独立审核时，请将发起操作和审批职责分离。</Warning>

### 授权模型

| 范围                                                      | 授权检查                                      |
| ------------------------------------------------------- | ----------------------------------------- |
| 带钱包目标的 Custody 和 WaaS 操作，例如钱包操作和 `transaction/withdraw` | 访问必须具备所需角色权限，且目标钱包必须在 Wallet Scope 允许范围内。 |
| 团队、角色、成员、开发者和不带钱包目标的设置                                  | 访问必须具备所需角色权限。Wallet Scope 不决定这些设置的访问权限。   |

### 如何阅读权限表格

角色详情以 Resource + Operation 条目展示，例如 `wallet/create` 和 `transaction/withdraw`。勾选表示该角色包含对应资源的该项操作。带 \* 标记的权限仅在托管类组织中可用；带 △ 标记的权限仅在支付类组织中可用。

以下表格列出了 Cobo Portal 中每个角色的权限。

<table class="six-columns-fixed-first-row">
  <tr>
    <th>权限范围</th>
    <th>资源</th>
    <th>操作</th>
    <th>观察员</th>
    <th>提币员</th>
    <th>审批员</th>
    <th>质押员</th>
    <th>操作员</th>
    <th>合规官</th>
    <th>经理</th>
    <th>管理员</th>
  </tr>

  <tr>
    <td rowspan="34">团队管理</td>
    <td rowspan="6">team\_member</td>
    <td>read</td>
    <td>-</td>
    <td>-</td>
    <td>-</td>
    <td>-</td>
    <td>✔️</td>
    <td>-</td>
    <td>✔️</td>
    <td>✔️</td>
  </tr>

  <tr>
    <td>create</td>
    <td>-</td>
    <td>-</td>
    <td>-</td>
    <td>-</td>
    <td>-</td>
    <td>-</td>
    <td>✔️</td>
    <td>✔️</td>
  </tr>

  <tr>
    <td>delete</td>
    <td>-</td>
    <td>-</td>
    <td>-</td>
    <td>-</td>
    <td>-</td>
    <td>-</td>
    <td>✔️</td>
    <td>✔️</td>
  </tr>

  <tr>
    <td>update</td>
    <td>-</td>
    <td>-</td>
    <td>-</td>
    <td>-</td>
    <td>-</td>
    <td>-</td>
    <td>✔️</td>
    <td>✔️</td>
  </tr>

  <tr>
    <td>freeze</td>
    <td>-</td>
    <td>-</td>
    <td>-</td>
    <td>-</td>
    <td>-</td>
    <td>-</td>
    <td>✔️</td>
    <td>✔️</td>
  </tr>

  <tr>
    <td>unfreeze</td>
    <td>-</td>
    <td>-</td>
    <td>-</td>
    <td>-</td>
    <td>-</td>
    <td>-</td>
    <td>✔️</td>
    <td>✔️</td>
  </tr>

  <tr>
    <td rowspan="4">organization\_profile</td>
    <td>update</td>
    <td>-</td>
    <td>-</td>
    <td>-</td>
    <td>-</td>
    <td>-</td>
    <td>-</td>
    <td>✔️</td>
    <td>✔️</td>
  </tr>

  <tr>
    <td>read</td>
    <td>✔️</td>
    <td>✔️</td>
    <td>✔️</td>
    <td>✔️</td>
    <td>✔️</td>
    <td>✔️</td>
    <td>✔️</td>
    <td>✔️</td>
  </tr>

  <tr>
    <td>freeze</td>
    <td>-</td>
    <td>-</td>
    <td>-</td>
    <td>-</td>
    <td>-</td>
    <td>-</td>
    <td>✔️</td>
    <td>✔️</td>
  </tr>

  <tr>
    <td>unfreeze</td>
    <td>-</td>
    <td>-</td>
    <td>-</td>
    <td>-</td>
    <td>-</td>
    <td>-</td>
    <td>✔️</td>
    <td>✔️</td>
  </tr>

  <tr>
    <td rowspan="2">kyc\_profile</td>
    <td>read</td>
    <td>-</td>
    <td>-</td>
    <td>-</td>
    <td>-</td>
    <td>-</td>
    <td>-</td>
    <td>✔️</td>
    <td>✔️</td>
  </tr>

  <tr>
    <td>update</td>
    <td>-</td>
    <td>-</td>
    <td>-</td>
    <td>-</td>
    <td>-</td>
    <td>-</td>
    <td>✔️</td>
    <td>✔️</td>
  </tr>

  <tr>
    <td rowspan="4">fee\_station</td>
    <td>read</td>
    <td>✔️</td>
    <td>✔️</td>
    <td>✔️</td>
    <td>✔️</td>
    <td>✔️</td>
    <td>✔️</td>
    <td>✔️</td>
    <td>✔️</td>
  </tr>

  <tr>
    <td>update</td>
    <td>-</td>
    <td>✔️</td>
    <td>-</td>
    <td>-</td>
    <td>✔️</td>
    <td>-</td>
    <td>✔️</td>
    <td>✔️</td>
  </tr>

  <tr>
    <td>deposit</td>
    <td>✔️</td>
    <td>✔️</td>
    <td>✔️</td>
    <td>✔️</td>
    <td>✔️</td>
    <td>✔️</td>
    <td>✔️</td>
    <td>✔️</td>
  </tr>

  <tr>
    <td>export</td>
    <td>-</td>
    <td>-</td>
    <td>-</td>
    <td>-</td>
    <td>✔️</td>
    <td>-</td>
    <td>✔️</td>
    <td>✔️</td>
  </tr>

  <tr>
    <td rowspan="3">roles</td>
    <td>read</td>
    <td>-</td>
    <td>-</td>
    <td>-</td>
    <td>-</td>
    <td>-</td>
    <td>-</td>
    <td>✔️</td>
    <td>✔️</td>
  </tr>

  <tr>
    <td>create</td>
    <td>-</td>
    <td>-</td>
    <td>-</td>
    <td>-</td>
    <td>-</td>
    <td>-</td>
    <td>✔️</td>
    <td>✔️</td>
  </tr>

  <tr>
    <td>update</td>
    <td>-</td>
    <td>-</td>
    <td>-</td>
    <td>-</td>
    <td>-</td>
    <td>-</td>
    <td>✔️</td>
    <td>✔️</td>
  </tr>

  <tr>
    <td rowspan="4">governance\_policy</td>
    <td>read</td>
    <td>-</td>
    <td>-</td>
    <td>-</td>
    <td>-</td>
    <td>-</td>
    <td>-</td>
    <td>✔️</td>
    <td>✔️</td>
  </tr>

  <tr>
    <td>update</td>
    <td>-</td>
    <td>-</td>
    <td>-</td>
    <td>-</td>
    <td>-</td>
    <td>-</td>
    <td>-</td>
    <td>✔️</td>
  </tr>

  <tr>
    <td>create</td>
    <td>-</td>
    <td>-</td>
    <td>-</td>
    <td>-</td>
    <td>-</td>
    <td>-</td>
    <td>-</td>
    <td>✔️</td>
  </tr>

  <tr>
    <td>delete</td>
    <td>-</td>
    <td>-</td>
    <td>-</td>
    <td>-</td>
    <td>-</td>
    <td>-</td>
    <td>-</td>
    <td>✔️</td>
  </tr>

  <tr>
    <td rowspan="2">app\_governance\_policy</td>
    <td>read</td>
    <td>-</td>
    <td>-</td>
    <td>-</td>
    <td>-</td>
    <td>-</td>
    <td>-</td>
    <td>✔️</td>
    <td>✔️</td>
  </tr>

  <tr>
    <td>update</td>
    <td>-</td>
    <td>-</td>
    <td>-</td>
    <td>-</td>
    <td>-</td>
    <td>-</td>
    <td>✔️</td>
    <td>✔️</td>
  </tr>

  <tr>
    <td>activity\_logs</td>
    <td>read</td>
    <td>-</td>
    <td>-</td>
    <td>-</td>
    <td>-</td>
    <td>-</td>
    <td>-</td>
    <td>✔️</td>
    <td>✔️</td>
  </tr>

  <tr>
    <td rowspan="3">transaction\_category</td>
    <td>\*read</td>
    <td>✔️</td>
    <td>✔️</td>
    <td>✔️</td>
    <td>-</td>
    <td>✔️</td>
    <td>✔️</td>
    <td>✔️</td>
    <td>✔️</td>
  </tr>

  <tr>
    <td>\*create</td>
    <td>-</td>
    <td>✔️</td>
    <td>✔️</td>
    <td>-</td>
    <td>✔️</td>
    <td>-</td>
    <td>✔️</td>
    <td>✔️</td>
  </tr>

  <tr>
    <td>\*update</td>
    <td>-</td>
    <td>✔️</td>
    <td>✔️</td>
    <td>-</td>
    <td>✔️</td>
    <td>-</td>
    <td>✔️</td>
    <td>✔️</td>
  </tr>

  <tr>
    <td rowspan="3">pricing\_plan</td>
    <td>read</td>
    <td>-</td>
    <td>-</td>
    <td>-</td>
    <td>-</td>
    <td>✔️</td>
    <td>-</td>
    <td>✔️</td>
    <td>✔️</td>
  </tr>

  <tr>
    <td>update</td>
    <td>-</td>
    <td>-</td>
    <td>-</td>
    <td>-</td>
    <td>-</td>
    <td>-</td>
    <td>✔️</td>
    <td>✔️</td>
  </tr>

  <tr>
    <td>update\_supported\_chains</td>
    <td>-</td>
    <td>-</td>
    <td>-</td>
    <td>-</td>
    <td>✔️</td>
    <td>-</td>
    <td>✔️</td>
    <td>✔️</td>
  </tr>

  <tr>
    <td rowspan="2">bills</td>
    <td>read</td>
    <td>-</td>
    <td>-</td>
    <td>-</td>
    <td>-</td>
    <td>-</td>
    <td>-</td>
    <td>✔️</td>
    <td>✔️</td>
  </tr>

  <tr>
    <td>update\_billing\_emails</td>
    <td>-</td>
    <td>-</td>
    <td>-</td>
    <td>-</td>
    <td>-</td>
    <td>-</td>
    <td>✔️</td>
    <td>✔️</td>
  </tr>

  <tr>
    <td rowspan="8">钱包管理</td>
    <td rowspan="7">wallet</td>
    <td>read</td>
    <td>✔️</td>
    <td>✔️</td>
    <td>✔️</td>
    <td>✔️</td>
    <td>✔️</td>
    <td>✔️</td>
    <td>✔️</td>
    <td>✔️</td>
  </tr>

  <tr>
    <td>\*update</td>
    <td>-</td>
    <td>-</td>
    <td>-</td>
    <td>-</td>
    <td>✔️</td>
    <td>-</td>
    <td>✔️</td>
    <td>✔️</td>
  </tr>

  <tr>
    <td>\*create</td>
    <td>-</td>
    <td>-</td>
    <td>-</td>
    <td>-</td>
    <td>✔️</td>
    <td>-</td>
    <td>✔️</td>
    <td>✔️</td>
  </tr>

  <tr>
    <td>\*connect</td>
    <td>-</td>
    <td>✔️</td>
    <td>-</td>
    <td>-</td>
    <td>✔️</td>
    <td>-</td>
    <td>✔️</td>
    <td>✔️</td>
  </tr>

  <tr>
    <td>\*import</td>
    <td>-</td>
    <td>-</td>
    <td>-</td>
    <td>-</td>
    <td>✔️</td>
    <td>-</td>
    <td>✔️</td>
    <td>✔️</td>
  </tr>

  <tr>
    <td>\*delete</td>
    <td>-</td>
    <td>-</td>
    <td>-</td>
    <td>-</td>
    <td>✔️</td>
    <td>-</td>
    <td>✔️</td>
    <td>✔️</td>
  </tr>

  <tr>
    <td>\*create\_address</td>
    <td>-</td>
    <td>✔️</td>
    <td>-</td>
    <td>-</td>
    <td>✔️</td>
    <td>-</td>
    <td>✔️</td>
    <td>✔️</td>
  </tr>

  <tr>
    <td>address\_book</td>
    <td>delete</td>
    <td>-</td>
    <td>✔️</td>
    <td>-</td>
    <td>-</td>
    <td>✔️</td>
    <td>-</td>
    <td>✔️</td>
    <td>✔️</td>
  </tr>

  <tr>
    <td rowspan="33">交易管理</td>
    <td rowspan="11">transaction</td>
    <td>read</td>
    <td>✔️</td>
    <td>✔️</td>
    <td>✔️</td>
    <td>✔️</td>
    <td>✔️</td>
    <td>✔️</td>
    <td>✔️</td>
    <td>✔️</td>
  </tr>

  <tr>
    <td>export</td>
    <td>✔️</td>
    <td>✔️</td>
    <td>-</td>
    <td>-</td>
    <td>✔️</td>
    <td>✔️</td>
    <td>✔️</td>
    <td>✔️</td>
  </tr>

  <tr>
    <td>\*withdraw</td>
    <td>-</td>
    <td>✔️</td>
    <td>-</td>
    <td>-</td>
    <td>-</td>
    <td>-</td>
    <td>-</td>
    <td>✔️</td>
  </tr>

  <tr>
    <td>\*stake</td>
    <td>-</td>
    <td>-</td>
    <td>-</td>
    <td>✔️</td>
    <td>-</td>
    <td>-</td>
    <td>-</td>
    <td>✔️</td>
  </tr>

  <tr>
    <td>estimate\_fee</td>
    <td>-</td>
    <td>✔️</td>
    <td>-</td>
    <td>-</td>
    <td>-</td>
    <td>-</td>
    <td>-</td>
    <td>✔️</td>
  </tr>

  <tr>
    <td>\*contract\_call</td>
    <td>-</td>
    <td>✔️</td>
    <td>-</td>
    <td>-</td>
    <td>-</td>
    <td>-</td>
    <td>-</td>
    <td>✔️</td>
  </tr>

  <tr>
    <td>message\_sign</td>
    <td>-</td>
    <td>✔️</td>
    <td>-</td>
    <td>-</td>
    <td>-</td>
    <td>-</td>
    <td>-</td>
    <td>✔️</td>
  </tr>

  <tr>
    <td>\*manage</td>
    <td>-</td>
    <td>✔️</td>
    <td>-</td>
    <td>-</td>
    <td>-</td>
    <td>-</td>
    <td>-</td>
    <td>✔️</td>
  </tr>

  <tr>
    <td>\*update</td>
    <td>-</td>
    <td>✔️</td>
    <td>✔️</td>
    <td>✔️</td>
    <td>✔️</td>
    <td>-</td>
    <td>✔️</td>
    <td>✔️</td>
  </tr>

  <tr>
    <td>\*unstake</td>
    <td>-</td>
    <td>-</td>
    <td>-</td>
    <td>✔️</td>
    <td>-</td>
    <td>-</td>
    <td>-</td>
    <td>✔️</td>
  </tr>

  <tr>
    <td>\*unstake\_withdraw</td>
    <td>-</td>
    <td>-</td>
    <td>-</td>
    <td>✔️</td>
    <td>-</td>
    <td>-</td>
    <td>-</td>
    <td>✔️</td>
  </tr>

  <tr>
    <td rowspan="3">mpc\_project</td>
    <td>\*create</td>
    <td>-</td>
    <td>-</td>
    <td>-</td>
    <td>-</td>
    <td>✔️</td>
    <td>-</td>
    <td>✔️</td>
    <td>✔️</td>
  </tr>

  <tr>
    <td>read</td>
    <td>✔️</td>
    <td>✔️</td>
    <td>✔️</td>
    <td>✔️</td>
    <td>✔️</td>
    <td>✔️</td>
    <td>✔️</td>
    <td>✔️</td>
  </tr>

  <tr>
    <td>\*update</td>
    <td>-</td>
    <td>-</td>
    <td>-</td>
    <td>-</td>
    <td>✔️</td>
    <td>-</td>
    <td>✔️</td>
    <td>✔️</td>
  </tr>

  <tr>
    <td rowspan="3">mpc\_vault</td>
    <td>\*create</td>
    <td>-</td>
    <td>-</td>
    <td>-</td>
    <td>-</td>
    <td>✔️</td>
    <td>-</td>
    <td>✔️</td>
    <td>✔️</td>
  </tr>

  <tr>
    <td>read</td>
    <td>✔️</td>
    <td>✔️</td>
    <td>✔️</td>
    <td>✔️</td>
    <td>✔️</td>
    <td>✔️</td>
    <td>✔️</td>
    <td>✔️</td>
  </tr>

  <tr>
    <td>\*update</td>
    <td>-</td>
    <td>-</td>
    <td>-</td>
    <td>-</td>
    <td>✔️</td>
    <td>-</td>
    <td>✔️</td>
    <td>✔️</td>
  </tr>

  <tr>
    <td rowspan="4">mpc\_key\_group</td>
    <td>read</td>
    <td>✔️</td>
    <td>✔️</td>
    <td>✔️</td>
    <td>✔️</td>
    <td>✔️</td>
    <td>✔️</td>
    <td>✔️</td>
    <td>✔️</td>
  </tr>

  <tr>
    <td>\*update</td>
    <td>-</td>
    <td>-</td>
    <td>-</td>
    <td>-</td>
    <td>✔️</td>
    <td>-</td>
    <td>✔️</td>
    <td>✔️</td>
  </tr>

  <tr>
    <td>\*create</td>
    <td>-</td>
    <td>-</td>
    <td>-</td>
    <td>-</td>
    <td>✔️</td>
    <td>-</td>
    <td>✔️</td>
    <td>✔️</td>
  </tr>

  <tr>
    <td>delete</td>
    <td>-</td>
    <td>-</td>
    <td>-</td>
    <td>-</td>
    <td>✔️</td>
    <td>-</td>
    <td>✔️</td>
    <td>✔️</td>
  </tr>

  <tr>
    <td rowspan="2">utxo</td>
    <td>read</td>
    <td>✔️</td>
    <td>✔️</td>
    <td>✔️</td>
    <td>✔️</td>
    <td>✔️</td>
    <td>✔️</td>
    <td>✔️</td>
    <td>✔️</td>
  </tr>

  <tr>
    <td>\*manage</td>
    <td>-</td>
    <td>✔️</td>
    <td>-</td>
    <td>-</td>
    <td>✔️</td>
    <td>-</td>
    <td>✔️</td>
    <td>✔️</td>
  </tr>

  <tr>
    <td>wallet</td>
    <td>manage\_utxo</td>
    <td>-</td>
    <td>-</td>
    <td>-</td>
    <td>-</td>
    <td>-</td>
    <td>-</td>
    <td>✔️</td>
    <td>✔️</td>
  </tr>

  <tr>
    <td rowspan="2">travel\_rule</td>
    <td>read</td>
    <td>-</td>
    <td>✔️</td>
    <td>-</td>
    <td>-</td>
    <td>-</td>
    <td>-</td>
    <td>✔️</td>
    <td>✔️</td>
  </tr>

  <tr>
    <td>edit</td>
    <td>-</td>
    <td>✔️</td>
    <td>-</td>
    <td>-</td>
    <td>-</td>
    <td>-</td>
    <td>✔️</td>
    <td>✔️</td>
  </tr>

  <tr>
    <td rowspan="3">address\_book</td>
    <td>read</td>
    <td>✔️</td>
    <td>✔️</td>
    <td>✔️</td>
    <td>✔️</td>
    <td>✔️</td>
    <td>✔️</td>
    <td>✔️</td>
    <td>✔️</td>
  </tr>

  <tr>
    <td>create</td>
    <td>-</td>
    <td>✔️</td>
    <td>✔️</td>
    <td>✔️</td>
    <td>✔️</td>
    <td>-</td>
    <td>✔️</td>
    <td>✔️</td>
  </tr>

  <tr>
    <td>update</td>
    <td>-</td>
    <td>✔️</td>
    <td>-</td>
    <td>-</td>
    <td>✔️</td>
    <td>-</td>
    <td>✔️</td>
    <td>✔️</td>
  </tr>

  <tr>
    <td rowspan="4">transaction\_policy</td>
    <td>read</td>
    <td>-</td>
    <td>-</td>
    <td>-</td>
    <td>-</td>
    <td>✔️</td>
    <td>-</td>
    <td>✔️</td>
    <td>✔️</td>
  </tr>

  <tr>
    <td>update</td>
    <td>-</td>
    <td>-</td>
    <td>-</td>
    <td>-</td>
    <td>✔️</td>
    <td>-</td>
    <td>✔️</td>
    <td>✔️</td>
  </tr>

  <tr>
    <td>create</td>
    <td>-</td>
    <td>-</td>
    <td>-</td>
    <td>-</td>
    <td>✔️</td>
    <td>-</td>
    <td>✔️</td>
    <td>✔️</td>
  </tr>

  <tr>
    <td>delete</td>
    <td>-</td>
    <td>-</td>
    <td>-</td>
    <td>-</td>
    <td>✔️</td>
    <td>-</td>
    <td>✔️</td>
    <td>✔️</td>
  </tr>

  <tr>
    <td rowspan="11">开发者管理</td>
    <td>developer\_dashboard</td>
    <td>view</td>
    <td>✔️</td>
    <td>✔️</td>
    <td>✔️</td>
    <td>✔️</td>
    <td>✔️</td>
    <td>✔️</td>
    <td>✔️</td>
    <td>✔️</td>
  </tr>

  <tr>
    <td rowspan="2">api\_key</td>
    <td>edit</td>
    <td>-</td>
    <td>-</td>
    <td>-</td>
    <td>-</td>
    <td>-</td>
    <td>-</td>
    <td>✔️</td>
    <td>✔️</td>
  </tr>

  <tr>
    <td>read</td>
    <td>✔️</td>
    <td>✔️</td>
    <td>✔️</td>
    <td>✔️</td>
    <td>✔️</td>
    <td>✔️</td>
    <td>✔️</td>
    <td>✔️</td>
  </tr>

  <tr>
    <td rowspan="2">api\_log</td>
    <td>read</td>
    <td>✔️</td>
    <td>✔️</td>
    <td>✔️</td>
    <td>✔️</td>
    <td>✔️</td>
    <td>✔️</td>
    <td>✔️</td>
    <td>✔️</td>
  </tr>

  <tr>
    <td>export</td>
    <td>✔️</td>
    <td>✔️</td>
    <td>✔️</td>
    <td>✔️</td>
    <td>✔️</td>
    <td>✔️</td>
    <td>✔️</td>
    <td>✔️</td>
  </tr>

  <tr>
    <td rowspan="3">webhook</td>
    <td>read</td>
    <td>✔️</td>
    <td>✔️</td>
    <td>✔️</td>
    <td>✔️</td>
    <td>✔️</td>
    <td>✔️</td>
    <td>✔️</td>
    <td>✔️</td>
  </tr>

  <tr>
    <td>edit</td>
    <td>-</td>
    <td>-</td>
    <td>-</td>
    <td>-</td>
    <td>-</td>
    <td>-</td>
    <td>✔️</td>
    <td>✔️</td>
  </tr>

  <tr>
    <td>resend</td>
    <td>-</td>
    <td>-</td>
    <td>-</td>
    <td>-</td>
    <td>✔️</td>
    <td>-</td>
    <td>✔️</td>
    <td>✔️</td>
  </tr>

  <tr>
    <td rowspan="3">callback</td>
    <td>read</td>
    <td>✔️</td>
    <td>✔️</td>
    <td>✔️</td>
    <td>✔️</td>
    <td>✔️</td>
    <td>✔️</td>
    <td>✔️</td>
    <td>✔️</td>
  </tr>

  <tr>
    <td>edit</td>
    <td>-</td>
    <td>-</td>
    <td>-</td>
    <td>-</td>
    <td>-</td>
    <td>-</td>
    <td>✔️</td>
    <td>✔️</td>
  </tr>

  <tr>
    <td>resend</td>
    <td>-</td>
    <td>-</td>
    <td>-</td>
    <td>-</td>
    <td>✔️</td>
    <td>-</td>
    <td>✔️</td>
    <td>✔️</td>
  </tr>
</table>

## App 用户角色权限

以下表格列出了 Cobo Portal Apps 中每个角色的权限。

<table class="six-columns-fixed-first-row">
  <tr>
    <th>资源</th>
    <th>操作</th>
    <th>观察员</th>
    <th>提币员</th>
    <th>操作员</th>
    <th>审批员</th>
    <th>经理</th>
    <th>管理员</th>
    <th>支付管理员</th>
    <th>支付成员</th>
    <th>合规官</th>
  </tr>

  <tr>
    <td rowspan="3">payment\_orders\_payin</td>
    <td>△read</td>
    <td>-</td>
    <td>-</td>
    <td>-</td>
    <td>-</td>
    <td>-</td>
    <td>✔️</td>
    <td>✔️</td>
    <td>✔️</td>
    <td>-</td>
  </tr>

  <tr>
    <td>△create</td>
    <td>-</td>
    <td>-</td>
    <td>-</td>
    <td>-</td>
    <td>-</td>
    <td>✔️</td>
    <td>✔️</td>
    <td>-</td>
    <td>-</td>
  </tr>

  <tr>
    <td>△update</td>
    <td>-</td>
    <td>-</td>
    <td>-</td>
    <td>-</td>
    <td>-</td>
    <td>✔️</td>
    <td>✔️</td>
    <td>-</td>
    <td>-</td>
  </tr>

  <tr>
    <td rowspan="3">payment\_orders\_refund</td>
    <td>△read</td>
    <td>-</td>
    <td>-</td>
    <td>-</td>
    <td>-</td>
    <td>-</td>
    <td>✔️</td>
    <td>✔️</td>
    <td>✔️</td>
    <td>-</td>
  </tr>

  <tr>
    <td>△create</td>
    <td>-</td>
    <td>-</td>
    <td>-</td>
    <td>-</td>
    <td>-</td>
    <td>✔️</td>
    <td>✔️</td>
    <td>✔️</td>
    <td>-</td>
  </tr>

  <tr>
    <td>△update</td>
    <td>-</td>
    <td>-</td>
    <td>-</td>
    <td>-</td>
    <td>-</td>
    <td>✔️</td>
    <td>✔️</td>
    <td>✔️</td>
    <td>-</td>
  </tr>

  <tr>
    <td rowspan="2">payment\_settlement</td>
    <td>△read</td>
    <td>-</td>
    <td>-</td>
    <td>-</td>
    <td>-</td>
    <td>-</td>
    <td>✔️</td>
    <td>✔️</td>
    <td>✔️</td>
    <td>-</td>
  </tr>

  <tr>
    <td>△create</td>
    <td>-</td>
    <td>-</td>
    <td>-</td>
    <td>-</td>
    <td>-</td>
    <td>✔️</td>
    <td>✔️</td>
    <td>✔️</td>
    <td>-</td>
  </tr>

  <tr>
    <td rowspan="3">payment\_merchant</td>
    <td>△read</td>
    <td>-</td>
    <td>-</td>
    <td>-</td>
    <td>-</td>
    <td>-</td>
    <td>✔️</td>
    <td>✔️</td>
    <td>✔️</td>
    <td>-</td>
  </tr>

  <tr>
    <td>△create</td>
    <td>-</td>
    <td>-</td>
    <td>-</td>
    <td>-</td>
    <td>-</td>
    <td>✔️</td>
    <td>✔️</td>
    <td>✔️</td>
    <td>-</td>
  </tr>

  <tr>
    <td>△update</td>
    <td>-</td>
    <td>-</td>
    <td>-</td>
    <td>-</td>
    <td>-</td>
    <td>✔️</td>
    <td>✔️</td>
    <td>✔️</td>
    <td>-</td>
  </tr>

  <tr>
    <td rowspan="4">payment\_bank\_account</td>
    <td>△read</td>
    <td>-</td>
    <td>-</td>
    <td>-</td>
    <td>-</td>
    <td>-</td>
    <td>✔️</td>
    <td>✔️</td>
    <td>✔️</td>
    <td>-</td>
  </tr>

  <tr>
    <td>△create</td>
    <td>-</td>
    <td>-</td>
    <td>-</td>
    <td>-</td>
    <td>-</td>
    <td>✔️</td>
    <td>✔️</td>
    <td>-</td>
    <td>-</td>
  </tr>

  <tr>
    <td>△update</td>
    <td>-</td>
    <td>-</td>
    <td>-</td>
    <td>-</td>
    <td>-</td>
    <td>✔️</td>
    <td>✔️</td>
    <td>-</td>
    <td>-</td>
  </tr>

  <tr>
    <td>△delete</td>
    <td>-</td>
    <td>-</td>
    <td>-</td>
    <td>-</td>
    <td>-</td>
    <td>✔️</td>
    <td>✔️</td>
    <td>✔️</td>
    <td>-</td>
  </tr>

  <tr>
    <td rowspan="3">payment\_topup\_address</td>
    <td>△read</td>
    <td>-</td>
    <td>-</td>
    <td>-</td>
    <td>-</td>
    <td>-</td>
    <td>✔️</td>
    <td>✔️</td>
    <td>✔️</td>
    <td>-</td>
  </tr>

  <tr>
    <td>△create</td>
    <td>-</td>
    <td>-</td>
    <td>-</td>
    <td>-</td>
    <td>-</td>
    <td>✔️</td>
    <td>✔️</td>
    <td>✔️</td>
    <td>-</td>
  </tr>

  <tr>
    <td>△update</td>
    <td>-</td>
    <td>-</td>
    <td>-</td>
    <td>-</td>
    <td>-</td>
    <td>✔️</td>
    <td>✔️</td>
    <td>-</td>
    <td>-</td>
  </tr>

  <tr>
    <td rowspan="2">payment\_force\_sweep</td>
    <td>△read</td>
    <td>-</td>
    <td>-</td>
    <td>-</td>
    <td>-</td>
    <td>-</td>
    <td>✔️</td>
    <td>✔️</td>
    <td>✔️</td>
    <td>-</td>
  </tr>

  <tr>
    <td>△create</td>
    <td>-</td>
    <td>-</td>
    <td>-</td>
    <td>-</td>
    <td>-</td>
    <td>✔️</td>
    <td>✔️</td>
    <td>✔️</td>
    <td>-</td>
  </tr>

  <tr>
    <td>payment\_balance</td>
    <td>△read</td>
    <td>-</td>
    <td>-</td>
    <td>-</td>
    <td>-</td>
    <td>-</td>
    <td>✔️</td>
    <td>✔️</td>
    <td>✔️</td>
    <td>-</td>
  </tr>

  <tr>
    <td rowspan="2">swap\_orders</td>
    <td>\*read</td>
    <td>✔️</td>
    <td>✔️</td>
    <td>✔️</td>
    <td>✔️</td>
    <td>✔️</td>
    <td>✔️</td>
    <td>-</td>
    <td>-</td>
    <td>✔️</td>
  </tr>

  <tr>
    <td>\*create</td>
    <td>-</td>
    <td>✔️</td>
    <td>-</td>
    <td>-</td>
    <td>-</td>
    <td>✔️</td>
    <td>-</td>
    <td>-</td>
    <td>-</td>
  </tr>

  <tr>
    <td rowspan="2">bridge\_orders</td>
    <td>\*read</td>
    <td>✔️</td>
    <td>✔️</td>
    <td>✔️</td>
    <td>✔️</td>
    <td>✔️</td>
    <td>✔️</td>
    <td>-</td>
    <td>-</td>
    <td>✔️</td>
  </tr>

  <tr>
    <td>\*create</td>
    <td>-</td>
    <td>✔️</td>
    <td>-</td>
    <td>-</td>
    <td>-</td>
    <td>✔️</td>
    <td>-</td>
    <td>-</td>
    <td>-</td>
  </tr>

  <tr>
    <td>screening\_results</td>
    <td>read</td>
    <td>✔️</td>
    <td>✔️</td>
    <td>✔️</td>
    <td>✔️</td>
    <td>✔️</td>
    <td>✔️</td>
    <td>-</td>
    <td>-</td>
    <td>✔️</td>
  </tr>

  <tr>
    <td rowspan="3">screening\_funds</td>
    <td>refund</td>
    <td>✔️</td>
    <td>✔️</td>
    <td>✔️</td>
    <td>✔️</td>
    <td>✔️</td>
    <td>✔️</td>
    <td>-</td>
    <td>-</td>
    <td>✔️</td>
  </tr>

  <tr>
    <td>isolate</td>
    <td>✔️</td>
    <td>✔️</td>
    <td>✔️</td>
    <td>✔️</td>
    <td>✔️</td>
    <td>✔️</td>
    <td>-</td>
    <td>-</td>
    <td>✔️</td>
  </tr>

  <tr>
    <td>unfreeze</td>
    <td>✔️</td>
    <td>✔️</td>
    <td>✔️</td>
    <td>✔️</td>
    <td>✔️</td>
    <td>✔️</td>
    <td>-</td>
    <td>-</td>
    <td>✔️</td>
  </tr>

  <tr>
    <td rowspan="4">compliance\_funds</td>
    <td>read</td>
    <td>✔️</td>
    <td>✔️</td>
    <td>✔️</td>
    <td>✔️</td>
    <td>✔️</td>
    <td>✔️</td>
    <td>-</td>
    <td>-</td>
    <td>✔️</td>
  </tr>

  <tr>
    <td>refund</td>
    <td>-</td>
    <td>-</td>
    <td>-</td>
    <td>-</td>
    <td>-</td>
    <td>✔️</td>
    <td>-</td>
    <td>-</td>
    <td>✔️</td>
  </tr>

  <tr>
    <td>isolate</td>
    <td>-</td>
    <td>-</td>
    <td>-</td>
    <td>-</td>
    <td>-</td>
    <td>✔️</td>
    <td>-</td>
    <td>-</td>
    <td>✔️</td>
  </tr>

  <tr>
    <td>unfreeze</td>
    <td>-</td>
    <td>-</td>
    <td>-</td>
    <td>-</td>
    <td>-</td>
    <td>✔️</td>
    <td>-</td>
    <td>-</td>
    <td>✔️</td>
  </tr>
</table>
