archery修改为不能自提自审核上线SQL
目录
- 背景
- 修改代码
- 效果
- 参考
背景
- 我和同事都可以提交上线SQL,但是不能自己提交的SQL自己去审核通过。
- 目前的情况是可以自提自审。

修改代码
- 找到
/opt/archery/sql/utils/workflow_audit.py文件
...省略...# 判断用户当前是否是可审核@staticmethoddef can_review(user, workflow_id, workflow_type):audit_info = WorkflowAudit.objects.get(workflow_id=workflow_id, workflow_type=workflow_type)group_id = audit_info.group_idresult = False# 只有待审核状态数据才可以审核if audit_info.current_status == WorkflowDict.workflow_status["audit_wait"]:try:auth_group_id = Audit.detail_by_workflow_id(workflow_id, workflow_type).current_auditaudit_auth_group = Group.objects.get(id=auth_group_id).nameexcept Exception:raise Exception("当前审批auth_group_id不存在,请检查并清洗历史数据")if (auth_group_users([audit_auth_group], group_id).filter(id=user.id).exists()or user.is_superuser == 1):if workflow_type == 1:if user.has_perm("sql.query_review"):result = Trueelif workflow_type == 2:if user.has_perm("sql.sql_review"):result = Trueelif workflow_type == 3:if user.has_perm("sql.archive_review"):result = Trueif group_id in [1, 2]: # 增加create_user = audit_info.create_user # 增加if create_user == user.username: # 增加result = False # 增加return result
... 省略...
group_id是资源组ID

- 我这边使用docker运行,把·workflow_audit.py·文件替换就好。运行以下命令。
docker cp workflow_audit.py archery:/opt/archery/sql/utils/
- 然后重启
docker restart archery
效果
- 现在我自己的帐户就没有审批自己提交SQL的权限了,如下图所示。

- 登录别人的账号有审核的权限,如下图所示。

