{ "info": { "author": "Department for International Trade", "author_email": "webops@digital.trade.gov.uk", "bugtrack_url": null, "classifiers": [ "License :: OSI Approved :: MIT License", "Programming Language :: Python :: 3" ], "description": "# hawk-server-asyncio [![CircleCI](https://circleci.com/gh/uktrade/hawk-server-asyncio.svg?style=svg)](https://circleci.com/gh/uktrade/hawk-server-asyncio) [![Test Coverage](https://api.codeclimate.com/v1/badges/b03db2f3cb9fedeb4ea7/test_coverage)](https://codeclimate.com/github/uktrade/hawk-server-asyncio/test_coverage)\n\nUtility function to perform the server-side of Hawk authentication\n\n\n## Installation\n\n```bash\npip install hawk-server-asyncio\n```\n\n\n## Usage\n\n```python\nfrom hawkserver import authenticate_hawk_header\n\nasync def lookup_credentials(id):\n # Return {'id': 'some-id', 'key': 'some-secret'} matching credentials,\n # or None if credentials can't be found\n\nasync def seen_nonce(nonce, id):\n # Store nonce, return True if nonce previously seen\n\nis_authenticated, error_message, credentials = await authenticate_hawk_header(\n lookup_credentials, seen_nonce, max_skew,\n header, method, host, port, path, content_type, content,\n)\nif not is_authenticated:\n # Return error or raise exception as needed\n```\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://github.com/uktrade/hawk-server-asyncio", "keywords": "", "license": "", "maintainer": "", "maintainer_email": "", "name": "hawk-server-asyncio", "package_url": "https://pypi.org/project/hawk-server-asyncio/", "platform": "", "project_url": "https://pypi.org/project/hawk-server-asyncio/", "project_urls": { "Homepage": "https://github.com/uktrade/hawk-server-asyncio" }, "release_url": "https://pypi.org/project/hawk-server-asyncio/0.0.6/", "requires_dist": null, "requires_python": ">=3.7.0", "summary": "Utility function to perform the server-side of Hawk authentication", "version": "0.0.6" }, "last_serial": 5735889, "releases": { "0.0.1": [ { "comment_text": "", "digests": { "md5": "86c74a1c7b11ba483c85e0d1b46e0b32", "sha256": "752db20723193b178eeeb8c23cbe1cb7de6837ed8944650672b812dcaef29739" }, "downloads": -1, "filename": "hawk_server_asyncio-0.0.1-py3-none-any.whl", "has_sig": false, "md5_digest": "86c74a1c7b11ba483c85e0d1b46e0b32", "packagetype": "bdist_wheel", "python_version": "py3", "requires_python": ">=3.7.0", "size": 3363, "upload_time": "2019-08-22T19:30:30", "url": "https://files.pythonhosted.org/packages/07/f2/0d236df1e065aada1f23cc042f862e8563109866469cbdb9a7b8be1cd606/hawk_server_asyncio-0.0.1-py3-none-any.whl" }, { "comment_text": "", "digests": { "md5": "2777d3bc5063fcfc7aa4d0ef6925dfd0", "sha256": "4f3d9d56f0376cdb078bf56b4a998c4617b6275e3c0263ddcce4363c865dca30" }, "downloads": -1, "filename": "hawk-server-asyncio-0.0.1.tar.gz", "has_sig": false, "md5_digest": "2777d3bc5063fcfc7aa4d0ef6925dfd0", "packagetype": "sdist", "python_version": "source", "requires_python": ">=3.7.0", "size": 2092, "upload_time": "2019-08-22T19:30:32", "url": "https://files.pythonhosted.org/packages/7b/e9/e68ef4e6e59287b994616aae05f346b1b8c341c7e0223858c876ca2b85b3/hawk-server-asyncio-0.0.1.tar.gz" } ], "0.0.2": [ { "comment_text": "", "digests": { "md5": "cec73b7bdf0f73c711c60964034de3d2", "sha256": "24004f5e7fd9ebd209baec37f1a3a87417463567c77d5c93e6137b5171827495" }, "downloads": -1, "filename": "hawk_server_asyncio-0.0.2-py3-none-any.whl", "has_sig": false, "md5_digest": "cec73b7bdf0f73c711c60964034de3d2", "packagetype": "bdist_wheel", "python_version": "py3", "requires_python": ">=3.7.0", "size": 3364, "upload_time": "2019-08-22T19:47:53", "url": "https://files.pythonhosted.org/packages/e1/7d/d4cc4826cc913d3b41e4ec43f30a885a945e5887d4f47c3ec2810ff027ed/hawk_server_asyncio-0.0.2-py3-none-any.whl" }, { "comment_text": "", "digests": { "md5": "335cc854416dbc68a569ad79d131238b", "sha256": "1ccf4607ec41fa0ad8354ac3153b50d12b4102a6ae8f677bd385e06a663d95fb" }, "downloads": -1, "filename": "hawk-server-asyncio-0.0.2.tar.gz", "has_sig": false, "md5_digest": "335cc854416dbc68a569ad79d131238b", "packagetype": "sdist", "python_version": "source", "requires_python": ">=3.7.0", "size": 2093, "upload_time": "2019-08-22T19:47:54", "url": "https://files.pythonhosted.org/packages/2c/13/cf36da13a30513df30232409ac43790d1a5a0b17bc1037c9d9cca621fca5/hawk-server-asyncio-0.0.2.tar.gz" } ], "0.0.3": [ { "comment_text": "", "digests": { "md5": "41dabaca69d6e5d8ffecd67e7850cb94", "sha256": "5fb6d45e4f17366e351341e7d94bbba29040a9041a2fc04f95bed8f3158a359d" }, "downloads": -1, "filename": "hawk_server_asyncio-0.0.3-py3-none-any.whl", "has_sig": false, "md5_digest": "41dabaca69d6e5d8ffecd67e7850cb94", "packagetype": "bdist_wheel", "python_version": "py3", "requires_python": ">=3.7.0", "size": 3378, "upload_time": "2019-08-22T20:06:19", "url": "https://files.pythonhosted.org/packages/a9/3c/fbe90dc6dcff4818917834a6b36da98a19aa0013ec462a5280b21820c192/hawk_server_asyncio-0.0.3-py3-none-any.whl" }, { "comment_text": "", "digests": { "md5": "1a5f87d44c3f50d0d276cff1a8e6d4fb", "sha256": "39f2dd487fa0f1dc21ad43e40a8f979bf7a718d82ad703916d030ce86d3acce6" }, "downloads": -1, "filename": "hawk-server-asyncio-0.0.3.tar.gz", "has_sig": false, "md5_digest": "1a5f87d44c3f50d0d276cff1a8e6d4fb", "packagetype": "sdist", "python_version": "source", "requires_python": ">=3.7.0", "size": 2104, "upload_time": "2019-08-22T20:06:20", "url": "https://files.pythonhosted.org/packages/c1/00/a06d1a0a1826fd847e27f66e7270e78e63f790f21c1db9ff342e863f1406/hawk-server-asyncio-0.0.3.tar.gz" } ], "0.0.4": [ { "comment_text": "", "digests": { "md5": "d97613d89c5db62202d9e611dde6be73", "sha256": "ffa31d1ce55bd44dd50976273bffb6caab414de1a3b808011230cb436739c943" }, "downloads": -1, "filename": "hawk_server_asyncio-0.0.4-py3-none-any.whl", "has_sig": false, "md5_digest": "d97613d89c5db62202d9e611dde6be73", "packagetype": "bdist_wheel", "python_version": "py3", "requires_python": ">=3.7.0", "size": 3487, "upload_time": "2019-08-22T21:18:40", "url": "https://files.pythonhosted.org/packages/d9/b3/36622e4f72b2dc5781994d400a34025d801e57fa8ae91035ce34829515f4/hawk_server_asyncio-0.0.4-py3-none-any.whl" }, { "comment_text": "", "digests": { "md5": "bc0b95e0f303203cadc99a54459b3aa3", "sha256": "c83b175d4ae8a0da7396187a008c30b11229a862380e343fa75027f8a647c1fa" }, "downloads": -1, "filename": "hawk-server-asyncio-0.0.4.tar.gz", "has_sig": false, "md5_digest": "bc0b95e0f303203cadc99a54459b3aa3", "packagetype": "sdist", "python_version": "source", "requires_python": ">=3.7.0", "size": 2255, "upload_time": "2019-08-22T21:18:42", "url": "https://files.pythonhosted.org/packages/ee/00/e0dd7dd9196a1f36f319c36f24c51953306ff57ef03cfb4b26bd8527c943/hawk-server-asyncio-0.0.4.tar.gz" } ], "0.0.5": [ { "comment_text": "", "digests": { "md5": "204a7d47c793ed8e397f0f721b1c1fcd", "sha256": "dc41e57f5ab3007975fe26729869e3ffce9939937050630d92aac717262bd429" }, "downloads": -1, "filename": "hawk_server_asyncio-0.0.5-py3-none-any.whl", "has_sig": false, "md5_digest": "204a7d47c793ed8e397f0f721b1c1fcd", "packagetype": "bdist_wheel", "python_version": "py3", "requires_python": ">=3.7.0", "size": 3490, "upload_time": "2019-08-23T06:26:19", "url": "https://files.pythonhosted.org/packages/4e/02/1257515af0efcbc020bc2a825f2a3d759f03bc424781d8c5fcab7abc005c/hawk_server_asyncio-0.0.5-py3-none-any.whl" }, { "comment_text": "", "digests": { "md5": "5faa76338082928183419465bab7db36", "sha256": "f91da2d577f8c80c969523648ff463ad9070f3112a3b8f126802da549e663e79" }, "downloads": -1, "filename": "hawk-server-asyncio-0.0.5.tar.gz", "has_sig": false, "md5_digest": "5faa76338082928183419465bab7db36", "packagetype": "sdist", "python_version": "source", "requires_python": ">=3.7.0", "size": 2259, "upload_time": "2019-08-23T06:26:21", "url": "https://files.pythonhosted.org/packages/57/27/45837b0bc94f20ca686f0b2ebb742b6ccf9b979e32516dcd502466a6f71e/hawk-server-asyncio-0.0.5.tar.gz" } ], "0.0.6": [ { "comment_text": "", "digests": { "md5": "c86ecf0f8989905fe2e61229a07ba756", "sha256": "f4c587ae6560a17c09dbbf7bc096e5ff4ca1495195cf58517ebd08f2623563d6" }, "downloads": -1, "filename": "hawk_server_asyncio-0.0.6-py3-none-any.whl", "has_sig": false, "md5_digest": "c86ecf0f8989905fe2e61229a07ba756", "packagetype": "bdist_wheel", "python_version": "py3", "requires_python": ">=3.7.0", "size": 3492, "upload_time": "2019-08-27T09:47:25", "url": "https://files.pythonhosted.org/packages/ef/ce/dc2b5fc4375bf0582085a1ad73b1c373a49cf614d644d637dfb97eb5c9aa/hawk_server_asyncio-0.0.6-py3-none-any.whl" }, { "comment_text": "", "digests": { "md5": "0a93714e0694449deb6e2e331195aa31", "sha256": "a2d028c1d82ee3f0c409d1a91f8bfb735459972487cd5c0de590301a61cb411b" }, "downloads": -1, "filename": "hawk-server-asyncio-0.0.6.tar.gz", "has_sig": false, "md5_digest": "0a93714e0694449deb6e2e331195aa31", "packagetype": "sdist", "python_version": "source", "requires_python": ">=3.7.0", "size": 2260, "upload_time": "2019-08-27T09:47:26", "url": "https://files.pythonhosted.org/packages/ec/13/0578a37f066e11a47e2e078b011b9b4fc8ee38be3fd8aa026fa3c14f30e3/hawk-server-asyncio-0.0.6.tar.gz" } ] }, "urls": [ { "comment_text": "", "digests": { "md5": "c86ecf0f8989905fe2e61229a07ba756", "sha256": "f4c587ae6560a17c09dbbf7bc096e5ff4ca1495195cf58517ebd08f2623563d6" }, "downloads": -1, "filename": "hawk_server_asyncio-0.0.6-py3-none-any.whl", "has_sig": false, "md5_digest": "c86ecf0f8989905fe2e61229a07ba756", "packagetype": "bdist_wheel", "python_version": "py3", "requires_python": ">=3.7.0", "size": 3492, "upload_time": "2019-08-27T09:47:25", "url": "https://files.pythonhosted.org/packages/ef/ce/dc2b5fc4375bf0582085a1ad73b1c373a49cf614d644d637dfb97eb5c9aa/hawk_server_asyncio-0.0.6-py3-none-any.whl" }, { "comment_text": "", "digests": { "md5": "0a93714e0694449deb6e2e331195aa31", "sha256": "a2d028c1d82ee3f0c409d1a91f8bfb735459972487cd5c0de590301a61cb411b" }, "downloads": -1, "filename": "hawk-server-asyncio-0.0.6.tar.gz", "has_sig": false, "md5_digest": "0a93714e0694449deb6e2e331195aa31", "packagetype": "sdist", "python_version": "source", "requires_python": ">=3.7.0", "size": 2260, "upload_time": "2019-08-27T09:47:26", "url": "https://files.pythonhosted.org/packages/ec/13/0578a37f066e11a47e2e078b011b9b4fc8ee38be3fd8aa026fa3c14f30e3/hawk-server-asyncio-0.0.6.tar.gz" } ] }