OA与业务系统打通后,员工可以在一个入口查看审批、客户和项目资料。但“接口能调用”并不等于“调用者有权查看”。在系统集成验收中,除了检查数据是否正确,还需要检查同一个接口面对不同人员时,是否只返回他们有权访问的信息。
登录认证和业务授权,应分开验收
认证回答“你是谁”,授权回答“你能操作哪条记录”。OWASP的授权指南强调最小权限、默认拒绝和逐请求校验。应用到OA接口设计,不能仅凭登录成功或拥有系统账号,就开放所有业务数据。权限依据还应包括组织、岗位、记录关系以及具体操作。
先画出人员、数据和操作的权限矩阵
以一个假设的项目管理集成为例:项目成员可看自己参与的项目,部门负责人可看本部门项目,财务人员可看获准范围内的结算资料。这里的规则只是设计示例,正式上线应由业务负责人确认。
- 人员范围:本人、所属部门、授权跨部门人员。
- 对象范围:项目、客户、合同及其附件。
- 操作范围:查看、修改、审批、导出。
- 字段范围:联系方式、金额等敏感字段是否可见。
不要用一句“负责人拥有全部权限”代替具体规则。查看列表、读取详情和导出文件可以是不同权限,跨部门合作也不必意味着开放整个部门的数据。
关注详情接口和附件入口
OWASP的对象引用安全指南指出,改变记录标识后读取到他人对象,是典型的对象级授权缺失;换成复杂ID仍不能替代权限校验。因此,列表只显示授权项目,还需要详情接口再次检查对应记录,附件入口也应验证其关联业务对象。
例如,不能因为列表隐藏了某个合同,就认为合同已经安全。用户可能通过历史链接、浏览器收藏或同事分享得到详情地址。接口应在读取或返回数据前作出授权决定,不把“前端没有按钮”当作权限措施。
组织变更要进入权限变更流程
对接方案可以把调岗、离职、代理审批和临时跨部门授权列成独立场景。系统同步组织信息后,旧权限何时失效、缓存何时刷新、临时授权何时到期,都需要明确负责人和处理时限。集成账号也应说明数据范围,避免把它的广泛权限直接交给普通用户使用。
用一张验收表覆盖真实边界
建议为测试环境准备普通员工、部门负责人、跨部门协作人员和离职账号,建立各自的数据样本。以下是集成项目可采用的验收清单,具体返回码和拒绝方式以系统约定为准:
- 普通员工正常查看自己的项目;访问无关项目时不能获得正文或附件。
- 部门负责人可看授权部门资料;部门调整后旧范围及时收回。
- 只有查看权限的人,不能通过直接请求完成修改或导出。
- 复制详情地址、替换记录ID或绕过列表入口,不会扩大数据范围。
- 批量查询和导出与单条详情遵循相同的业务边界。
验收报告应记录测试角色、对象、操作、预期结果与实际结果。发现问题后补充回归用例,避免下一次功能升级重新开放越权路径。测试应使用获准的测试环境和数据。
对接前需要准备哪些资料?
先准备组织及人员来源、接口清单、对象归属规则和权限矩阵,再讨论单点登录、数据同步及前端入口。不同OA版本和扩展平台的接口机制存在差异,通用设计原则不能替代对应版本的接口文档。可结合系统集成与接口开发、泛微OA实施与二次开发明确项目边界。
参考资料
本文为上海优翰基于公开技术指南撰写的集成设计分析,示例不代表特定客户的实际项目。资料核对日期:2026年10月14日。