参考
- https://blog.csdn.net/line_on_database/article/details/123847361 非常感谢这位大佬
相关文章:
archery修改为不能自提自审核上线SQL
目录 背景修改代码效果参考 背景 我和同事都可以提交上线SQL,但是不能自己提交的SQL自己去审核通过。目前的情况是可以自提自审。 修改代码 找到/opt/archery/sql/utils/workflow_audit.py文件 ...省略...# 判断用户当前是否是可审核staticmethoddef can_revie…...
如何处理git多分支
本篇文章主要处理以下两种多分支问题 如何将自己在本地的修改上传到一个新的Git分支(比如用于测试,不合并进main分支)?如何在一个新的本地仓库拉取一个项目的非main分支,并处理他们关联关系? 1. 将自己在…...
Proteus仿真--基于DS1302与数码管设计的可调电子钟
本文主要介绍基于51单片机的DS1302的可调式电子钟实验(完整仿真源文件及代码见文末链接) 仿真图如下 其中数码管显示电子钟时间信息,按键用于调节时间,时间芯片选用DS1302芯片 仿真运行视频 Proteus仿真--基于DS1302与数码管设…...
ESP32网络开发实例-远程Web串口监视器
远程Web串口监视器 文章目录 远程Web串口监视器1、应用介绍2、软件准备3、硬件准备4、代码实现在本文中,我们将构建一个 ESP32 网络服务器,用作远程串行监视器。 基于 Web 的串行监视器的工作方式与通常用于调试目的的 Arduino IDE 串行监视器的工作方式相同。 1、应用介绍 …...
xadmin后台在每一行记录增加一个复制链接按钮
xadmin后台在每一行记录增加一个复制链接按钮 1、效果 点击复制后,自动把url链接复制到粘贴板,按Ctrl+v即可显示复制内容。 2、实现代码 adminx.py # 用户管理 class UserWhiteListAdmin(object):search_fields = [name, mobile] # 检索字段list_display...
LVS+Keepalived 高可用群集
一、一.Keepalived工具介绍 专为LVS和HA设计的一款健康检查工具 • 支持故障自动切换(Failover) • 支持节点健康状态检查(Health Checking) • 官方网站:http://www.keepalived.org/ 二、Keepalived工作原理 • …...
数据传输的思考
Wi-Fi:Wi-Fi是一种无线网络技术,可以用于无线互联网接入、局域网通信和数据传输等。Wi-Fi基于IEEE 802.11标准,通过无线信号传输数据,提供高速的无线网络连接。Wi-Fi可用于连接设备与路由器或者设备之间的直接通信,可以…...
ETL-使用kettle批量复制sqlserver数据到mysql数据库
文章标题 1、安装sqlserver数据库2、下载kettle3、业务分析4、详细流程(1)转换1:获取sqlserver所有表格名字,将记录复制到结果(2)转换2:从结果设置变量(3)转换3ÿ…...
交流充电桩与直流充电桩的区别
1、背景 直流充电桩的学名是非车载充电机,是相对于交流充电桩而言的。交流充电桩是采用传导方式为具备车载充电机的电动汽车提供交流电能的专用装置。 2、交流充电桩和直流充电桩 1.1、交流充电桩 交流充电桩包括单相和三相交流充电桩。 图一是交流充电桩原理框…...
基于单片机公交安全预警系统仿真设计
**单片机设计介绍, 基于单片机公交安全预警系统仿真设计 文章目录 一 概要二、功能设计设计思路 三、 软件设计原理图 五、 程序六、 文章目录 一 概要 基于单片机的公交安全预警系统可以被设计成能够实时监测公交车辆的行驶状态,并在发生异常情况时进行…...
HarmonyOS基础组件之Button三种类型的使用
简介 HarmonyOS在明年将正式不再兼容Android原生功能,这意味着对于客户端的小伙伴不得不开始学习HarmonyOS开发语言。本篇文章主要介绍鸿蒙中的Button使用。 HarmonyOS中的Button相较于Android原生来说,功能比较丰富,扩展性高,减…...
Using the File Class使用文件类
Using the File Class 使用文件类 The file layout class enables you to perform file input and output operations with Application Engine using PeopleCode. A file object enables you to open a file (for reading or writing), read data from a file, or write da…...
【Kafka】Java整合Kafka
1.引入依赖 <dependency><groupId>org.apache.kafka</groupId><artifactId>kafka-clients</artifactId><version>2.3.1</version></dependency> 2.搭建生产者 package com.wen.kafka;import org.apache.kafka.clients.produ…...
所里网连不上,我服了
所里网连不上,我服了所里网连不上,我服了所里网连不上,我服了...
Yakit工具篇:WebFuzzer模块之热加载技术
简介 官方定义: 什么是热加载? 广义上来说,热加载是一种允许在不停止或重启应用程序的情况下,动态加载或更新特定组件或模块的功能。这种技术常用于开发过程中,提高开发效率和用户体验。 在Yakit 的Web Fuzzer中&…...
Linux基本指令(前篇)
目录 1.ls指令 2.pwd指令 3.cd 指令 4.touch指令 5.mkdir指令(重要) 6.rmdir指令 && rm 指令(重要) 7.man指令(重要) 1.ls指令 ls 选项 目录或文件 对于目录,该命令列出该目录下的所…...
[网鼎杯 2020 青龙组]singal
一道VM题目 可以看到长度是15 跟踪调用read函数的函数 分析一下switch中每个指令的含义、 在scanf下面打断点 在关键跳转处下断点 打开Ponce插件 GitHub - illera88/Ponce: IDA 2016 plugin contest winner! Symbolic Execution just one-click away! 然后开始动调 输入15个…...
Qt/QML编程学习之心得:一个QML工程的学习笔记(十)
前言: 到底什么是Qt Quick呢?因为Qt Quick是Qt新引入的,Qt Quick由Qt Quick模块提供,它是一个编写QML应用的标准库。Qt Quick模块提供了两种接口:使用QML语言创建应用的QML接口和使用C++语言扩展QML的C++接口。使用Qt Quick模块,设计人员和开发人员可以轻松地构建流畅的…...
LeetCode OJ循环队列(C语言)
1.题目的初步分析 我们分析上述题目的时候会发现题目非常的长,不好整理思路,我这里可以大致的将本题的几个核心点说出来: 1.队列的思路 循环队列说来说去不还是队列嘛,那么队列的基本操作增删查改、以及队列的基本结构肯定都是不能…...
打码平台之图鉴的使用步骤
打码平台之图鉴 背景: 今天给大家推荐一个我一直使用的验证码识别平台,图鉴,我没有收费,我只是觉得这个网站使用方便,支持验证码种类多,好了,话不多说,上教程! 注册…...
Skills - 把方法论做成「可安装的技能」:Khazix Skills 技术解析与实战指南
文章目录一、为什么需要「Skills」,光有 Prompts 不够?二、Khazix Skills 总览:一个聚焦「深度研究 写作」的工具箱三、从 Prompt 到 Skill:为什么要遵循开放标准?3.1 Prompt:快速试错的「脚本」3.2 Skill&…...
Gitleaks介绍(开源的Git仓库敏感信息扫描工具,用于检测代码中是否包含潜在secrets)密钥扫描、敏感信息扫描、自定义规则Regex、SARIF、质量门禁、Trivy、SAST
文章目录使用 Gitleaks 防止代码仓库泄露敏感信息一、什么是 Gitleaks?二、为什么需要 Gitleaks?1. Git 是“永久记录”2. 自动化开发带来的风险3. 安全合规要求三、Gitleaks 的核心能力1. 基于规则的检测(Rule-based Detection)2…...
混音教学第五课|从零认识 RVC:软件启动全流程真机实操(GTX1050Ti 专属)
作者:龙沅可 各位音乐编程圈的兄弟,我是深耕实战 3 年的地下程序员胡桃。前面我们走完了人声分离、软件模型全套准备、Anaconda 环境兜底、VOCALOID&RVC 选择杂谈、官方作品技术复盘 个人修复版全流程,本期终于回归主线实操,…...
【进阶专栏】AI时代从好奇心到产品力(进阶):实战落地指南
专栏定位 基础篇:从好奇心到产品力:AI时代的产品构建方法论 进阶篇:AI时代从好奇心到产品力(进阶):实战落地指南 基础篇帮你"看懂",进阶篇帮你"做到"。 基础篇(第1-6篇)建立了GAP模型的理论框架,让你能分析和理解任何产品的行为设计。 进阶篇(第…...
别再只谈参数了!SITS2026首次发布AGI能效黄金公式:E = (FLOPs × V² × f) ÷ Accuracy² —— 附Python自动测算脚本
第一章:SITS2026分享:AGI的能源消耗问题 2026奇点智能技术大会(https://ml-summit.org) AGI训练能耗已逼近传统工业规模 据SITS2026大会披露,单次AGI基座模型全量训练(参数量≥10 13)平均耗电达270–450 MWh…...
别再死记硬背ARP了!用Wireshark抓包,5分钟带你亲眼看看局域网‘喊话’全过程
用Wireshark解密ARP协议:从抓包实战看局域网如何"喊话" 当你第一次听说ARP协议时,是否也被那些"广播请求"、"单播响应"的抽象概念搞得一头雾水?作为网络通信的基础协议之一,ARP(地址解析…...
专业干货:低查重AI教材写作工具,为你高效编写优质教材
撰写教材的过程,总能让我踩中各种“慢节奏”的坑。尽管资料和大纲都准备得差不多了,但在具体内容的撰写上就常常遇到瓶颈——常常在一句话上绞尽脑汁,反复修改还是觉得不够完美;而章节之间的衔接也是卡得厉害,想来想去…...
英雄联盟智能工具集:5大功能助你轻松上分,告别繁琐操作
英雄联盟智能工具集:5大功能助你轻松上分,告别繁琐操作 【免费下载链接】League-Toolkit An all-in-one toolkit for LeagueClient. Gathering power 🚀. 项目地址: https://gitcode.com/gh_mirrors/le/League-Toolkit 还在为英雄联盟…...
离线环境也能玩转ROS Gazebo:离线部署完整模型库(含sun/ground_plane)的完整指南
离线环境下的ROS Gazebo模型库全攻略:从部署到实战 在机器人开发与教学领域,Gazebo作为一款高保真物理仿真工具,其重要性不言而喻。然而,许多开发者都曾遇到过这样的困境:当网络连接不稳定或完全离线时,Gaz…...
如何免费为Mac打造专业级音频系统?eqMac系统均衡器完整指南
如何免费为Mac打造专业级音频系统?eqMac系统均衡器完整指南 【免费下载链接】eqMac macOS System-wide Audio Equalizer & Volume Mixer 🎧 项目地址: https://gitcode.com/gh_mirrors/eq/eqMac 还在为Mac平淡无奇的音质烦恼吗?无…...
