欢迎来到尧图网

客户服务 关于我们

您的位置:首页 > 科技 > 能源 > 使用 Git Hooks 防止敏感信息泄露

使用 Git Hooks 防止敏感信息泄露

2025/2/24 9:22:47 来源:https://blog.csdn.net/Dongguabai/article/details/140185761  浏览:    关键词:使用 Git Hooks 防止敏感信息泄露

欢迎关注公众号:冬瓜白

在日常开发中,我们可能会不小心将敏感信息提交到 Git。为了防止这种情况,可以利用 Git Hooks 编写一个简单的脚本,当发现提交中包含敏感词时,给出提示。

以下是一个基于 pre-commit 钩子的示例脚本:

#!/bin/bash
# pre-commit.shFILES_PATTERN='\.(java|js|ts)(\..+)?$'
FORBIDDEN_WORDS=("PASSWORD" "SECRET" "TOKEN")  # 添加更多的敏感词
FILES=$(git diff --cached --name-only --diff-filter=ACMR HEAD | grep -E $FILES_PATTERN)ERRORS=""for FILE in $FILES
dofor WORD in "${FORBIDDEN_WORDS[@]}"doif grep -q $WORD $FILEthenERRORS="${ERRORS}ERROR: Found '$WORD' references in $FILE. Please check them.\n"fidone
doneif [ -n "$ERRORS" ]; thenecho -e $ERRORSexit 1
fiexit 0

在这个脚本中定义了三个敏感词:PASSWORDSECRETTOKEN。你可以根据需要添加更多的敏感词。

将这个脚本保存在 .git/hooks/pre-commit

在这里插入图片描述

同时设置脚本可执行:

➜  z-sharding git:(master) chmod +x .git/hooks/pre-commit

这时候当尝试提交包含敏感词的代码时,Git 会给出提示,并精确指出具体的文件,这里我修改了一段包含敏感词的代码:

    private static final String SECRET = "";

Git 提交会弹出提示,并且精确到具体的文件:

➜  z-sharding git:(master)git add .
➜  z-sharding git:(master)git commit -m 'feat:test2'
ERROR: Found 'SECRET' references in src/main/java/com/mi/maf/sharding/core/ConnectionWrapper.java. Please check them.

通过这种方式,可以有效地防止敏感信息的泄露。

版权声明:

本网仅为发布的内容提供存储空间,不对发表、转载的内容提供任何形式的保证。凡本网注明“来源:XXX网络”的作品,均转载自其它媒体,著作权归作者所有,商业转载请联系作者获得授权,非商业转载请注明出处。

我们尊重并感谢每一位作者,均已注明文章来源和作者。如因作品内容、版权或其它问题,请及时与我们联系,联系邮箱:809451989@qq.com,投稿邮箱:809451989@qq.com

热搜词