对接钉钉审批
简单介绍
CloudDM支持通过工单的形式来提交数据变更、结构变更的SQL语句,由拥有权限的管理人员进行工单的审批和执行。当前CloudDM的工单系统仅支持对接钉钉审批流系统。本文将指导用户如何如何对接CloudDM和钉钉审批流系统。
准备钉钉管理账号
后续配置需要访问钉钉管理后台。可以采取如下两种方式执行后续的操作:
- 钉钉管理员直接操作:由公司钉钉管理员登入管理后台直接操作
- 钉钉管理员创建子管理员执行操作:由公司管理员创建子管理员,授权子管理源操作管理后台。创建子管理源可以参考《如何设置子管理员》
创建钉钉应用
使用钉钉管理账号登入钉钉管理后台 在应用开发页面创建一个小程序。
填写应用信息,勾选企业自助开发,点击确定创建。
设置应用凭证
点击凭证与基础信息获取钉钉应用凭证
获取凭证信息后,登入CloudDM控制台,按照如下操作打开审批流访问权限设置界面,输入以上创建的应用凭证信息
填写凭证信息点击确认授权访问
设置钉钉应用白名单
将部署CloudDM管控程序的机器公网ip,,否则CloudDM调用钉钉开放接口会被拒绝。;使用私有部署的用户 使用云平台的用户可以直接联系CloudDM获取公网ip地址填写到"服务器出口IP"。私有部署的用户在部署CloudDM的管控机器上执行如下命令获取当前机器的公网ip地址。
curl ipinfo.io/ip
授予接口权限
除了默认的"登入"、"消息"以外添加额外的3个权限:
- 通讯录只读权限
- 通讯录手机号获取userid
- 工作流审批权限
Tips: 如果CloudDM平台所有员工都会访问,这里可以选择"全部员工"
创建审批表单
打开钉钉管理后台
点击OA审批
可以新建一个供CloudDM使用的分组,然后点击创建表单
创建自定义流程表单
基础设置
由于CloudDM当前工单支持提交的SQL类型只能是数据变更类的SQL和结构变更类的SQL,因此建议命名以下两种类型的工单:
- CloudDM结构变更工单
- CloudDM数据变更工单
表单设计
因钉钉接口限制,发起审批流实例需要指定模板中控件名称,因此请严格按照以下要求创建总计7个控件,否则无法正常提交工单。创建控件时的控件类型和标题严格按照下表前两列的内容配置,第三列用于说明控件作用,非输入项。
数据变更工单
控件类型 | 标题 | 控件作用说明 |
---|---|---|
单行输入框 | 工单类型 | 工单的类型,数据变更 或 权限申请 |
单行输入框 | 工单标题 | 创建工单时,用户所填写的工单 标题 内容 |
多行输入框 | 备注信息 | 创建工单时,用户所填写的工单 需求描述 内容 |
单行输入框 | 关联实例 | 创建工单时,用户所选择的 实例名 名称 |
单行输入框 | 关联实例信息 | 创建工单时,用户所选择的 实例名 备注 |
单行输入框 | 实例类型 | 创建工单时,用户所选择的 数据库类型 |
单行输入框 | 关联库 | 创建工单时,用户所选择的 库名 名称 |
单行输入框 | 预计影响行数 | 显示 SQL 分析阶段根据 explain 的结果统计的影响行数 |
单行输入框 | 分析的SQL数量 | 显示 SQL 分析阶段根据 explain 的结果,分析出可能含有问题的SQL数量 |
多行输入框 | 分析的SQL结果汇总 | 显示 SQL 分析阶段根据 explain 的结果,分析出可能含有问题的具体SQL |
多行输入框 | SQL内容 | 创建工单时,用户所希望执行的具体 SQL 内容 |
多行输入框 | 审批意见 | 用于给审批者输入审批意见使用 |
权限申请工单
控件类型 | 标题 | 控件作用说明 |
---|---|---|
单行输入框 | 工单类型 | 工单的类型,数据变更 或 权限申请 |
单行输入框 | 工单标题 | 创建工单时,用户所填写的工单 标题 内容 |
多行输入框 | 备注信息 | 创建工单时,用户所填写的工单 需求描述 内容 |
单行输入框 | 关联实例 | 创建工单时,用户所选择的 实例名 名称 |
单行输入框 | 关联实例信息 | 创建工单时,用户所选择的 实例名 备注 |
单行输入框 | 实例类型 | 创建工单时,用户所选择的 数据库类型 |
单行输入框 | 关联库 | 创建工单时,用户所选择的 库名 名称 |
单行输入框 | 申请的权限 | 显示 用户申请的权限信息 |
多行输入框 | 审批意见 | 用于给审批者输入审批意见使用 |
操作方式如下图所示:
流程设计
流程设计可以按照用户需求自由设置审批节点和对应审批人
Tips: 审批人不能选择"发起人自选"
发布流程表单
点击右上角发布,即可完成流程表单的发布
总结
完成以上操作即完成了对接CloudDM和钉钉审批流。用户可以参照"工单创建"、"工单管理"文档来使用和管理工单。