PAYATHON 2026

如何在 Zoho CRM 中为加盟模式设置双层用户访问权限并避免数据交叉访问?

技术老齐

结论

在同一个 Zoho CRM 组织中,可以将默认访问权限设为 Private,为各加盟商建立独立的角色分支,再按需配置共享。这样,总部可以查看各加盟商的数据,同时限制加盟商之间互相访问。

Roles 和 territories 都不能直接作为独立租户的边界。跨模块报表尤其需要检查:Zoho 官方 FAQ 说明,报表可能显示用户无法直接访问的关联记录及字段。如果加盟商需要独立管理员,或必须在组织层面隔离数据,应考虑为各加盟商使用独立 CRM 组织。

以下配置主要适用于 Accounts、Contacts、Deals 等组织模块(org modules)。Team Modules 有自己的权限机制,需要另行配置。官方权限说明

为什么已经配置 roles 和 profiles,仍然会越权?

各项设置控制的权限不同:

设置主要作用加盟场景中的用途
Profiles控制模块、字段和操作权限决定能否查看、编辑、导出或共享
Roles根据组织层级决定记录访问范围让总部访问下级加盟商拥有的记录
默认组织权限设置模块记录的基础可见范围将需要隔离的模块设为 Private
Sharing Rules向指定角色或群组增加记录访问权限支持加盟商内部协作或总部集中处理
Territories按业务条件分配记录和区域访问权限支持区域管理及区域报表

最容易配错的是默认组织权限。如果模块仍为 Public Read Only,加盟商就能读取其他人的记录。Sharing Rules 只能扩大可见范围,无法通过另一条规则收回已有的访问权。官方数据共享说明

另一个常见原因是加盟商用户使用了 Administrator profile。管理员能够访问全部数据,即使分配了较低的 role,也无法限制这项权限。官方角色说明

如何配置单组织中的加盟商隔离?

1. 将业务模块的默认权限设为 Private

在 Setup > Security Control > Roles and Sharing > Data Sharing Settings 中,逐个检查需要隔离的模块。菜单位置可能随界面调整,以实际账号为准。

除 Accounts 外,还应检查 Contacts、Deals、Leads,以及存放加盟业务数据的自定义模块。将这些模块设为 Private 后,再按业务需要增加共享。

同时检查已有的共享规则,留意共享给 All Users、覆盖多个加盟商的群组,或范围过大的 Roles and Subordinates 的规则。

2. 为每个加盟商建立独立角色分支

角色结构可以设为:

总部
├── 加盟商 A
│   ├── A 经理
│   └── A 员工
└── 加盟商 B
    ├── B 经理
    └── B 员工

总部角色位于所有加盟商分支之上,A、B 之间没有上下级关系。

不要将所有加盟商用户放进同一个通用的 Franchise role,再开启 Share Data with Peers。该选项会让同一角色中的用户互相访问记录。如果 A 内部需要互相查看记录,可以在 A 专属角色中开启;如果员工只能查看自己负责的记录,则保持关闭。

总部通过角色层级访问下级拥有的记录时,仍需具备相应模块的读取权限。对于通过自定义共享规则获得的记录,还要检查 Superiors Allowed,确认共享是否允许上级访问。官方角色层级说明

如果当前组织使用的是 Reporting Hierarchy,应检查实际汇报关系,不能直接套用上述 Role Hierarchy 配置。

3. 单独配置加盟商 Profile

相同岗位的加盟商用户可以共用一个 Profile,无须为每家复制一份。各加盟商能访问哪些记录,由角色和共享配置区分。

加盟商 Profile 应按业务需要开放模块的查看、创建和编辑权限,并限制以下能力:

  • 用户、角色及共享规则管理。
  • 不必要的记录 Share 权限。
  • 不需要的导出、报表调度和开发者访问权限。

如果总部员工只需查看全部业务数据,可以使用具有读取和报表权限的自定义 Profile,无须全部分配 Administrator profile。官方 Profile 权限说明

4. 明确记录归属,补充必要共享

建议在相关模块中增加统一的加盟商标识,例如自定义字段 Franchise_ID,用于校验记录归属、设置共享条件和制作报表。

这个字段本身不会限制访问,还需确保:

  • 记录 Owner 属于正确的加盟商角色分支。
  • 加盟商用户不能随意修改归属字段。
  • 导入、接口创建和自动分配不会把记录分给错误的用户。
  • 客户、联系人、商机之间没有意外的跨加盟商关联。

如果记录由总部或集成账号持有,可以配置条件共享,例如:

模块:Deals
条件:Franchise_ID 等于 FR_A
共享目标:加盟商 A 专属角色或群组
权限:Read Only 或业务必需的编辑权限

