主题
7.3 访问控制说明
7.3.1 只有两种状态:配了密码 / 没配密码
组态画面没有「公开 / 私有」开关,也不需要登录账号。访问与否只取决于一件事 —— 工程属性里有没有配置访问密码:
| 工程属性「访问密码」 | 打开链接的人看到什么 |
|---|---|
| 一条都没配 | 直接看到画面 |
| 配了至少一条 | 先弹密码框,输入其中任意一条的密码才显示内容 |
密码在右侧属性面板 →「工程」→「访问密码」里配置,可以配多组,每组包含用户名、密码、权限级别、备注。详细配法见 1.5 发布与分享。
7.3.2 三级权限:仅查看 / 操作员 / 管理员
每组密码都要选一个权限级别,它决定进来的人能对画面做什么:
| 级别 | 能做什么 |
|---|---|
| 仅查看(view) | 只能看数据,点不动任何控件 |
| 操作员(operator) | 可以操作设备 |
| 管理员(admin) | 完全控制 |
需要拦谁的哪一个动作,是在控件自己的属性里声明的,不是在密码里配的:
- 控件级:控件「控件」属性里的操作权限,填允许操作的角色,多个用逗号分隔 —— 留空 = 所有人都能操作;填
admin= 只有管理员密码进来的能操作;填admin,operator= 管理员和操作员都能操作。 - 画面级:画面对象根级的可见权限(
view_permission),填允许看见这一屏的角色,格式与上面一致;留空 = 所有人可见(老工程都是留空,升级后行为不变)。
这样同一个工程可以同时发给现场操作工和管理员:操作工看到的是他们那几屏,也点不动标定、写参数这类按钮。
7.3.3 改密码
改密码不在「发布」里,有两条路:
- 在编辑器侧:右侧属性面板 →「工程」→「访问密码」,选中要改的那条用户名,改密码后保存。
- 在运行画面侧:已经用某个密码进来的人,点画面上的齿轮设置按钮,菜单里有「修改密码」,改的是自己这一条的密码。
改完保存即生效,旧密码立刻不再可用。
密码忘了怎么办
访问密码存在工程自己的属性里,没有找回入口。忘了就在编辑器里重新配一条 —— 前提是还能登录账号进编辑器。
7.3.4 这个密码能防谁,防不住谁
密码校验在浏览器端执行:密码随组态数据一起下发到前端再比对,抓取网络请求可以看到明文。
因此它适合防止无关人员误入查看,不适合保护真正敏感的操作。需要硬隔离的控制权限,请依靠服务器侧的账号体系。