租户隔离做在数据层
每张表都有工作区 id,仓储层每个方法的第一个参数就是它。漏传的后果是查不到数据,而不是查到别人的。唯一约束都限定在租户内,两家公司可以有同名部门。
安全
VKT 存着姓名、汇报关系、请假记录和报销单据。这些默认就是敏感信息,所以安全感来自系统怎么建,而不是页面上的一句话。
每张表都有工作区 id,仓储层每个方法的第一个参数就是它。漏传的后果是查不到数据,而不是查到别人的。唯一约束都限定在租户内,两家公司可以有同名部门。
Bot token 进库之前先用 AES-256-GCM 加密,每条记录一个随机 nonce。密钥放在环境变量里,不进代码仓库;密钥格式不对,服务直接拒绝启动。
管理员不是一个手工勾选的开关:它是装应用的人,或者汇报树的最顶端。Slack 端和网页端共用同一处判断,谁能看全公司金额、谁能改设置,口径一致。
保留期可配置。到期后单据内容、备注和票据文件会被删除,只留下金额、状态和审批人——够财务对账,不够识别到某个人。
安全
对工作区里的人事数据,我们是处理者。推广之前可以先签数据处理协议(DPA),分包商、保留期和删除流程都可以书面提供。
把问卷发过来,我们会书面回答,包括架构、数据流和分包商清单。