其中,Franchise_ID 需要自行创建。配置前应核对当前订阅是否支持条件共享,以及规则数量是否够用。

如果某条 B 记录被错误地分给了 A 用户,需要先修正归属。增加一条“只共享给 B”的规则,无法撤销 A 作为 Owner 已有的访问权。

Territories 能否替代这套配置?

Territories 可以控制部分访问权限,适合需要按地区、产品线等条件分配客户和设置区域预测的业务。

Territories 允许重叠归属。官方文档说明,Account 满足多个区域条件时,会被分配到所有匹配的区域。因此,为每个加盟商建立一个 territory,并不会自动阻止加盟商之间互相访问。官方区域分配说明

使用 territories 时,需要同时检查区域条件、成员身份、手工分配及角色共享,避免用户或记录进入多个加盟商区域。它也无法满足所有模块的隔离需求。

对于简单的总部与加盟商结构,建议先完成角色分支和 Private 配置,等到确实需要区域分配、区域预测时,再引入 territories。

如何避免权限限制影响报表?

需要分别检查用户能否打开报表,以及打开后能看到哪些数据。

如果报表无法打开,应检查 Profile 中的报表权限、相关模块的访问权限,以及报表所在文件夹的共享对象。总部和加盟商的报表文件夹可以分别共享,无须为了恢复报表功能而将业务模块改成 Public。官方报表配置说明

即使报表能够打开,也要检查其中的关联数据。Zoho 官方 FAQ 列出了两个例外:

  • 共享报表中的字段,可能对原本无权查看该字段的用户可见。
  • 用户能够访问主模块记录时,报表可能显示与之关联的父、子模块记录及字段,即使用户不能直接访问那些关联记录。前提是用户具有相关模块的访问权限。官方报表 FAQ

例如,A 的联系人关联了包含 B 数据的客户记录,就需要重点检查跨模块报表。应修正跨加盟商关联,并逐列核对加盟商报表。Franchise_ID = FR_A 可以辅助筛选,但仍需检查记录权限和关联关系。

总部导出的文件、定时发送的报表附件,以及同步到外部 BI 的数据,也要分别控制接收范围。

如何验证配置是否真正生效?

准备总部、加盟商 A、加盟商 B 三类测试账号,并创建少量归属明确的记录。

检查项目总部加盟商 A加盟商 B
查看 A 记录允许按 A 内部权限允许拒绝
查看 B 记录允许拒绝按 B 内部权限允许
跨模块报表查看授权范围内全部数据不出现 B 的关联数据不出现 A 的关联数据
编辑、导出按岗位授权按岗位授权按岗位授权

除了检查列表和搜索结果,还应直接打开另一加盟商记录的 URL,并检查关联列表、报表明细和导出结果。

如果开放了 API,可以使用测试用户自己的 OAuth token,验证按记录 ID 读取时的权限:

# 使用当前组织对应的 API 域名
export ZOHO_API_DOMAIN='https://www.zohoapis.com'

# 使用加盟商 A 测试用户的 token
export ZOHO_ACCESS_TOKEN='<FRANCHISE_A_ACCESS_TOKEN>'
export RECORD_ID='<FRANCHISE_B_ACCOUNT_RECORD_ID>'

curl --silent --show-error --include \
  "${ZOHO_API_DOMAIN}/crm/v8/Accounts/${RECORD_ID}" \
  --header "Authorization: Zoho-oauthtoken ${ZOHO_ACCESS_TOKEN}"

该调用使用官方 V8 Get Records 接口。Token 需具备相应 scope,例如 ZohoCRM.modules.accounts.READ。官方 API 文档

先确认 A 的 token 能读取获授权的 A 记录,再测试 B 记录。验收时应确认 B 的数据没有返回,同时排除 token 失效、scope 不足或记录 ID 错误等原因,避免将这些原因造成的请求失败误判为隔离成功。

哪些情况应该使用独立 CRM 组织?

如果所有加盟商都由总部统一管理,并且能够持续维护共享规则、记录归属和报表,单组织方案通常更便于集中运营。

如果加盟商需要自己的管理员、独立配置,或必须在组织层面分开数据,应优先评估“一家加盟商一个 CRM 组织”的方案。Zoho 官方支持同一登录身份访问多个 CRM 组织,并明确将加盟商、子公司列为适用场景。官方多组织说明

采用多组织方案前,需要规划总部如何汇总数据。多组织切换功能不提供组织间的数据同步,总部统一报表需要另外建设数据集成,或在 Zoho Analytics 等分析层汇总。各组织的用户许可也需要分别核算。

备注:内容仅供参考。