12 配置站点与内部站点
12.1 目标
理解站点和内部站点配置页中的常用选项,并知道在什么场景下启用浏览器模拟、代理、时区、WebRTC、URL 加密、水印、敏感内容隐藏、URL 屏蔽、页面控件隐藏/删除和脚本配置。
本章面向管理员。配置入口通常在站点或内部站点列表中,找到目标站点后点击配置按钮进入。
站点管理 > 站点列表 > 配置
站点管理 > 内部站点列表 > 配置
站点配置和内部站点配置的核心能力相近。内部站点配置通常用于 ERP、CRM、订单系统、数据后台等企业内网系统;站点配置通常用于 SaaS 站点、外部业务站点或需要统一管控的网页入口。
这里讲的是访问行为和安全策略配置,不是“添加站点”本身。添加内部站点的基础流程见第 6 章;权限分配见第 7 章。
12.2 配置对象的区别
Sa2web 中容易混淆的配置对象主要有三类:
| 配置对象 | 入口 | 影响范围 |
|---|---|---|
| 浏览器实例配置 | 浏览器管理 > 浏览器列表 > 配置 | 影响某个浏览器实例的内核、品牌、系统、启动参数、缓存和硬件相关行为 |
| 站点配置 | 站点管理 > 站点列表 > 配置 | 影响用户访问某个 SaaS / 外部站点时的访问行为 |
| 内部站点配置 | 站点管理 > 内部站点列表 > 配置 | 影响用户访问某个内部系统时的访问行为 |
简单理解:
- 浏览器实例配置决定“用什么浏览器环境跑”;
- 站点和内部站点配置决定“访问这个站点时怎么管控”;
- 分组权限决定“哪些用户能看到和使用这些入口”。
12.3 浏览器实例配置
浏览器实例配置主要来自浏览器列表中的配置页。它不是针对某个 URL,而是针对某个远程浏览器实例。
| 配置项 | 作用 | 建议 |
|---|---|---|
| 内核版本 | 选择实际运行的 Chromium 内核 | 优先使用系统内置、已验证版本 |
| 操作系统 | 设置浏览器环境呈现的系统类型 | 与目标站点风控策略保持一致 |
| 品牌 | Chrome、Edge、Opera、Vivaldi 等浏览器品牌 | 一般选择 Chrome 或业务要求的品牌 |
| 品牌版本 | 选择对应品牌版本 | 与内核版本和目标站点兼容性匹配 |
| 手机型号 | 模拟移动设备 | 仅在目标站点需要移动端形态时启用 |
| 时区 | 设置浏览器环境时区 | 建议与业务账号所在地区一致 |
高级配置中还可以调整启动参数和 Chrome 运行设置。
12.3.1 启动参数
启动参数会写入浏览器启动时的参数集合,常见默认项包括:
| 参数 | 用途 |
|---|---|
disable-gpu |
禁用 GPU,适合服务器环境兼容性兜底 |
no-sandbox |
容器环境中常见的 Chromium 运行参数 |
ignore-certificate-errors |
忽略证书错误,适合测试或自签名证书环境 |
lang |
指定浏览器语言,例如 en-US |
autoplay-policy |
控制媒体自动播放策略 |
启动参数会影响浏览器稳定性和安全边界。除非明确知道目标站点或运行环境需要,不建议随意删除默认参数或添加不熟悉的参数。
12.3.2 Chrome 运行设置
| 配置项 | 作用 |
|---|---|
| 临时目录 | 浏览器运行时临时文件位置 |
| 缓存目录 | 浏览器缓存文件位置 |
| 图片最大大小 | 控制抓取或传输图片时的最大尺寸 |
| 硬件编号 | 用于区分浏览器环境的硬件标识,只能填写数字 |
| 硬件加速 | 是否启用硬件加速 |
| 启动时清除用户数据 | 每次启动时清理浏览器用户数据 |
如果目标站点强依赖登录态或本地缓存,不要轻易启用“启动时清除用户数据”。如果更关注一次性会话和干净环境,可以启用它。
12.4 基本设置
站点和内部站点配置页中的基本设置用于控制访问时的浏览器呈现、安全水印和用户可见信息。
| 配置项 | 作用 | 常见场景 |
|---|---|---|
| 启用模拟器 | 启用浏览器品牌或移动设备模拟 | 目标站点按浏览器或设备类型展示不同页面 |
| 模拟浏览器品牌 | 模拟 Chrome、Edge、Opera、Vivaldi | 站点兼容性或使用需要固定浏览器品牌 |
| 移动设备型号 | 模拟手机型号 | 访问移动端后台、H5 页面或移动端专属能力 |
| 隐藏账号名称 | 不在前端暴露账号名称 | 多账号共享、外包访问、客服代操作 |
| URL 加密 | 不直接显示真实源站 URL | 内部系统、供应商入口、敏感 SaaS/外部站点 |
| 明水印 | 页面上可见水印 | 需要提醒和追溯访问者 |
| 暗水印 | 隐蔽水印 | 截图传播后的追溯场景 |
| 禁用复制 | 限制复制页面内容 | 客户信息、订单数据、合同内容 |
| 禁用打印 | 限制打印页面 | 避免批量导出纸质或 PDF |
| 禁用编辑 | 限制编辑操作 | 只读查看、审计访问 |
安全配置建议按“最小必要”启用。比如只是不想暴露真实地址,可以先启用 URL 加密;如果还担心截图传播,再叠加水印;如果内容本身敏感,再考虑禁用复制、打印和编辑。
12.5 代理设置
代理设置用于决定访问目标站点时流量从哪里出去。
启用代理后,可以选择:
| 代理方式 | 说明 |
|---|---|
direct |
直连 |
auto_detect |
自动检测代理 |
pac_script |
使用 PAC 脚本 |
fixed_servers |
使用固定代理服务器 |
system |
使用系统代理 |
固定代理服务器格式通常为:
http://host:port
https://host:port
socks5://host:port
还可以配置:
| 配置项 | 说明 |
|---|---|
| PAC 脚本 URL | pac_script 模式下使用 |
| 绕过代理列表 | 例如 <local>,<loopback>,192.168.0.0/16,172.16.0.0/12,10.0.0.0/8 |
| 代理用户名 | 代理需要认证时填写 |
| 代理密码 | 代理需要认证时填写 |
内部站点一般不需要公网代理,更多依赖 Browser 节点到内网系统的路由可达性。外部 SaaS 站点如果对出口 IP 有要求,则应该需要使用固定代理。但注意的是当运行的浏览器实例为隔离网络时,则这里配置的代理将不生效,因为代理已经在隔离网络中指定。
12.6 时区设置
时区会影响目标站点看到的浏览器时间环境,也会影响部分站点的时间展示和业务数据默认区间。
建议:
- 如果没有使用代理,则建议使用企业所在地时区;
- 如果使用了代理,则使用该代理ip所在地区的时区。
12.7 WebRTC 设置
站点配置中有两类 WebRTC 相关项:
| 配置项 | 作用 |
|---|---|
| 禁用页面上的 WebRTC 通信 | 阻止页面直接使用 WebRTC 通信 |
| WebRTC 地址白名单 | 在禁用时允许特定地址例外 |
| 启用 WebRTC | 高级配置中控制 Sa2web 画面或通信相关能力 |
如果目标站点不需要音视频、实时通信或浏览器 WebRTC 能力,禁用页面 WebRTC 可以减少真实网络环境暴露。如果目标站点本身依赖 WebRTC,例如视频会议、在线客服、实时音视频后台,则不要禁止webrtc,而是让目标站点在使用隔离网络的浏览器实例中使用。
12.8 敏感内容与 URL 控制
站点和内部站点配置提供三类直接管控能力。
| 配置 | 用途 | 示例 |
|---|---|---|
| 隐藏敏感词 | 对页面中出现的敏感文本做隐藏处理 | 客户手机号、Token、供应商名称 |
| 屏蔽 URL 列表 | 阻止访问匹配的 URL | 导出接口、危险后台路径 |
| 第三方站点 | 允许或关联访问过程中会跳转到的第三方地址 | 登录页、统一认证、支付或工单域名 |
隐藏敏感词支持一次添加多行,每行一个敏感词。URL 屏蔽建议从高风险路径开始配置,例如导出、下载、批量删除、系统设置等入口。
敏感词隐藏和控件隐藏是页面层控制,不能替代后端权限。高风险操作仍应在目标系统自身关闭权限或增加审批。
12.9 高级访问控制
高级配置用于控制窗口、下载、粘贴、画面传输和 URL 变化事件。
| 配置项 | 默认倾向 | 说明 |
|---|---|---|
| 新窗口提示 | 开启 | 目标站点打开新窗口时提示用户 |
| 新窗口超时 | 20000 ms |
等待新窗口创建或响应的时间 |
| 最大窗口数 | 3 |
限制同时打开的窗口数量 |
| 限制下载 | 开启 | 控制用户从远程页面下载文件 |
| 最大上传大小 | 2147483648 bytes |
控制上传文件大小 |
| 粘贴最大文本长度 | 2097152 |
控制一次粘贴文本大小 |
| 粘贴最大文件长度 | 20971520 |
控制粘贴文件大小 |
| Canvas 传送方法 | richcolor |
控制画面传输方式 |
| Canvas 间隔 | 0 ms |
非 WebRTC 传输方式下的刷新间隔 |
| Canvas 最大宽度 / 高度 | 视传输方式使用 | 限制画面传输尺寸 |
| URL 变化事件 | 开启 | 监听页面 URL 变化,便于脚本或策略响应 |
对内部敏感系统,建议先限制下载、控制最大窗口数,再根据业务需要放开上传和粘贴大小。对图形密集型系统,则需要重点测试 Canvas 传送方法与画面质量。
12.10 请求头与响应头
请求头配置和响应头配置用于指定需要读取或参与脚本处理的 Header 名称。
常见用法:
- 根据请求头识别租户、环境或账号;
- 根据响应头判断接口返回类型;
- 给页面脚本或接口脚本提供上下文;
- 调试目标站点在不同网关、SSO 或 CDN 后面的行为。
这里只填写 Header 名称,不直接填写完整请求或响应内容。
12.11 页面删除与页面隐藏控件
页面控件控制分为两类:
| 类型 | 效果 |
|---|---|
| 页面删除控件 | 根据匹配 URL 和 XPath/CSS selector 从页面中删除元素 |
| 页面隐藏控件 | 根据匹配 URL 和 XPath/CSS selector 隐藏元素 |
每条规则包含:
| 字段 | 说明 |
|---|---|
| 匹配 URL | 值为* 表示匹配所有页面,具体匹配URL规则见 小节 12.14 |
| 选择器 | XPath/CSS selector,可以添加多个,具体XPath/CSS 选择器规则见 小节 12.15 |
常见用法:
- 删除“导出”“下载”“删除”“系统设置”等按钮;
- 隐藏价格、成本、客户隐私字段;
- 对某些 URL 页面隐藏高风险区域;
- 给外包、临时员工、协作用户提供简化界面。
目标站点改版后 selector 可能失效。每次目标系统升级后,都应回归测试这些规则。
12.12 脚本配置
脚本配置适合处理页面行为、复杂登录、接口返回和页面增强。
每个脚本包含:
| 字段 | 说明 |
|---|---|
| 脚本名称 | 便于管理员识别 |
| 匹配 URL | 脚本生效的 URL 范围,具体匹配URL规则见 小节 12.14 |
| 页面脚本 | 在页面环境中执行,适合 DOM 操作、按钮处理、表单辅助 |
| SSE 脚本 | 用于处理服务端事件流 |
| 选择器 | 页面脚本可结合 selector 精确定位元素,具体XPath/CSS 选择器规则见 小节 12.15 |
| JavaScript 代码 | 实际执行的脚本内容 ,具体脚本编写见 章节 13 |
建议先用测试站点或测试账号验证脚本,再授权给生产分组。脚本出问题可能导致页面无法正常操作,因此每个脚本都应保持名称清晰、匹配范围尽量窄。
12.13 推荐配置组合
不同场景可以从以下组合开始:
| 场景 | 推荐配置 |
|---|---|
| 内部 ERP / CRM 只读访问 | URL 加密、明水印、限制下载、禁用复制、隐藏敏感词 |
| 外包访问客户后台 | 隐藏账号名称、URL 加密、明水印、暗水印、页面删除控件、录制回放 |
| SaaS 多账号 | 固定代理、时区、浏览器品牌、移动设备型号、隐藏账号名称 |
| 高风险管理后台 | 屏蔽 URL 列表、页面删除控件、限制下载、脚本审计 |
| AI / MCP 访问 | URL 加密、隐藏敏感词、屏蔽高风险 URL、页面隐藏控件、最小分组授权 |
12.14 匹配 URL规则
当为*,则是表示匹配所有URL。当为以下规则时:
1、以regex:开头时,而后面的内容是以正则表达式来匹配URL,例如regex:https\:\/\/www.sa2web.com\/.+;
2、以exract:开头时,则以URL是否等同的方式来匹配URL,例如extract:https://www.sa2web.com;
3、以script:开头时,则用JavaScript脚本方式来匹配URL,脚本有一个变量url,当脚本运行结果是true时,则结果是false则是不匹配,,例如script:url.endsWith('pricing');
4、上面条件都不满足时,则以前缀的方式来匹配URL,例如:https://www.sa2web.com/my。
12.15 XPath/CSS selector
本教程提到的Xpath/css Selector,是为了缩减传递参数,提供一个统一选择器,并进了扩展,有以下规则:
格式如下:
(xpath:)?<xpath/css selector><:p<number>>?
如果以xpath:开头的则是xpath规则,否则是CSS 选择器。:p<number>这部分是可选的,该部分内容表求在目标元素往number个祖先级别找查节点。
示例如下:
//xpath selector
xpath://body[contains(text(),sa2web)]:p1
//css selector
.article
.article:p1
12.16 配置流程建议
- 先确认目标站点能正常打开;
- 再配置代理、时区、浏览器模拟等访问环境;
- 然后启用 URL 加密、水印、隐藏账号名称等展示策略;
- 最后添加敏感词、URL 屏蔽、页面控件和脚本;
- 用测试用户或测试 Agent 登录前端验证;
- 确认无误后再授权给正式分组。