【发布时间】:2014-05-08 12:52:24
【问题描述】:
我已将纯文本密码存储在配置文件中。有什么办法可以用 XXXXX 模糊或替换密码。
当我在 vim 中打开配置文件时,我想查看
密码 = XXXXX
【问题讨论】:
-
您可以使用 vim 对整个文件进行加密/解密。
-
这是一个配置文件。该程序需要访问您的加密密钥才能使用该文件。
标签: vim jpasswordfield
我已将纯文本密码存储在配置文件中。有什么办法可以用 XXXXX 模糊或替换密码。
当我在 vim 中打开配置文件时,我想查看
密码 = XXXXX
【问题讨论】:
标签: vim jpasswordfield
在配置文件中隐藏密码最简单、最安全的方法是
任何使用 vim 的解决方案都只会掩盖 你 的密码。其他人可以在没有 vim 的情况下打开/读取文件,看到密码。
如果出于某种原因,这是您想要的用例(例如,用于投影演示文稿,而您出于某些不虔诚的原因使用密码观众可以用来利用直播的东西(你到底为什么要这样做),你可以写一个autocmd,它会掩盖等号后面的所有内容。
autocmd BufRead * silent! %s/=[^=]*$/=XXXX/
但是,请注意,这仅用于演示:文本实际上已被重写,您不想保存此文件。
您的另一个选择是使用 7.3 的语法突出显示将文本标记为隐藏。
【讨论】:
是的,使用 Vim 7.3 中引入的 隐藏 功能,您可以用一个替换字符替换匹配项。因此,您可以将整个密码压缩为单个 *,或将每个字符替换为 *(通过单独匹配每个密码字符)。
隐藏是通过语法高亮实现的。只要您的密码文件没有任何现有语法,这只是编写一个简单的syntax/password.vim 语法脚本并做
:setlocal syntax=password
集成到其他语法中更加困难。
详情请见:help :syn-conceal。此帮助页面还包含有关编写语法的所有信息。你特别需要:help :syn-match。
隐藏的好处是您仍然可以在不显示原始密码文本的情况下将其拉出(例如,复制到剪贴板)。 'conceallevel' 和 'concealcursor' 选项控制它。
如果您只是想避免其他人从您的肩膀上读取您的密码,您可以为所有单独的登录条目(/段落)定义 折叠,从关闭所有折叠开始,然后仅短暂打开用于访问的单个当前折叠。
【讨论】:
avoid other people reading your passwords from over your shoulder 那可能是一个。和隐藏可能是关键+1