{ "info": { "author": "Klemen \u0160trajhar", "author_email": "klemen.strajhar@gmail.si", "bugtrack_url": null, "classifiers": [ "Development Status :: 5 - Production/Stable", "Environment :: Web Environment", "Framework :: Django", "Framework :: Django :: 2.0", "Framework :: Django :: 2.1", "Intended Audience :: Developers", "License :: OSI Approved :: MIT License", "Operating System :: OS Independent", "Programming Language :: Python", "Programming Language :: Python :: 3.4", "Programming Language :: Python :: 3.5", "Programming Language :: Python :: 3.6", "Topic :: Internet :: WWW/HTTP" ], "description": "=====================\nDjango Expiring Token\n=====================\n\nDjango Expiring Token adds token expiration on token authentication and extends the\nexpiration time on each authenticated request.\n\nDjango Expiring Token provides a very lightweight extension to DRF's existing token authentication.\nIt implements the following functionalities:\n\n1. Tokens expire after the set time.\n2. On each authenticated request, the expiration time is updated by the set time.\n\nQuick start\n-----------\n1. Do NOT add \"restframework.authtoken\" to you INSTALLED_APPS.\n\n2. Add \"django_expiring_token\" to your INSTALLED_APPS setting like this::\n\n INSTALLED_APPS = [\n ...\n 'django_expiring_token',\n ]\n\n3. Include the polls URLconf in your project urls.py like this::\n\n path('custom-url/', include('django_expiring_token.urls')),\n\n4. Add the expiration time in `settings.py`::\n\n EXPIRING_TOKEN_DURATION=timedelta(hours=1)\n # Any timedelta setting can be used! If not set, the default value is 1 day\n\n5. Add the default authentication class in `REST_FRAMEWORK` settings in `settings.py`::\n\n REST_FRAMEWORK = {\n 'DEFAULT_AUTHENTICATION_CLASSES': (\n ...\n 'django_expiring_token.authentication.ExpiringTokenAuthentication',\n ...\n ),\n }\n\n6. Run `python manage.py migrate` to create package migrations\n\n7. Start the development server an you are good to go.\n\nTests\n-----\n\nThis build is tested against Python versions 3.4, 3.5, 3,6 with Django versions 2.0.8+\n\nTo run tests\n\n1. Install `coverage`::\n\n pip install coverage\n\n2. Run tests::\n\n coverage run runtest.py\n\n\n\n", "description_content_type": "", "docs_url": null, "download_url": "", "downloads": { "last_day": -1, "last_month": -1, "last_week": -1 }, "home_page": "https://github.com/KlemenS189/django-expiring-token", "keywords": "", "license": "MIT License", "maintainer": "", "maintainer_email": "", "name": "django-expiring-token", "package_url": "https://pypi.org/project/django-expiring-token/", "platform": "", "project_url": "https://pypi.org/project/django-expiring-token/", "project_urls": { "Homepage": "https://github.com/KlemenS189/django-expiring-token" }, "release_url": "https://pypi.org/project/django-expiring-token/1.0.2/", "requires_dist": [ "djangorestframework (>=3.4.0)" ], "requires_python": "", "summary": "Expiring token with expiration time update for Django Rest Framework", "version": "1.0.2" }, "last_serial": 4628234, "releases": { "1.0": [ { "comment_text": "", "digests": { "md5": "fe596d98709d2cea737b05d184f53f5e", "sha256": "7b8cc268fe2cbf613de9e706da979dc6d4ff7d0e197e3be32d922731d4865822" }, "downloads": -1, "filename": "django_expiring_token-1.0-py3-none-any.whl", "has_sig": false, "md5_digest": "fe596d98709d2cea737b05d184f53f5e", "packagetype": "bdist_wheel", "python_version": "py3", "requires_python": null, "size": 8002, "upload_time": "2018-12-22T18:03:07", "url": "https://files.pythonhosted.org/packages/24/b8/6bfb7bb0edba129dc98ddedd23e0694afafb220220ec53dfc2f886423669/django_expiring_token-1.0-py3-none-any.whl" }, { "comment_text": "", "digests": { "md5": "0cac6344c445531ce594f6f25f8583f3", "sha256": "ba057c099ab91a0f075100a5ca4cadb75973852a8d93cca0f79f20bc3b94704e" }, "downloads": -1, "filename": "django-expiring-token-1.0.tar.gz", "has_sig": false, "md5_digest": "0cac6344c445531ce594f6f25f8583f3", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 5371, "upload_time": "2018-12-22T18:03:10", "url": "https://files.pythonhosted.org/packages/fc/ef/5382277e1736123f5b833b20d3900e70e6eb09a0613d7d3569aec9c4f120/django-expiring-token-1.0.tar.gz" } ], "1.0.1": [ { "comment_text": "", "digests": { "md5": "f5e75811b9c3890b53a25ea0270597c2", "sha256": "f59a93fe21041ed170e460514cb6126f0fb90322749bb6defebf79b1b97c0133" }, "downloads": -1, "filename": "django_expiring_token-1.0.1-py3-none-any.whl", "has_sig": false, "md5_digest": "f5e75811b9c3890b53a25ea0270597c2", "packagetype": "bdist_wheel", "python_version": "py3", "requires_python": null, "size": 8266, "upload_time": "2018-12-22T18:30:34", "url": "https://files.pythonhosted.org/packages/ba/58/31562bf5157ad3c6bc8388791131d29d99604a8618e2006829b0c4b43491/django_expiring_token-1.0.1-py3-none-any.whl" }, { "comment_text": "", "digests": { "md5": "ce4f5e88b2f5b64a058966027d1ed616", "sha256": "5c6d1b65da0b3a3f76e9c6c6ebcd8b6ec1e805f6c4449fb499e19664e8c44c58" }, "downloads": -1, "filename": "django-expiring-token-1.0.1.tar.gz", "has_sig": false, "md5_digest": "ce4f5e88b2f5b64a058966027d1ed616", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 5695, "upload_time": "2018-12-22T18:30:36", "url": "https://files.pythonhosted.org/packages/14/ce/e05209f4ac1d39197f13d1df1d90eaec855e94f3861475eb0537e512c023/django-expiring-token-1.0.1.tar.gz" } ], "1.0.2": [ { "comment_text": "", "digests": { "md5": "827ba3b797e673bce60c555a435dbc6f", "sha256": "66be26ddeedbf4237963a186baa71f2e60dc4ffa2995802160cbff1f52c72d83" }, "downloads": -1, "filename": "django_expiring_token-1.0.2-py3-none-any.whl", "has_sig": false, "md5_digest": "827ba3b797e673bce60c555a435dbc6f", "packagetype": "bdist_wheel", "python_version": "py3", "requires_python": null, "size": 8263, "upload_time": "2018-12-22T19:16:55", "url": "https://files.pythonhosted.org/packages/4f/74/7a75d4d8c524a2a78d5789e1a1a0488ae60629b544833387c195168d67aa/django_expiring_token-1.0.2-py3-none-any.whl" }, { "comment_text": "", "digests": { "md5": "d1c47a1e4c427686067940f94eadd8b6", "sha256": "3c4385b4096ce1deb3d0ecf7345d62371b04ff2833e7c5aa5549dfcf8e8e9cc3" }, "downloads": -1, "filename": "django-expiring-token-1.0.2.tar.gz", "has_sig": false, "md5_digest": "d1c47a1e4c427686067940f94eadd8b6", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 5691, "upload_time": "2018-12-22T19:16:56", "url": "https://files.pythonhosted.org/packages/64/95/94e953004e423ec41fcac6310195accf25e842cfb32558e2546a307eb4c7/django-expiring-token-1.0.2.tar.gz" } ] }, "urls": [ { "comment_text": "", "digests": { "md5": "827ba3b797e673bce60c555a435dbc6f", "sha256": "66be26ddeedbf4237963a186baa71f2e60dc4ffa2995802160cbff1f52c72d83" }, "downloads": -1, "filename": "django_expiring_token-1.0.2-py3-none-any.whl", "has_sig": false, "md5_digest": "827ba3b797e673bce60c555a435dbc6f", "packagetype": "bdist_wheel", "python_version": "py3", "requires_python": null, "size": 8263, "upload_time": "2018-12-22T19:16:55", "url": "https://files.pythonhosted.org/packages/4f/74/7a75d4d8c524a2a78d5789e1a1a0488ae60629b544833387c195168d67aa/django_expiring_token-1.0.2-py3-none-any.whl" }, { "comment_text": "", "digests": { "md5": "d1c47a1e4c427686067940f94eadd8b6", "sha256": "3c4385b4096ce1deb3d0ecf7345d62371b04ff2833e7c5aa5549dfcf8e8e9cc3" }, "downloads": -1, "filename": "django-expiring-token-1.0.2.tar.gz", "has_sig": false, "md5_digest": "d1c47a1e4c427686067940f94eadd8b6", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 5691, "upload_time": "2018-12-22T19:16:56", "url": "https://files.pythonhosted.org/packages/64/95/94e953004e423ec41fcac6310195accf25e842cfb32558e2546a307eb4c7/django-expiring-token-1.0.2.tar.gz" } ] }