Skip to main content

对接钉钉审批

简单介绍

CloudDM支持通过工单的形式来提交数据变更、结构变更的SQL语句,由拥有权限的管理人员进行工单的审批和执行。当前CloudDM的工单系统仅支持对接钉钉审批流系统。本文将指导用户如何如何对接CloudDM和钉钉审批流系统。

准备钉钉管理账号

后续配置需要访问钉钉管理后台。可以采取如下两种方式执行后续的操作:

  • 钉钉管理员直接操作:由公司钉钉管理员登入管理后台直接操作
  • 钉钉管理员创建子管理员执行操作:由公司管理员创建子管理员,授权子管理源操作管理后台。创建子管理源可以参考《如何设置子管理员》

创建钉钉应用

使用钉钉管理账号登入钉钉管理后台 在应用开发页面创建一个小程序。

image.png

填写应用信息,勾选企业自助开发,点击确定创建。

image.png

设置应用凭证

点击凭证与基础信息获取钉钉应用凭证 image.png

获取凭证信息后,登入CloudDM控制台,按照如下操作打开审批流访问权限设置界面,输入以上创建的应用凭证信息

image.png

填写凭证信息点击确认授权访问

image.png

设置钉钉应用白名单

将部署CloudDM管控程序的机器公网ip,,否则CloudDM调用钉钉开放接口会被拒绝。;使用私有部署的用户 使用云平台的用户可以直接联系CloudDM获取公网ip地址填写到"服务器出口IP"。私有部署的用户在部署CloudDM的管控机器上执行如下命令获取当前机器的公网ip地址。

curl ipinfo.io/ip

image.png

授予接口权限

除了默认的"登入"、"消息"以外添加额外的3个权限:

  • 通讯录只读权限
  • 通讯录手机号获取userid
  • 工作流审批权限

Tips: 如果CloudDM平台所有员工都会访问,这里可以选择"全部员工"

image.png

创建审批表单

打开钉钉管理后台

点击OA审批

image.png

可以新建一个供CloudDM使用的分组,然后点击创建表单

image.png

创建自定义流程表单

image.png

基础设置

由于CloudDM当前工单支持提交的SQL类型只能是数据变更类的SQL和结构变更类的SQL,因此建议命名以下两种类型的工单:

  • CloudDM结构变更工单
  • CloudDM数据变更工单

image.png

表单设计

因钉钉接口限制,发起审批流实例需要指定模板中控件名称,因此请严格按照以下要求创建总计7个控件,否则无法正常提交工单。创建控件时的控件类型和标题严格按照下表前两列的内容配置,第三列用于说明控件作用,非输入项。

数据变更工单

控件类型标题控件作用说明
单行输入框工单类型工单的类型,数据变更 或 权限申请
单行输入框工单标题创建工单时,用户所填写的工单 标题 内容
多行输入框备注信息创建工单时,用户所填写的工单 需求描述 内容
单行输入框关联实例创建工单时,用户所选择的 实例名 名称
单行输入框关联实例信息创建工单时,用户所选择的 实例名 备注
单行输入框实例类型创建工单时,用户所选择的 数据库类型
单行输入框关联库创建工单时,用户所选择的 库名 名称
单行输入框预计影响行数显示 SQL 分析阶段根据 explain 的结果统计的影响行数
单行输入框分析的SQL数量显示 SQL 分析阶段根据 explain 的结果,分析出可能含有问题的SQL数量
多行输入框分析的SQL结果汇总显示 SQL 分析阶段根据 explain 的结果,分析出可能含有问题的具体SQL
多行输入框SQL内容创建工单时,用户所希望执行的具体 SQL 内容
多行输入框审批意见用于给审批者输入审批意见使用

权限申请工单

控件类型标题控件作用说明
单行输入框工单类型工单的类型,数据变更 或 权限申请
单行输入框工单标题创建工单时,用户所填写的工单 标题 内容
多行输入框备注信息创建工单时,用户所填写的工单 需求描述 内容
单行输入框关联实例创建工单时,用户所选择的 实例名 名称
单行输入框关联实例信息创建工单时,用户所选择的 实例名 备注
单行输入框实例类型创建工单时,用户所选择的 数据库类型
单行输入框关联库创建工单时,用户所选择的 库名 名称
单行输入框申请的权限显示 用户申请的权限信息
多行输入框审批意见用于给审批者输入审批意见使用

操作方式如下图所示: image.png

流程设计

流程设计可以按照用户需求自由设置审批节点和对应审批人

image.png

Tips: 审批人不能选择"发起人自选"

发布流程表单

点击右上角发布,即可完成流程表单的发布

image.png

总结

完成以上操作即完成了对接CloudDM和钉钉审批流。用户可以参照"工单创建"、"工单管理"文档来使用和管理工单。