SecretStorage


NameSecretStorage JSON
Version 3.3.3 PyPI version JSON
download
home_pagehttps://github.com/mitya57/secretstorage
SummaryPython bindings to FreeDesktop.org Secret Service API
upload_time2022-08-13 16:22:46
maintainer
docs_urlNone
authorDmitry Shachnev
requires_python>=3.6
licenseBSD 3-Clause License
keywords
VCS
bugtrack_url
requirements No requirements were recorded.
Travis-CI No Travis.
coveralls test coverage No coveralls.
            .. image:: https://github.com/mitya57/secretstorage/workflows/tests/badge.svg
   :target: https://github.com/mitya57/secretstorage/actions
   :alt: GitHub Actions status
.. image:: https://codecov.io/gh/mitya57/secretstorage/branch/master/graph/badge.svg
   :target: https://codecov.io/gh/mitya57/secretstorage
   :alt: Coverage status
.. image:: https://readthedocs.org/projects/secretstorage/badge/?version=latest
   :target: https://secretstorage.readthedocs.io/en/latest/
   :alt: ReadTheDocs status

Module description
==================

This module provides a way for securely storing passwords and other secrets.

It uses D-Bus `Secret Service`_ API that is supported by GNOME Keyring,
KWallet (since version 5.97) and KeePassXC.

The main classes provided are ``secretstorage.Item``, representing a secret
item (that has a *label*, a *secret* and some *attributes*) and
``secretstorage.Collection``, a place items are stored in.

SecretStorage supports most of the functions provided by Secret Service,
including creating and deleting items and collections, editing items,
locking and unlocking collections (asynchronous unlocking is also supported).

The documentation can be found on `secretstorage.readthedocs.io`_.

.. _`Secret Service`: https://specifications.freedesktop.org/secret-service/
.. _`secretstorage.readthedocs.io`: https://secretstorage.readthedocs.io/en/latest/

Building the module
===================

.. note::
   SecretStorage 3.x supports Python 3.6 and newer versions.
   If you have an older version of Python, install SecretStorage 2.x::

      pip install "SecretStorage < 3"

SecretStorage requires these packages to work:

* Jeepney_
* `python-cryptography`_

To build SecretStorage, use this command::

   python3 setup.py build

If you have Sphinx_ installed, you can also build the documentation::

   python3 setup.py build_sphinx

.. _Jeepney: https://pypi.org/project/jeepney/
.. _`python-cryptography`: https://pypi.org/project/cryptography/
.. _Sphinx: http://sphinx-doc.org/

Testing the module
==================

First, make sure that you have the Secret Service daemon installed.
The `GNOME Keyring`_ is the reference server-side implementation for the
Secret Service specification.

.. _`GNOME Keyring`: https://download.gnome.org/sources/gnome-keyring/

Then, start the daemon and unlock the ``default`` collection, if needed.
The testsuite will fail to run if the ``default`` collection exists and is
locked. If it does not exist, the testsuite can also use the temporary
``session`` collection, as provided by the GNOME Keyring.

Then, run the Python unittest module::

   python3 -m unittest discover -s tests

If you want to run the tests in an isolated or headless environment, run
this command in a D-Bus session::

   dbus-run-session -- python3 -m unittest discover -s tests

Get the code
============

SecretStorage is available under BSD license. The source code can be found
on GitHub_.

.. _GitHub: https://github.com/mitya57/secretstorage

            

