awspstore


Nameawspstore JSON
Version 1.4.2 PyPI version JSON
download
home_pagehttps://github.com/eldad1221/aws-vault
SummaryVault for your software project using AWS Parameter Store
upload_time2023-08-02 04:44:16
maintainer
docs_urlNone
authorEldad Bishari
requires_python>=3.7
license
keywords
VCS
bugtrack_url
requirements boto3 quickbelog
Travis-CI No Travis.
coveralls test coverage No coveralls.
            # AWS Parameter Store
Parameters store (vault) for your backend software project using AWS Parameter Store

### Why AWS Parameter Store
Usually in every backend project there is a use of environment variables for holding values that can differ for each environment or need to be change from time to time.
Sometimes these parameters can hold sensitive data like passwords or other secrets, there for need to be stored in a safe place.

There are some solutions for that, some of them requires setup time, knowledge and additional servers (e.g. Hashicorp Vault).

One alternative for storing such data is AWS Parameter Store, this service ia part of the AWS Systems Manager service (https://docs.aws.amazon.com/systems-manager/latest/userguide/what-is-systems-manager.html)
AWS Parameter Store is a simple solution to store these parameters and tracking who change what and when.

### Example

In AWS Parameter Store every parameter has a path. 
Here for example we have two parameters for `dev` environment and two for stage.

    /dev/DB_HOST
    /dev/DB_USER
    /dev/DB_PWD
    /stage/DB_HOST
    /stage/DB_USER
    /stage/DB_PWD

To load parameters for `dev` environment see this code snippet

    from awspstore import get_parameters
    
    get_parameters(
        path='dev',  # Parameters path
        update_environ=True,  # Update the environ
        dump_parameters=True  # Dump all loaded parameters to standard output
    )

Parameters dump into standard output. Notice tha the password is masked, by default every parameter that it's name suggesting that it contains a password or other secret will be masked.  

    DEBUG	__init__.py(54) method: dump 	 DB_HOST: my.awesome-db.net
    DEBUG	__init__.py(54) method: dump 	 DB_USER: db_dev_user
    DEBUG	__init__.py(54) method: dump 	 DB_PWD: ***********

### Things to set before using 
Define these environment variables:

    AWS_DEFAULT_REGION = us-west-2
    AWS_ACCESS_KEY_ID = AKIAIOSFODNN7EXAMPLE
    AWS_SECRET_ACCESS_KEY = wJalrXUtnFEMI/K7MDENG/bPxRfiCYEXAMPLEKEY

            

Raw data

            {
    "_id": null,
    "home_page": "https://github.com/eldad1221/aws-vault",
    "name": "awspstore",
    "maintainer": "",
    "docs_url": null,
    "requires_python": ">=3.7",
    "maintainer_email": "",
    "keywords": "",
    "author": "Eldad Bishari",
    "author_email": "eldad@1221tlv.org",
    "download_url": "https://files.pythonhosted.org/packages/65/49/18efaac2ee07621d887ff6f2b77924b1737a0617689bc715f3efee52f328/awspstore-1.4.2.tar.gz",
    "platform": null,
    "description": "# AWS Parameter Store\nParameters store (vault) for your backend software project using AWS Parameter Store\n\n### Why AWS Parameter Store\nUsually in every backend project there is a use of environment variables for holding values that can differ for each environment or need to be change from time to time.\nSometimes these parameters can hold sensitive data like passwords or other secrets, there for need to be stored in a safe place.\n\nThere are some solutions for that, some of them requires setup time, knowledge and additional servers (e.g. Hashicorp Vault).\n\nOne alternative for storing such data is AWS Parameter Store, this service ia part of the AWS Systems Manager service (https://docs.aws.amazon.com/systems-manager/latest/userguide/what-is-systems-manager.html)\nAWS Parameter Store is a simple solution to store these parameters and tracking who change what and when.\n\n### Example\n\nIn AWS Parameter Store every parameter has a path. \nHere for example we have two parameters for `dev` environment and two for stage.\n\n    /dev/DB_HOST\n    /dev/DB_USER\n    /dev/DB_PWD\n    /stage/DB_HOST\n    /stage/DB_USER\n    /stage/DB_PWD\n\nTo load parameters for `dev` environment see this code snippet\n\n    from awspstore import get_parameters\n    \n    get_parameters(\n        path='dev',  # Parameters path\n        update_environ=True,  # Update the environ\n        dump_parameters=True  # Dump all loaded parameters to standard output\n    )\n\nParameters dump into standard output. Notice tha the password is masked, by default every parameter that it's name suggesting that it contains a password or other secret will be masked.  \n\n    DEBUG\t__init__.py(54) method: dump \t DB_HOST: my.awesome-db.net\n    DEBUG\t__init__.py(54) method: dump \t DB_USER: db_dev_user\n    DEBUG\t__init__.py(54) method: dump \t DB_PWD: ***********\n\n### Things to set before using \nDefine these environment variables:\n\n    AWS_DEFAULT_REGION = us-west-2\n    AWS_ACCESS_KEY_ID = AKIAIOSFODNN7EXAMPLE\n    AWS_SECRET_ACCESS_KEY = wJalrXUtnFEMI/K7MDENG/bPxRfiCYEXAMPLEKEY\n",
    "bugtrack_url": null,
    "license": "",
    "summary": "Vault for your software project using AWS Parameter Store",
    "version": "1.4.2",
    "project_urls": {
        "Homepage": "https://github.com/eldad1221/aws-vault"
    },
    "split_keywords": [],
    "urls": [
        {
            "comment_text": "",
            "digests": {
                "blake2b_256": "ea4648d89088c58b0993d33f6be03080a3019f60d9f5756e4d3310a6ff8d25f3",
                "md5": "909fb41311231526c6fa5f3d508742ba",
                "sha256": "62885d773fc27fd6f8e016ce153158ecea4fb04ec40894e408df3b934298b575"
            },
            "downloads": -1,
            "filename": "awspstore-1.4.2-py3-none-any.whl",
            "has_sig": false,
            "md5_digest": "909fb41311231526c6fa5f3d508742ba",
            "packagetype": "bdist_wheel",
            "python_version": "py3",
            "requires_python": ">=3.7",
            "size": 4423,
            "upload_time": "2023-08-02T04:44:15",
            "upload_time_iso_8601": "2023-08-02T04:44:15.380342Z",
            "url": "https://files.pythonhosted.org/packages/ea/46/48d89088c58b0993d33f6be03080a3019f60d9f5756e4d3310a6ff8d25f3/awspstore-1.4.2-py3-none-any.whl",
            "yanked": false,
            "yanked_reason": null
        },
        {
            "comment_text": "",
            "digests": {
                "blake2b_256": "654918efaac2ee07621d887ff6f2b77924b1737a0617689bc715f3efee52f328",
                "md5": "c586036a49c8be5a69ae846b075d46bc",
                "sha256": "19dd4ce1555e9383ac35885338079a7bd9f0741ad30fa8539bd948e07cd6750f"
            },
            "downloads": -1,
            "filename": "awspstore-1.4.2.tar.gz",
            "has_sig": false,
            "md5_digest": "c586036a49c8be5a69ae846b075d46bc",
            "packagetype": "sdist",
            "python_version": "source",
            "requires_python": ">=3.7",
            "size": 4672,
            "upload_time": "2023-08-02T04:44:16",
            "upload_time_iso_8601": "2023-08-02T04:44:16.839463Z",
            "url": "https://files.pythonhosted.org/packages/65/49/18efaac2ee07621d887ff6f2b77924b1737a0617689bc715f3efee52f328/awspstore-1.4.2.tar.gz",
            "yanked": false,
            "yanked_reason": null
        }
    ],
    "upload_time": "2023-08-02 04:44:16",
    "github": true,
    "gitlab": false,
    "bitbucket": false,
    "codeberg": false,
    "github_user": "eldad1221",
    "github_project": "aws-vault",
    "travis_ci": false,
    "coveralls": false,
    "github_actions": true,
    "requirements": [
        {
            "name": "boto3",
            "specs": [
                [
                    "==",
                    "1.26.3"
                ]
            ]
        },
        {
            "name": "quickbelog",
            "specs": [
                [
                    "~=",
                    "1.1.0"
                ]
            ]
        }
    ],
    "lcname": "awspstore"
}
        
Elapsed time: 0.10921s