管理密码的命令行工具

pwdmanager的Python项目详细描述


保持密码安全并关闭

这是一个管理密码的命令行工具。它们存储在本地加密的json格式文件中。这个 加密和解密由GPG执行。密码解锁使用主密码完成。

使用此程序的好处包括:

  • 使用困难且不同的密码保护您的帐户
  • 您不必信任第三方存储密码:所有内容都存储在本地
  • 使用GPG
  • 提供高端可靠的加密
  • 它是开源的:任何人都可以检查代码

安装

使用PIP或您最喜欢的套餐管理器:

pip install pwdmanager
pipenv install pwdmanager
poetry add pwdmanager

就这样。

如果你想自己制造轮子,你必须有poetry 安装。然后将目录更改为源的根目录并发出:

poetry build

然后,您可以使用喜爱的包管理器安装控制盘:

pip install dist/pwdmanager-XXX-py3-none-any.whl
pipenv install dist/pwdmanager-XXX-py3-none-any.whl
poetry add pwdmanager --path=dist/pwdmanager-XXX-py3-none-any.whl

要求

您需要安装GPG

数据库

数据库是本地json文件。它是加密的。在第一次使用时,它将被初始化。默认位置是 ~/.pwddb但您可以提供自己的位置。

概念

基本上是帐户信息容器中的一个条目。密码数据库是一个条目列表。条目具有 以下属性:

名称
这是条目的ID。两个条目不能同名。
登录
帐户登录
密码
帐户密码
登录别名
第二个或备用帐户登录
别名
一个条目可以有多个别名。每个别名都是条目的id。两个条目不能具有相同的别名。 有助于提供更容易匹配或记住的名称
标记
一个条目可以有多个标记。有助于对条目进行分类。您可以使用标记进行搜索
创建日期
条目创建日期。不可变。
上次更新日期
明显的

用法

usage: pwdmanager [-h] [-d DATABASE] [-p MASTER_PASSWORD]
                    {add,show,list,rm,update} ...

positional arguments:
  {add,show,list,rm,update}

optional arguments:
  -h, --help            show this help message and exit
  -d DATABASE, --database DATABASE
                        specify where the database is located
  -p MASTER_PASSWORD, --master-password MASTER_PASSWORD
                        password to crypt and decrypt the database

有5个主要命令:

添加
添加新条目
显示
要列出特定条目的所有属性,必须给出条目的确切名称或别名
列表
查找条目。可以在不带任何参数的情况下使用,在这种情况下,将列出所有条目。你也可以提供 一个字符串,则将列出包含此字符串的所有具有名称或别名的条目。您也可以按标签过滤。
rm
删除条目。不需要确认,请小心。
更新
修改条目

对于所有这些命令,请使用-h/--help标志获取有关参数的详细信息:

pwdmanager add -h

小心

  • 明智地选择主密码。不要忘记它,否则您将无法恢复数据库
  • 添加密码时,请在命令中指定密码。因此,它可以存储在shell历史记录中。因此我强烈地 建议在添加密码后清除历史记录。在linux上sed -i /^pwdmanager/d ~/.bash_history可以做到 在大多数情况下。
  • 添加密码时,我建议您用单引号将其括起来,因为可能会解释特殊字符 靠壳
  • 备份密码数据库

欢迎加入QQ群-->: 979659372 Python中文网_新手群

推荐PyPI第三方库


热门话题
java在一个问题被连续正确回答三次/并添加差异后,我如何将程序循环回开始   Java中未实例化的匿名类   java如何在Android中录制视频,只允许横向模式和最长时间录制时间   java从另一个活动发送实时消息   多线程java线程和互斥   java禁用Spring安全日志   JAVA伊奥。StreamCorruptedException:在与子级和父级ProcessBuilder通信时写入子级中的标准输出时,流头无效   使用Java(HttpURLConnection)对Restheart进行身份验证(对于Mongodb)   java如何解决Jenkins中的SAXParseException?   java为什么我需要mockito来测试Spring应用程序?   计算sin-cos和tan时缺乏精度(java)   java Hibernate。不同项目中相同一对一映射的不同行为   java图像滑块:如何使用JavaFX将图像放在另一个图像上   java Mockito在使用when时抛出NotAMockException   http Java servlet发送回响应