Raw data

            {
    "_id": null,
    "home_page": "https://github.com/mitya57/secretstorage",
    "name": "SecretStorage",
    "maintainer": "",
    "docs_url": null,
    "requires_python": ">=3.6",
    "maintainer_email": "",
    "keywords": "",
    "author": "Dmitry Shachnev",
    "author_email": "mitya57@gmail.com",
    "download_url": "https://files.pythonhosted.org/packages/53/a4/f48c9d79cb507ed1373477dbceaba7401fd8a23af63b837fa61f1dcd3691/SecretStorage-3.3.3.tar.gz",
    "platform": "Linux",
    "description": ".. image:: https://github.com/mitya57/secretstorage/workflows/tests/badge.svg\n   :target: https://github.com/mitya57/secretstorage/actions\n   :alt: GitHub Actions status\n.. image:: https://codecov.io/gh/mitya57/secretstorage/branch/master/graph/badge.svg\n   :target: https://codecov.io/gh/mitya57/secretstorage\n   :alt: Coverage status\n.. image:: https://readthedocs.org/projects/secretstorage/badge/?version=latest\n   :target: https://secretstorage.readthedocs.io/en/latest/\n   :alt: ReadTheDocs status\n\nModule description\n==================\n\nThis module provides a way for securely storing passwords and other secrets.\n\nIt uses D-Bus `Secret Service`_ API that is supported by GNOME Keyring,\nKWallet (since version 5.97) and KeePassXC.\n\nThe main classes provided are ``secretstorage.Item``, representing a secret\nitem (that has a *label*, a *secret* and some *attributes*) and\n``secretstorage.Collection``, a place items are stored in.\n\nSecretStorage supports most of the functions provided by Secret Service,\nincluding creating and deleting items and collections, editing items,\nlocking and unlocking collections (asynchronous unlocking is also supported).\n\nThe documentation can be found on `secretstorage.readthedocs.io`_.\n\n.. _`Secret Service`: https://specifications.freedesktop.org/secret-service/\n.. _`secretstorage.readthedocs.io`: https://secretstorage.readthedocs.io/en/latest/\n\nBuilding the module\n===================\n\n.. note::\n   SecretStorage 3.x supports Python 3.6 and newer versions.\n   If you have an older version of Python, install SecretStorage 2.x::\n\n      pip install \"SecretStorage < 3\"\n\nSecretStorage requires these packages to work:\n\n* Jeepney_\n* `python-cryptography`_\n\nTo build SecretStorage, use this command::\n\n   python3 setup.py build\n\nIf you have Sphinx_ installed, you can also build the documentation::\n\n   python3 setup.py build_sphinx\n\n.. _Jeepney: https://pypi.org/project/jeepney/\n.. _`python-cryptography`: https://pypi.org/project/cryptography/\n.. _Sphinx: http://sphinx-doc.org/\n\nTesting the module\n==================\n\nFirst, make sure that you have the Secret Service daemon installed.\nThe `GNOME Keyring`_ is the reference server-side implementation for the\nSecret Service specification.\n\n.. _`GNOME Keyring`: https://download.gnome.org/sources/gnome-keyring/\n\nThen, start the daemon and unlock the ``default`` collection, if needed.\nThe testsuite will fail to run if the ``default`` collection exists and is\nlocked. If it does not exist, the testsuite can also use the temporary\n``session`` collection, as provided by the GNOME Keyring.\n\nThen, run the Python unittest module::\n\n   python3 -m unittest discover -s tests\n\nIf you want to run the tests in an isolated or headless environment, run\nthis command in a D-Bus session::\n\n   dbus-run-session -- python3 -m unittest discover -s tests\n\nGet the code\n============\n\nSecretStorage is available under BSD license. The source code can be found\non GitHub_.\n\n.. _GitHub: https://github.com/mitya57/secretstorage\n",
    "bugtrack_url": null,
    "license": "BSD 3-Clause License",
    "summary": "Python bindings to FreeDesktop.org Secret Service API",
    "version": "3.3.3",
    "split_keywords": [],
    "urls": [
        {
            "comment_text": "",
            "digests": {
                "md5": "a86ac85afdab23c1319ddb675bd30504",
                "sha256": "f356e6628222568e3af06f2eba8df495efa13b3b63081dafd4f7d9a7b7bc9f99"
            },
            "downloads": -1,
            "filename": "SecretStorage-3.3.3-py3-none-any.whl",
            "has_sig": true,
            "md5_digest": "a86ac85afdab23c1319ddb675bd30504",
            "packagetype": "bdist_wheel",
            "python_version": "py3",
            "requires_python": ">=3.6",
            "size": 15221,
            "upload_time": "2022-08-13T16:22:44",
            "upload_time_iso_8601": "2022-08-13T16:22:44.457810Z",
            "url": "https://files.pythonhosted.org/packages/54/24/b4293291fa1dd830f353d2cb163295742fa87f179fcc8a20a306a81978b7/SecretStorage-3.3.3-py3-none-any.whl",
            "yanked": false,
            "yanked_reason": null
        },
        {
            "comment_text": "",
            "digests": {
                "md5": "c6ff1cc866d2f1d274b75c6490726b1b",
                "sha256": "2403533ef369eca6d2ba81718576c5e0f564d5cca1b58f73a8b23e7d4eeebd77"
            },
            "downloads": -1,
            "filename": "SecretStorage-3.3.3.tar.gz",
            "has_sig": true,
            "md5_digest": "c6ff1cc866d2f1d274b75c6490726b1b",
            "packagetype": "sdist",
            "python_version": "source",
            "requires_python": ">=3.6",
            "size": 19739,
            "upload_time": "2022-08-13T16:22:46",
            "upload_time_iso_8601": "2022-08-13T16:22:46.976103Z",
            "url": "https://files.pythonhosted.org/packages/53/a4/f48c9d79cb507ed1373477dbceaba7401fd8a23af63b837fa61f1dcd3691/SecretStorage-3.3.3.tar.gz",
            "yanked": false,
            "yanked_reason": null
        }
    ],
    "upload_time": "2022-08-13 16:22:46",
    "github": true,
    "gitlab": false,
    "bitbucket": false,
    "github_user": "mitya57",
    "github_project": "secretstorage",
    "travis_ci": false,
    "coveralls": false,
    "github_actions": true,
    "lcname": "secretstorage"
}
        
Elapsed time: 0.01265s