MotionPro 用户级策略引擎:按身份动态控制访问权限
策略引擎是什么
MotionPro 的"能做什么"(授权)完全由 AG 网关的策略引擎 决定。引擎根据用户身份 + 多种上下文字段,动态计算出当前会话的访问权限集合。MotionPro 客户端被动接收结果,不参与决策。
策略引擎的决策维度
AG 网关策略引擎可以从以下维度组合条件:
| 维度 | 可能值 | 用途示例 |
|---|---|---|
| 用户/用户组 | 张三 / 财务部 / 外包组 | 财务部能访问财务系统,外包组只能访问特定项目区 |
| 时间窗口 | 工作日 9:00-18:00 / 任意时间 | 下班后禁止 VPN 登录(强制加班管控) |
| 设备 Device ID | 已绑定的设备 / 未绑定的设备 | 未绑定的新设备需要额外验证才能登录 |
| 地理位置 | 中国 / 美国 / 海外 | 海外出差时禁止访问敏感系统 |
| 终端安全状态 | Host Check 报告:已安装杀毒 / 未安装 | 未装杀毒的设备禁止连接 |
| 客户端版本 | MotionPro ≥ 3.1.0 / MotionPro < 3.1.0 | 强制用户升级到安全版本 |
| 操作系统版本 | iOS ≥ 16 / Android ≥ 13 / Windows 11 | 过旧的系统禁止连接 |
| 越狱/Root 状态 | 是 / 否 | 越狱/Root 的设备禁止连接 |
策略引擎的输出是什么
策略引擎计算完成后,输出一个权限集合(Privilege Set),这个集合会通过 VPN 隧道下发给 MotionPro 客户端,内容包括:
- L3VPN 路由表:该用户可以访问哪些内网网段
- 门户资源列表:企业应用门户里该用户能看到哪些 Web 应用、原生应用、发布应用、远程桌面
- 认证类型:该用户登录时需要用哪种认证方式(密码 / 证书 / 2FA)
- 附加安全要求:是否需要 Host Check、是否强制特定客户端版本
- 会话策略:会话超时时间、空闲超时时间、是否允许同时多设备登录
- 数据容器策略:剪贴板权限、文件下载权限、会话自动销毁行为
策略引擎的实际效果
场景 1:同一个 VPN,不同用户看到不同门户
- 财务部门用户登录后,门户里有 ERP、报销系统、银行接口
- 研发部门用户登录后,门户里有 Git、CI/CD 工具、内部文档 Wiki
- 外包工程师登录后,门户里只有他们项目区的几个特定系统
所有用户连的是同一个 AG 网关(同一个域名、同一个登录入口),但策略引擎根据用户身份下发了完全不同的权限集合。
场景 2:同一用户,不同设备权限不同
- 员工在公司配发的管理手机(MDM 受管、Device ID 已绑定)上登录 → 看到的资源完整
- 员工在自己的个人手机(未受管、Device ID 新)上登录 → 只能看到部分非敏感资源 + 强制短信 2FA
- 员工用这台个人手机越狱了 → MotionPro 登录时 Host Check 检测到越狱 → 网关拒绝连接
场景 3:时间和地理位置限制
- 用户在工作时间 + 中国境内登录 → 完整访问
- 用户在非工作时间登录 → 只能访问基本的 IM 和 Wiki
- 用户在海外(VPN 出口 IP 显示在海外)登录 → 被禁止访问财务和 HR 系统
策略引擎 vs MotionPro 客户端
一个常见误解是:MotionPro 客户端能不能自己改路由表?能不能自己绕过门户策略?
答案是不能。所有策略都是在 AG 网关端统一控制的:
- 客户端无法自行添加网关没下发的路由表条目(L3VPN 模式)
- 门户资源列表由网关动态生成,客户端不能修改或添加
- 认证类型由网关在会话参数里指定,客户端被迫遵循
- 数据容器策略(剪贴板、下载)由网关下发,客户端不能覆盖
唯一能改变策略的人是 IT 部门——他们在 AG 网关的管理界面或 CLI 命令行里配置策略。普通用户在 MotionPro 客户端里能做的只是"连上 / 断开 / 改高级配置"——高级配置也只有在不违反网关端策略的情况下才生效。
策略与合规
AG 网关的策略引擎是组织安全合规体系的核心组件。通过它可以:
- 实现最小权限原则(用户只能访问工作必需的资源)
- 记录完整的审计日志(谁、什么时候、访问了什么)
- 满足等保、ISO 27001、SOX、GDPR 等合规要求中的访问控制章节
MotionPro 作为客户端,只是这套体系的最末端——负责把网关决策好的策略落地执行。