定时任务的权限控制

  • 文档创建者:文档助手1
  • 编辑次数:14次
  • 最近更新:听雨轩 于 2020-06-16
  • 1. 描述

    定时任务生成的 CPR/FRR(CPT 的结果报表为 CPR/决策报表的结果报表后缀为 FRR 文件)和邮件附件内容可根据用户的不同而不同,实现向不同用户分发相应用户数据的报表。

    2. schedule 文件夹

    数据决策系统中创建的定时任务执行之后,会在工程文件夹%FR_HOME%webappswebrootWEB-INF下面新建一个 schedule文件夹,如下图所示:

    1579141589884621.png

    2.1 文件夹层级

    注:该章节介绍 schedule 文件夹的层级结构。

    1) JAR 包为 2020-01-15 之前的 schedule 文件夹层级结构说明,如下表所示:

    层级文件夹名称备注
    第一层schedule--
    第二层定时调度任务名称示例:测试定时任务邮件通知
    第三层任务执行日期示例:2019-12-24
    第四层任务执行时间示例:0937
    第五层「通用结果」或用户名称
    若在「调度对象」中勾选了除通用结果外,根据默认用户组内的用户单独生成结果 ,在执行定时任务时,会在定时任务模板中实现勾选的用户过滤,并创建以用户名命名的文件夹。
    第六层
    以「参数设置」里所有的参数命名

    若在调度对象的「参数设置」中设置了参数,才会有此文件夹。

    命名规则:参数名和值用下划线连接,不同参数用分号连接。

    示例:地区_华东;time_2019-12-04 00:00

    注:JAR 包 为 2020-03-25 及之后,命名规则为随机生成UUID

    第七层

    结果文件:

    包括结果报表(CPR 或 FRR)、Doc、PDF、XLS、XLSX、PNG(邮件需要)

    若在调度对象步骤中勾选「任务结束即清理」,则无「结果文件」。

    2)JAR 包为 2020-01-15 及之后的 schedule 文件夹层级结构说明,如下表所示:

    注:JAR 包为 2020-01-15 及之后的 schedule 文件夹层级结构只有「第六层」与之前版本不同。

    层级文件夹名称备注
    第六层UUID

    若在调度对象的「参数设置」中设置了参数,则会有此文件夹。

    命名规则:不再采用拼接参数的方式,而是生成 UUID

    示例:be918527-2ed8-4c6f-87bd-0e72df8522f5

    注:UUID 和所设置的参数关系保存在 FineDB 的 fine_schedule_task_param 表中。

    2.2 示例

    2.2.1 2020-01-15 之前的 JAR 包

    1)若在调度对象的「参数设置」中设置了参数,schedule 文件夹结构如下图所示:

    8.png

    2)若在「调度对象」中勾选了除通用结果外,根据默认用户组内的用户单独生成结果 ,schedule 文件夹结构如下图所示:

    9.png

    2.2.2 2020-01-15 及之后的 JAR 包

    1)若在调度对象的「参数设置」中设置了参数,schedule 文件夹结构如下图所示:

    12.png

    2)若在「调度对象」中勾选了除通用结果外,根据默认用户组内的用户单独生成结果 ,schedule 文件夹结构如下图所示:

    11.png

    3. 权限控制实现原理

    • 若在「调度对象」中勾选了除通用结果外,根据默认用户组内的用户单独生成结果 ,在执行定时任务时,会在定时任务模板中实现勾选的用户过滤

    • 在用户名称文件夹下的所有文件的内容均只有与相应用户相关的内容,而挂载在虚拟目录下的 CPR 文件根据系统登录用户不同到不同文件夹下下获取 CPR 文件,故可以实现不同用户在 CPR 中只能看到自己的信息。

      可参考 定时任务 cpr 文件内容权限控制

    • 邮件通知中,在发送附件的时候去对应用户文件夹下获取附件并发送出去,因此可以根据收件人不同发送不同的附件,可参考 定时任务邮件发送实现不同的人发送不同内容

    附件列表


    主题: 数据决策系统
    • 有帮助
    • 没帮助
    • 只是浏览
    • 评价文档,奖励 1 ~ 100 随机 F 豆!