敏感数据未被删除
Sensitive data not being removed
我在 github 上的一个 .js 文件中存储了 oauth 信息,但是当我尝试清除它时它没有被删除。
git filter-branch --force --index-filter "git rm --cached --ignore-unmatch config" --prune-empty --tag-name-filter cat -- --all
我使用 Windows 7 64 位,git 版本 1.9.5.msysgit.0.
在我完成所有这些之后,github 提交仍然存在于 github 上。有人可以帮助我,让我知道我做错了什么吗?
问题已解决:文件名为 config.js,而不是配置。谢谢
编辑:
Rewrite f8899b62eca2db6bee196e9096e50af54a11dce6 (13/27)rm 'config.js'
Rewrite 7d552dfff83f73680319339199b453fe2c68c486 (14/27)rm 'config.js'
Rewrite af45e665de54b5742c5b7a2abc42930bc3a495a7 (15/27)rm 'config.js'
Rewrite 43ed6fdd603bed538f938b4032327387b5ba678d (16/27)rm 'config.js'
error: duplicate parent 0e53d2d536c4804eb2dd085a6d0a9d9b004efa66 ignor
Rewrite e075498a66de25641d29f02f772f2a026aa2168d (17/27)rm 'config.js'
Rewrite 5312d1b1ae8e0f232daaa05aae630eb016cc417f (18/27)rm 'config.js'
Rewrite 55279be6bf144ea601525523b6262f5d20baebd2 (24/27)rm 'config.js'
Rewrite 3c4534f639742cb33ffb6f43ad1ca6d0df783b3f (25/27)rm 'config.js'
Rewrite ca4a556bdf8efb131786d0b7219098312d5edb0d (27/27)
Ref 'refs/heads/master' was rewritten
Ref 'refs/remotes/origin/master' was rewritten
WARNING: Ref 'refs/remotes/origin/master' is unchanged
至关重要 使已泄露的 OAuth 信息无效并生成新凭据。我建议您在担心清理历史记录之前就这样做。
不幸的是,有些机器人会寻找这种东西:
- http://www.devfactor.net/2014/12/30/2375-amazon-mistake/
- http://wptavern.com/ryan-hellyers-aws-nightmare-leaked-access-keys-result-in-a-6000-bill-overnight
您的 filter-branch
命令看起来不错¹。在本地清除历史记录后,您需要强制推送到 GitHub:
git push origin --force --all
违规提交将保留在 GitHub 上,直到 git-gc
在服务器上 运行。您可以等待它发生,或者您可以 submit a support ticket 要求它在您的存储库中 运行。
¹确保完整文件名(包括扩展名)与 ... "git rm --cached --ignore-unmatch config" ...
部分匹配。
在执行 git gc
之前,您是否删除了备份引用和引用日志条目?
检查
git rev-list --objects --all | grep config
如果文件被删除。
我还写了一篇关于从 git 存储库中删除文件的博客。您会在那里找到更多信息 Remove directories and files permanently from git。
我还在 github 上发布了一个有助于删除文件的 gui 工具。有关此工具的更多信息,请下载:GitDirStat – a git maintenance gui. The actual release。很纯粹java.
我在 github 上的一个 .js 文件中存储了 oauth 信息,但是当我尝试清除它时它没有被删除。
git filter-branch --force --index-filter "git rm --cached --ignore-unmatch config" --prune-empty --tag-name-filter cat -- --all
我使用 Windows 7 64 位,git 版本 1.9.5.msysgit.0.
在我完成所有这些之后,github 提交仍然存在于 github 上。有人可以帮助我,让我知道我做错了什么吗?
问题已解决:文件名为 config.js,而不是配置。谢谢
编辑:
Rewrite f8899b62eca2db6bee196e9096e50af54a11dce6 (13/27)rm 'config.js'
Rewrite 7d552dfff83f73680319339199b453fe2c68c486 (14/27)rm 'config.js'
Rewrite af45e665de54b5742c5b7a2abc42930bc3a495a7 (15/27)rm 'config.js'
Rewrite 43ed6fdd603bed538f938b4032327387b5ba678d (16/27)rm 'config.js'
error: duplicate parent 0e53d2d536c4804eb2dd085a6d0a9d9b004efa66 ignor
Rewrite e075498a66de25641d29f02f772f2a026aa2168d (17/27)rm 'config.js'
Rewrite 5312d1b1ae8e0f232daaa05aae630eb016cc417f (18/27)rm 'config.js'
Rewrite 55279be6bf144ea601525523b6262f5d20baebd2 (24/27)rm 'config.js'
Rewrite 3c4534f639742cb33ffb6f43ad1ca6d0df783b3f (25/27)rm 'config.js'
Rewrite ca4a556bdf8efb131786d0b7219098312d5edb0d (27/27)
Ref 'refs/heads/master' was rewritten
Ref 'refs/remotes/origin/master' was rewritten
WARNING: Ref 'refs/remotes/origin/master' is unchanged
至关重要 使已泄露的 OAuth 信息无效并生成新凭据。我建议您在担心清理历史记录之前就这样做。
不幸的是,有些机器人会寻找这种东西:
- http://www.devfactor.net/2014/12/30/2375-amazon-mistake/
- http://wptavern.com/ryan-hellyers-aws-nightmare-leaked-access-keys-result-in-a-6000-bill-overnight
您的 filter-branch
命令看起来不错¹。在本地清除历史记录后,您需要强制推送到 GitHub:
git push origin --force --all
违规提交将保留在 GitHub 上,直到 git-gc
在服务器上 运行。您可以等待它发生,或者您可以 submit a support ticket 要求它在您的存储库中 运行。
¹确保完整文件名(包括扩展名)与 ... "git rm --cached --ignore-unmatch config" ...
部分匹配。
在执行 git gc
之前,您是否删除了备份引用和引用日志条目?
检查
git rev-list --objects --all | grep config
如果文件被删除。
我还写了一篇关于从 git 存储库中删除文件的博客。您会在那里找到更多信息 Remove directories and files permanently from git。
我还在 github 上发布了一个有助于删除文件的 gui 工具。有关此工具的更多信息,请下载:GitDirStat – a git maintenance gui. The actual release。很纯粹java.