1.背景
常规权限管理难以满足对财务、薪资等高敏感数据的动态管控需求。通过本技巧“在A模板提交密码才可查看B模板数据”,可实现轻量的二次授权验证,为核心数据访问增设一道安全关卡,确保其仅在有明确授权流程的监督下被临时使用。
2.实现逻辑
(1)用户操作逻辑
①管理员将模板密码添加至【密码模板】中
②用户在【提交密码模板】中输入自己的账号、密码以及需要查看【密码数据模板】名称
③密码正确,返回【密码数据模板】,正常查阅数据,密码不正确,则无法查看数据,用户可返回【提交密码】模板,查看填入的信息是否正确

用户操作流程图说明
(2)功能实现逻辑
①设置三个模板,分别为【密码模板】、【提交密码模板】以及【密码数据模版】
②设计数据策略,将三个模板的数据关联作为数据源
③设计查询策略的满足条件
3.操作步骤
(1)设计模板
①设计【密码】模板,用于存放用户账号对应的模板密码

密码模板数据定义
②设计【提交密码】模板,用于使用户在该模板中提交密码

提交密码模板数据定义
模板优化:可以在填表公式中,将账号赋值初始值为当前用户登录账号

填表公式赋值账号初始值
③设计【密码数据模板】模板,用户最终需要查询的模板(在实际使用过程中,为实际数据模板)

密码数据模板数据项定义
(2)设计数据策略
在【密码数据模板】中设计数据策略
①关联数据源
将【密码】与【提交密码】两个关联为交集,并设置关联关系

设置交集关系

设置与密码模板的关联关系

设置与提交密码模板的关联关系
②设计过滤条件
在数据源的【密码】模板下设计过滤条件,模板名称过滤为当前模板名称,若有多个模板需要二次验证查阅,可以使用同一个【密码】模板与【密码提交】模板

设置过滤条件
③设计满足条件
在表达式中设计条件,当表单需要启用密码,并且当前登录账号等于提交密码模板中的账号时

设计条件表达式
④实现效果
管理员在【密码】模板中设置用户对应的模板密码

管理员设计密码
用户在【提交密码】中输入模板对应的密码

用户提交密码
用户在【密码数据模板】模板中查看数据

用户查看数据
4.扩展说明
(1)周期扩展
在这个基础上,可以设计用户需要多久提交一次密码,比如一天提交一次、一个星期提交一次,实现逻辑为,在【计划任务】中设置定时清空【提交密码】模板数据;
(2)角色扩展
可以设计不同的角色进入需要输入密码,本案例中使用的是everyone角色,则所有人都需要提交密码才能查看,在实际使用过程中,可以指定某一个角色需要输入密码才允许查看;
(3)细节扩展
可以优化模板的细节,比如,赋值初始值、使用填写规范调用表单模板列表数据接口、设置模板视图为对话框等等;
(4)使用扩展
本案例中,表单中有【是否启用密码】字段,只有勾选了密码启用字段,才需要二次验证表单,若不勾选,则不需要二次验证,在实际使用过程中,根据具体需求,可自行决定是否保留该字段;
(5)功能扩展
本案例的需求场景为二次验证,提交密码后解锁模板数据,在搭建过程中,可参考本案例的操作:若有工作台(导航)页面,在设计打开总表的公式之前设计打开表单的公式,填写密码后,才能看到表单,这样用户不需要再打开另外一个模板进行提交密码。