跳转到主要内容

密钥环后端从Bitwarden读取密码数据

项目描述

Bitwarden Keyring

Build Status License: MIT PyPI version codecov

Bitwarden使用Bitwarden-cli读取机密的Keyring后端代码实现

概述

Keyring python包提供了一个方便的单点访问任何秘密持有系统的入口,允许将这些系统无缝集成到需要秘密的应用程序中,如twine

本项目实现了Keyring,使其能够从开源的多平台云/自托管密码管理器Bitwarden读取秘密。

此后端假设它将在CLI应用程序的上下文中使用,并且可以使用sdtinstdoutstderr与用户通信。我们可以实现一个用于库的后台,假设一切都已经解锁,或者使用pinentry来询问用户。

需求

该项目在底层使用官方的bitwarden CLI,因为没有简单的官方Python bitwarden库。以下是截至2018年10月的安装说明以及最新说明的链接

您可以通过多种方式安装Bitwarden CLI

NPM

如果您已经在系统上安装了Node.js运行时,则可以使用NPM安装CLI。NPM使保持安装更新变得容易,如果您已经使用Node.js,则应首选此安装方法。

npm install -g @bitwarden/cli

本地可执行文件

为每个平台提供原生封装的CLI版本,这些版本不要求安装Node.js运行时。您可以从Bitwarden文档的下载部分获取这些版本。

其他包管理器

安装和配置

pip install bitwarden-keyring

Python打包生态系统可能会非常混乱。

因此,您的设置可能与我设置大相径庭。Keyring 支持一个配置文件,允许显式定义后端路径的选项。您可能需要这个选项来安装,也可能不需要。

使用方法

作为正常密钥环后端使用。它以10的优先级安装,因此很可能会首先被选中。

如果您想与twine一起使用,好消息是您已经准备好了。只需确保该软件包与twine安装在同一位置。

bitwarden-keyring在需要时会自动请求凭证。如果您不希望每次都解锁保险库,可以将保险库会话导出到您的环境中(使用bw unlock并按照说明操作,或启动export BW_SESSION=$(bw unlock --raw))。

注意事项

bitwarden-keyring仅与以下系统进行过测试

  • macOS,使用Homebrew的bitwarden-cli
  • ubuntu,使用Snap的bw

如前所述,bitwarden-keyring仅在具有访问标准输入和输出的CLI应用程序的上下文中工作。如果您需要读取静默或使用其他通信方法的东西,最好的办法可能是创建另一个后端,并且大多数功能都可以重用。

许可

bitwarden-keyring根据MIT许可协议发布。Bitwarden这个名字很可能属于8bit Solutions LLC。

贡献和行为准则

欢迎贡献,请参阅贡献指南。请记住,与项目的所有互动都必须遵守行为准则

项目详情


下载文件

下载您平台的文件。如果您不确定选择哪个,请了解更多关于安装软件包的信息。

源分发

bitwarden-keyring-0.3.1.tar.gz (8.3 kB 查看哈希)

上传时间

构建分发

bitwarden_keyring-0.3.1-py2.py3-none-any.whl (6.7 kB 查看哈希)

上传时间 Python 2 Python 3

支持者

AWSAWS 云计算和安全赞助商 DatadogDatadog 监控 FastlyFastly CDN GoogleGoogle 下载分析 MicrosoftMicrosoft PSF赞助商 PingdomPingdom 监控 SentrySentry 错误日志 StatusPageStatusPage 状态页面