{ "info": { "author": "Maciej Gol", "author_email": "1kroolik1@gmail.com", "bugtrack_url": null, "classifiers": [ "Environment :: Console", "License :: OSI Approved :: BSD License", "Operating System :: Unix", "Programming Language :: Python :: 3", "Typing :: Typed" ], "description": "# op-askpass\n\nLoad password-protected ssh keys to your agent without prompts using 1Password.\n\nCurrently tested on Ubuntu only.\n\n## Getting started\n\n```bash\n$ pip install op-askpass\n# This installs 1Password cli locally.\n$ op-askpass setup-op-client my.1password.com my_username@gmail.com\n$ op-askpass add-key ~/.ssh/id_rsa \"my 1Password item name\"\n# This fetches the password from 1Password and calls ssh-add.\n$ op-askpass login my\n```\n\nIf your operating system (like Ubuntu 18) automatically adds ssh keys, but does not\nunlock them use `op-askpass login --no-skip-existing`.\n\nIf your system does not have `gpg` binary to verify signature of `op` client,\nuse `op-askpass setup-op-client --no-verify`.\n\n## Details\n\n`op-askpass` stores a small configuration file and 1Password cli called `op`\nin your `$HOME/.op-askpass` directory.\n\nThe configuration file contains a mapping from ssh key fingerprint to key path\nand 1Password item name. The key path is needed for loading the key when\ncalling `op-askpass login`. The item name is looked up for password and\nprovided instead of prompt.\n\nUnderneath, `op-askpass` uses `SSH_ASKPASS` command to override prompt and\ninstead provide the password from 1Password. The only prompt is shown during\n`op-askpass login` to retrieve a 30-minutes long session key.\n\nYou can list keys added to `op-askpass` using `list-keys` command, and delete not needed\nones with `op-askpass delete-key `.\n\n\n### 1Password integration\n\nFor regular, non-company users the 1Password domain is `my.1password.com`. For\ncompany users it is usually `company.1password.com`.\n\nCurrently, only `password` 1Password items are supported.\n\n\n", "description_content_type": "text/markdown", "docs_url": null, "download_url": "", "downloads": { "last_day": -1, "last_month": -1, "last_week": -1 }, "home_page": "https://gitlab.com/maciej.gol/op-askpass", "keywords": "", "license": "BSD-3-Clause", "maintainer": "", "maintainer_email": "", "name": "op-askpass", "package_url": "https://pypi.org/project/op-askpass/", "platform": "", "project_url": "https://pypi.org/project/op-askpass/", "project_urls": { "Homepage": "https://gitlab.com/maciej.gol/op-askpass" }, "release_url": "https://pypi.org/project/op-askpass/0.0.11/", "requires_dist": [ "click", "requests", "dataclasses ; python_version < \"3.7\"", "pytest ; extra == 'dev'", "black ; extra == 'dev'", "wheel ; extra == 'dev'", "pytest-mockito ; extra == 'dev'" ], "requires_python": ">=3.6", "summary": "Add password-protected ssh keys promptless using 1Password.", "version": "0.0.11" }, "last_serial": 5496957, "releases": { "0.0.1": [ { "comment_text": "", "digests": { "md5": "3e1807fdbdfdddf29723babb4dd857f6", "sha256": "b545b2cf95105275ba17a546f9b30e470c654b0f975383a61d487cd55387805d" }, "downloads": -1, "filename": "op_askpass-0.0.1.tar.gz", "has_sig": false, "md5_digest": "3e1807fdbdfdddf29723babb4dd857f6", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 2901, "upload_time": "2019-06-26T19:49:06", "url": "https://files.pythonhosted.org/packages/ed/10/45b413198504b0021a081fd79956cc239834788c2b782a3df0278ceb8e5b/op_askpass-0.0.1.tar.gz" } ], "0.0.10": [ { "comment_text": "", "digests": { "md5": "ad697a9051614bed498c90f24acbb6df", "sha256": "310aa874eae62339d5b404b149887ca5e33205f224da6ec944c1a59360af0cd2" }, "downloads": -1, "filename": "op_askpass-0.0.10-py3-none-any.whl", "has_sig": false, "md5_digest": "ad697a9051614bed498c90f24acbb6df", "packagetype": "bdist_wheel", "python_version": "py3", "requires_python": ">=3.6", "size": 19567, "upload_time": "2019-07-02T19:45:05", "url": "https://files.pythonhosted.org/packages/40/e5/7a43c40fca6664c37b157f47319ce6f83ac1608ae3be2687db0dc0102936/op_askpass-0.0.10-py3-none-any.whl" } ], "0.0.11": [ { "comment_text": "", "digests": { "md5": "503e85117f2415192eefb870017d2bb7", "sha256": "ce11aa04522292e25f17fb37afddb36a41278833437d92129db3ee64e005cbee" }, "downloads": -1, "filename": "op_askpass-0.0.11-py3-none-any.whl", "has_sig": false, "md5_digest": "503e85117f2415192eefb870017d2bb7", "packagetype": "bdist_wheel", "python_version": "py3", "requires_python": ">=3.6", "size": 20248, "upload_time": "2019-07-07T11:24:47", "url": "https://files.pythonhosted.org/packages/ff/31/d276d7c980d355718322875e25fc36af86a0a533d896b92436ede0d95d73/op_askpass-0.0.11-py3-none-any.whl" } ], "0.0.2": [ { "comment_text": "", "digests": { "md5": "5f2959e675cd87ec16ccb1a81d844161", "sha256": "ec2dc4519200efe346f31a42d7553fd176ad1d4917ed92b962863f2f12db766b" }, "downloads": -1, "filename": "op_askpass-0.0.2.tar.gz", "has_sig": false, "md5_digest": "5f2959e675cd87ec16ccb1a81d844161", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 3073, "upload_time": "2019-06-26T20:58:06", "url": "https://files.pythonhosted.org/packages/34/ce/a241c179fc400c5ac29e0bb416ee8bf01e4e050c8eeb57826ef2841a2171/op_askpass-0.0.2.tar.gz" } ], "0.0.3": [ { "comment_text": "", "digests": { "md5": "a340caae94209024879995f6dfd0ca7a", "sha256": "053e6b4cc6bc388ea0a46038524fd914d95b78ac3325ac7717c23f68bf579d48" }, "downloads": -1, "filename": "op_askpass-0.0.3.tar.gz", "has_sig": false, "md5_digest": "a340caae94209024879995f6dfd0ca7a", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 4878, "upload_time": "2019-06-29T21:37:46", "url": "https://files.pythonhosted.org/packages/42/99/cd319024acee631e385bc174264b51e3e36a320f5481d3472c66af00d99a/op_askpass-0.0.3.tar.gz" } ], "0.0.4": [ { "comment_text": "", "digests": { "md5": "756ef50228eb9c61a1187103bca82794", "sha256": "0b86daf563f638bddb799ce79402b6ad267e9dad1a4d0e67668d1a054f6a2d39" }, "downloads": -1, "filename": "op_askpass-0.0.4.tar.gz", "has_sig": false, "md5_digest": "756ef50228eb9c61a1187103bca82794", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 4961, "upload_time": "2019-06-29T21:42:29", "url": "https://files.pythonhosted.org/packages/4e/05/f4b525f114557c9c6a9f88b3beee263467d4931d2ba4b9f2b19b1d153392/op_askpass-0.0.4.tar.gz" } ], "0.0.5": [ { "comment_text": "", "digests": { "md5": "0d15c2024ffe2dd31c8360c6949f88ae", "sha256": "5083b6297a74501ce6bd5170114874b2b497a5e36aeb07fb244c83b8db35dfc0" }, "downloads": -1, "filename": "op_askpass-0.0.5.tar.gz", "has_sig": false, "md5_digest": "0d15c2024ffe2dd31c8360c6949f88ae", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 8056, "upload_time": "2019-06-29T21:56:42", "url": "https://files.pythonhosted.org/packages/95/66/f1cd4f4ef7b8d80c32a2ba0862f4d24dc539ba5f1776e35ebcde8bafe11d/op_askpass-0.0.5.tar.gz" } ], "0.0.6": [ { "comment_text": "", "digests": { "md5": "dc8e64a60f0886dbe561a8bc4efe69d1", "sha256": "8420369db034afa7ef52e98196532b6d85260c5c025122a9f9ec76c12e315ca6" }, "downloads": -1, "filename": "op_askpass-0.0.6-py3-none-any.whl", "has_sig": false, "md5_digest": "dc8e64a60f0886dbe561a8bc4efe69d1", "packagetype": "bdist_wheel", "python_version": "py3", "requires_python": null, "size": 13997, "upload_time": "2019-06-30T19:55:29", "url": "https://files.pythonhosted.org/packages/7c/11/2f2fbea8d32651ac38eb14dc08546e91fe512748eb51943e2127712c8a01/op_askpass-0.0.6-py3-none-any.whl" } ], "0.0.7": [ { "comment_text": "", "digests": { "md5": "bb09ca810d561a83831aeeb079cd3996", "sha256": "6ab3dba86c53f2481914f5935e0570961482a466b69191d59c38775929fa56fb" }, "downloads": -1, "filename": "op_askpass-0.0.7-py3-none-any.whl", "has_sig": false, "md5_digest": "bb09ca810d561a83831aeeb079cd3996", "packagetype": "bdist_wheel", "python_version": "py3", "requires_python": ">=3.6", "size": 14315, "upload_time": "2019-07-01T19:00:14", "url": "https://files.pythonhosted.org/packages/5f/c3/1169c626a490a2e05df6dc72dc5bf2b786c1b1d789ce37c98c0344278576/op_askpass-0.0.7-py3-none-any.whl" } ], "0.0.8": [ { "comment_text": "", "digests": { "md5": "c9afe9cb24f04196fc36e17b4292636b", "sha256": "7449a3c583fb0c61469f17d15bc02f8ff381e865859f424a29b8803acee9a27a" }, "downloads": -1, "filename": "op_askpass-0.0.8-py3-none-any.whl", "has_sig": false, "md5_digest": "c9afe9cb24f04196fc36e17b4292636b", "packagetype": "bdist_wheel", "python_version": "py3", "requires_python": ">=3.6", "size": 14384, "upload_time": "2019-07-01T20:46:17", "url": "https://files.pythonhosted.org/packages/42/be/43ee1d911051562be124c0d0b6dca0500e0f71ffe4812781660596eaf5a6/op_askpass-0.0.8-py3-none-any.whl" } ], "0.0.9": [ { "comment_text": "", "digests": { "md5": "1d7ec393f57be0a8dc92f0c7a7c92fa2", "sha256": "4550a3e29f993e103c302ca42b4c29a1584764bf0c65081a725630e982abf5af" }, "downloads": -1, "filename": "op_askpass-0.0.9-py3-none-any.whl", "has_sig": false, "md5_digest": "1d7ec393f57be0a8dc92f0c7a7c92fa2", "packagetype": "bdist_wheel", "python_version": "py3", "requires_python": ">=3.6", "size": 19547, "upload_time": "2019-07-02T19:40:07", "url": "https://files.pythonhosted.org/packages/b3/68/aeca092aacddcd669f02c0af0362f50ff02c095a0252a44b3d5d1a4b30d3/op_askpass-0.0.9-py3-none-any.whl" } ] }, "urls": [ { "comment_text": "", "digests": { "md5": "503e85117f2415192eefb870017d2bb7", "sha256": "ce11aa04522292e25f17fb37afddb36a41278833437d92129db3ee64e005cbee" }, "downloads": -1, "filename": "op_askpass-0.0.11-py3-none-any.whl", "has_sig": false, "md5_digest": "503e85117f2415192eefb870017d2bb7", "packagetype": "bdist_wheel", "python_version": "py3", "requires_python": ">=3.6", "size": 20248, "upload_time": "2019-07-07T11:24:47", "url": "https://files.pythonhosted.org/packages/ff/31/d276d7c980d355718322875e25fc36af86a0a533d896b92436ede0d95d73/op_askpass-0.0.11-py3-none-any.whl" } ] }