jumpserver通过组织维度实现多租户资产隔离,每个租户对应独立组织,资产、用户、权限、审计均严格绑定组织,天然支持共享实例下的逻辑隔离。

通过堡垒机实现多租户环境下的资产隔离,核心在于利用组织(Organization)维度的逻辑隔离机制,而非部署多套物理系统。JumpServer 作为主流开源堡垒机,已原生支持该能力,关键不在于“能不能”,而在于是否正确配置组织、用户、资产和权限四者的绑定关系。
组织是隔离的起点
JumpServer 的多租户以「组织」为基本单位,每个组织拥有独立的资产库、用户池、权限策略和审计日志。系统内置三种组织:
- GLOBAL(根组织):全局可见,包含所有资源,仅用于系统级管理,不建议日常授权使用
- DEFAULT(默认组织):新用户自动归属于此,需手动迁移至业务组织,否则可能跨组织越权
- SYSTEM(系统组织):仅供内部组件使用,管理员不可修改或授权
实际使用中,应为每个租户(如某分公司、某客户、某项目组)创建独立的自定义组织,并确保所有后续操作都在该组织上下文中进行。
资产必须归属且仅归属一个组织
添加服务器、数据库、网络设备等资产时,必须显式选择所属组织。JumpServer 通过 OrgModelMixin 在数据模型层强制约束:
- 资产记录写入时自动绑定当前组织 ID,无法留空
- 跨组织查询被拦截——即使管理员切换组织视图,也无法看到其他组织的资产列表
- 资产导入/批量添加也需指定组织,避免误入 DEFAULT 或 GLOBAL
用户与权限必须限定在组织内授权
用户本身不天然属于某个组织,而是通过「授权动作」与组织产生关联。关键操作包括:
- 创建用户后,需进入对应组织,再为其分配角色(如「运维员」「审计员」)
- 授权资产时,只能选择当前组织下的资产;点击「授权主机」后,列表仅显示本组织资产
- 账户授权(如 root@192.168.1.10)同样受组织限制,不可复用其他组织的资产账户
- 系统级权限(如「系统管理员」)默认不继承组织权限,需额外在各组织内单独赋权
会话与审计天然按组织隔离
用户登录堡垒机后,前端界面自动过滤只显示其被授权的组织及其中资产。所有操作行为:
- 会话录像、命令审计日志均打上
org_id标签,后台按组织分表存储 - 审计报表导出、搜索、告警规则均可按组织筛选,不同租户日志完全不可见
- Web 终端、SFTP、数据库图形化访问等通道,均在代理层校验组织归属,阻断跨组织跳转
这种从数据建模、权限控制到审计落盘的全链路组织绑定,让多个租户共享同一套 JumpServer 实例时,彼此之间如同运行在独立系统中,无需额外开发或中间件改造。










