{ "info": { "author": "\u00d8yvind Saltvik", "author_email": "oyvind.saltvik@gmail.com", "bugtrack_url": null, "classifiers": [ "Development Status :: 3 - Alpha", "Framework :: Django :: 2.0", "Intended Audience :: Developers", "License :: OSI Approved :: BSD License", "Natural Language :: English", "Programming Language :: Python :: 2", "Programming Language :: Python :: 2.7", "Programming Language :: Python :: 3", "Programming Language :: Python :: 3.4", "Programming Language :: Python :: 3.5", "Programming Language :: Python :: 3.6" ], "description": "==============================\nGraphene JWT Auth Registration\n==============================\n\n.. image:: https://badge.fury.io/py/graphene-jwt-auth-registration.svg\n :target: https://badge.fury.io/py/graphene-jwt-auth-registration\n\n.. image:: https://travis-ci.org/fivethreeo/graphene-jwt-auth-registration.svg?branch=master\n :target: https://travis-ci.org/fivethreeo/graphene-jwt-auth-registration\n\n.. image:: https://codecov.io/gh/fivethreeo/graphene-jwt-auth-registration/branch/master/graph/badge.svg\n :target: https://codecov.io/gh/fivethreeo/graphene-jwt-auth-registration\n\nAuthentication and registration using graphene and JWT \n\nDocumentation\n-------------\n\n.. The full documentation is at https://graphene-jwt-auth.readthedocs.io.\n\nQuickstart\n----------\n\nInstall Graphene JWT Auth Registration::\n\n pip install graphene-jwt-auth-registration\n\nAdd it to your `INSTALLED_APPS`:\n\n.. code-block:: python\n\n INSTALLED_APPS = [\n \"django.contrib.auth\",\n \"django.contrib.contenttypes\",\n \"django.contrib.sites\",\n\n ...\n\n \"djoser\",\n \"graphene_django\",\n\n \"gjwt_auth\",\n ]\n\nSet AUTH_USER_MODEL:\n\n.. code-block:: python\n\n AUTH_USER_MODEL = \"gjwt_auth.User\"\n\nAdd JSONWebTokenBackend backend to your AUTHENTICATION_BACKENDS:\n\n.. code-block:: python\n\n AUTHENTICATION_BACKENDS = [\n 'graphql_jwt.backends.JSONWebTokenBackend',\n 'django.contrib.auth.backends.ModelBackend',\n ]\n\nAdd the JSONWebTokenMiddleware:\n\n.. code-block:: python\n\n GRAPHENE = {\n 'SCHEMA': 'yourproject.schema.schema',\n 'MIDDLEWARE': [\n 'graphql_jwt.middleware.JSONWebTokenMiddleware',\n ],\n }\n\nCreate graphene schema in `yourproject/schema.py`: \n\n.. code-block:: python\n\n import graphene\n import graphql_jwt\n\n from gjwt_auth.mutations import (\n Activate,\n DeleteAccount,\n Register,\n ResetPassword,\n ResetPasswordConfirm,\n )\n\n from gjwt_auth.schema import User, Viewer\n\n\n class RootQuery(graphene.ObjectType):\n viewer = graphene.Field(Viewer)\n\n def resolve_viewer(self, info, **kwargs):\n if info.context.user.is_authenticated:\n return info.context.user\n return None\n\n\n class Mutation(graphene.ObjectType):\n activate = Activate.Field()\n register = Register.Field()\n deleteAccount = DeleteAccount.Field()\n resetPassword = ResetPassword.Field()\n resetPasswordConfirm = ResetPasswordConfirm.Field()\n\n token_auth = graphql_jwt.ObtainJSONWebToken.Field()\n verify_token = graphql_jwt.Verify.Field()\n refresh_token = graphql_jwt.Refresh.Field()\n\n schema = graphene.Schema(query=RootQuery, mutation=Mutation)\n\n\nSet djoser setttings:\n\n.. code-block:: python\n\n DOMAIN = os.environ.get('DJANGO_DJOSER_DOMAIN', 'localhost:3000')\n SITE_NAME = os.environ.get('DJANGO_DJOSER_SITE_NAME', 'my site')\n\n DJOSER = {\n\n 'PASSWORD_RESET_CONFIRM_URL': '?action=set-new-password&uid={uid}&token={token}',\n 'ACTIVATION_URL': 'activate?uid={uid}&token={token}',\n 'SEND_ACTIVATION_EMAIL': True,\n }\n\n }\n\nAdd Graphenes URL patterns:\n\n.. code-block:: python\n\n\n from django.conf.urls import url\n from django.views.decorators.csrf import csrf_exempt\n\n from graphene_django.views import GraphQLView\n\n ...\n\n urlpatterns = [\n ...\n url(r'^graphql', csrf_exempt(GraphQLView.as_view(graphiql=True))),\n ...\n ]\n\n.. Features\n --------\n\n * TODO\n\nRunning Tests\n-------------\n\nDoes the code actually work?\n\n::\n\n source /bin/activate\n (myenv) $ pip install tox\n (myenv) $ tox\n\nCredits\n-------\n\nTools used in rendering this package:\n\n* Cookiecutter_\n* `cookiecutter-djangopackage`_\n\n.. _Cookiecutter: https://github.com/audreyr/cookiecutter\n.. _`cookiecutter-djangopackage`: https://github.com/pydanny/cookiecutter-djangopackage\n\n\n\n\nHistory\n-------\n\n0.1.0 (2019-06-04)\n++++++++++++++++++\n\n* First release on PyPI.\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/fivethreeo/graphene-jwt-auth-registration", "keywords": "graphene-jwt-auth-registration", "license": "MIT", "maintainer": "", "maintainer_email": "", "name": "graphene-jwt-auth-registration", "package_url": "https://pypi.org/project/graphene-jwt-auth-registration/", "platform": "", "project_url": "https://pypi.org/project/graphene-jwt-auth-registration/", "project_urls": { "Homepage": "https://github.com/fivethreeo/graphene-jwt-auth-registration" }, "release_url": "https://pypi.org/project/graphene-jwt-auth-registration/1.0.0/", "requires_dist": [ "djangorestframework-filters", "djangorestframework-jwt", "djoser", "graphene-django", "django-graphql-jwt" ], "requires_python": "", "summary": "Authentication and registration with django graphene and JWT", "version": "1.0.0" }, "last_serial": 5792639, "releases": { "0.1.0": [ { "comment_text": "", "digests": { "md5": "33b69319c4150e4172a3ee76a9489e06", "sha256": "d49987f46009f831aa1122a5f1367d57e789817a7be86822db1637541345addc" }, "downloads": -1, "filename": "graphene_jwt_auth_registration-0.1.0-py2.py3-none-any.whl", "has_sig": false, "md5_digest": "33b69319c4150e4172a3ee76a9489e06", "packagetype": "bdist_wheel", "python_version": "py2.py3", "requires_python": null, "size": 11676, "upload_time": "2019-06-10T11:50:32", "url": "https://files.pythonhosted.org/packages/76/a4/6ba02b171c58eec948374b51fbff6a2fc991a16d60de9097a849e5c4b53e/graphene_jwt_auth_registration-0.1.0-py2.py3-none-any.whl" }, { "comment_text": "", "digests": { "md5": "d2c0aaa1194c1cd98e5401f49b4e2861", "sha256": "9dd5877b7de1ed9328808f80884ee81505d7764b8d58f23dcfcdbb9826aa4eb7" }, "downloads": -1, "filename": "graphene-jwt-auth-registration-0.1.0.tar.gz", "has_sig": false, "md5_digest": "d2c0aaa1194c1cd98e5401f49b4e2861", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 11123, "upload_time": "2019-06-10T11:50:35", "url": "https://files.pythonhosted.org/packages/f1/52/c9a542b6fe32a7eab66637637fefbdad6b5b4e29246191b3e6d020540e1a/graphene-jwt-auth-registration-0.1.0.tar.gz" } ], "0.2.1": [ { "comment_text": "", "digests": { "md5": "d74c0ba78f28393c6d98f08e4feed94b", "sha256": "48ce747a2f1158c6a752b3f801c02b4919e3061c82036cebe79610fed87c8878" }, "downloads": -1, "filename": "graphene_jwt_auth_registration-0.2.1-py2.py3-none-any.whl", "has_sig": false, "md5_digest": "d74c0ba78f28393c6d98f08e4feed94b", "packagetype": "bdist_wheel", "python_version": "py2.py3", "requires_python": null, "size": 11706, "upload_time": "2019-06-12T20:14:22", "url": "https://files.pythonhosted.org/packages/78/f6/39462f697c3b98edc9ef03d6cf1bb6f75f6bc605a875fbe15d9aceb60b60/graphene_jwt_auth_registration-0.2.1-py2.py3-none-any.whl" }, { "comment_text": "", "digests": { "md5": "5826e1445b4875c2fb83f6b697c4e1c5", "sha256": "e3ad1afcf0778db18b9db7bb7d011bb97dacc2d7cc0b3671ec7dd0585bed99b5" }, "downloads": -1, "filename": "graphene-jwt-auth-registration-0.2.1.tar.gz", "has_sig": false, "md5_digest": "5826e1445b4875c2fb83f6b697c4e1c5", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 11027, "upload_time": "2019-06-12T20:14:24", "url": "https://files.pythonhosted.org/packages/c8/bf/95ed7963e7c90ef16f91f01b38f23d28b913e3927f8cf87523de5cf47121/graphene-jwt-auth-registration-0.2.1.tar.gz" } ], "0.3.0": [ { "comment_text": "", "digests": { "md5": "4fdcbae4505df5682186b75b5a66f8ae", "sha256": "6bd36ade4303d4df528fdaa5a7cc0c88b5dbc69fb90cf707eca853c3cb713074" }, "downloads": -1, "filename": "graphene_jwt_auth_registration-0.3.0-py2.py3-none-any.whl", "has_sig": false, "md5_digest": "4fdcbae4505df5682186b75b5a66f8ae", "packagetype": "bdist_wheel", "python_version": "py2.py3", "requires_python": null, "size": 12751, "upload_time": "2019-06-13T15:45:42", "url": "https://files.pythonhosted.org/packages/bf/c1/ac944cc20c5138a11e962a474909fbf7b34f243329074e79cf2970300f96/graphene_jwt_auth_registration-0.3.0-py2.py3-none-any.whl" }, { "comment_text": "", "digests": { "md5": "1eeee28adfcce9f324c2ef0fe97c5393", "sha256": "2a6d02d86a56a58048e46d19efb88fcdec212d351a2aaa598760c4501010b851" }, "downloads": -1, "filename": "graphene-jwt-auth-registration-0.3.0.tar.gz", "has_sig": false, "md5_digest": "1eeee28adfcce9f324c2ef0fe97c5393", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 11928, "upload_time": "2019-06-13T15:45:43", "url": "https://files.pythonhosted.org/packages/0e/c6/ea9df92f1cff8c5f6648a31ba37ae663d7b1ec64c0cbe3761cc6b894f406/graphene-jwt-auth-registration-0.3.0.tar.gz" } ], "0.3.1": [ { "comment_text": "", "digests": { "md5": "9126fa0f39857c91910f733b17676842", "sha256": "51a27199339f13950d15e962ee0f8a010a0f9180af57ed1ce42991dbb248ddd7" }, "downloads": -1, "filename": "graphene_jwt_auth_registration-0.3.1-py2.py3-none-any.whl", "has_sig": false, "md5_digest": "9126fa0f39857c91910f733b17676842", "packagetype": "bdist_wheel", "python_version": "py2.py3", "requires_python": null, "size": 12743, "upload_time": "2019-06-13T18:27:17", "url": "https://files.pythonhosted.org/packages/dc/da/31657245729ea801449586734ac45c0b07fd3067939d383e410a76fae16f/graphene_jwt_auth_registration-0.3.1-py2.py3-none-any.whl" }, { "comment_text": "", "digests": { "md5": "934996b251a8ba33bad3418bd9cc5839", "sha256": "bf19f50f8d2533bf7fec4eb7141a5edb17cc3c58ce9bcacb0274c6000576d4cd" }, "downloads": -1, "filename": "graphene-jwt-auth-registration-0.3.1.tar.gz", "has_sig": false, "md5_digest": "934996b251a8ba33bad3418bd9cc5839", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 11937, "upload_time": "2019-06-13T18:27:21", "url": "https://files.pythonhosted.org/packages/4c/fb/eed95bbf87873c906a7c7b02ef7f0e243fe48a1bcc5716d6cb4f7c1beccd/graphene-jwt-auth-registration-0.3.1.tar.gz" } ], "0.3.2": [ { "comment_text": "", "digests": { "md5": "fe0d17c2998aa1870d37a4fa8fa23c6f", "sha256": "063e2591e274939f636872a1bb9e8c08653c524b714226bc7aa689453b958fd2" }, "downloads": -1, "filename": "graphene_jwt_auth_registration-0.3.2-py2.py3-none-any.whl", "has_sig": false, "md5_digest": "fe0d17c2998aa1870d37a4fa8fa23c6f", "packagetype": "bdist_wheel", "python_version": "py2.py3", "requires_python": null, "size": 12753, "upload_time": "2019-06-13T18:46:03", "url": "https://files.pythonhosted.org/packages/1e/79/87ab5ef46140a6467dc46e833c890e65f870318b2406ef3a2152a4dfde3a/graphene_jwt_auth_registration-0.3.2-py2.py3-none-any.whl" }, { "comment_text": "", "digests": { "md5": "e4bd698de58f59e4e3696f6148214f38", "sha256": "e77d3fc74354625062c142f1a069acea622a9f67dc859ed3a2625fd9f4b3d937" }, "downloads": -1, "filename": "graphene-jwt-auth-registration-0.3.2.tar.gz", "has_sig": false, "md5_digest": "e4bd698de58f59e4e3696f6148214f38", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 11936, "upload_time": "2019-06-13T18:46:08", "url": "https://files.pythonhosted.org/packages/1f/a7/db1f6b7469a664f1bf221c50d83753101e6b974cb3162b78bbab8d1d27a3/graphene-jwt-auth-registration-0.3.2.tar.gz" } ], "1.0.0": [ { "comment_text": "", "digests": { "md5": "210686dd36cb6ca53996958817e41067", "sha256": "146a91f098d0f4769d62ccaef9d2a9f3a2193ecdc0ad39f59a86c6013eecc81b" }, "downloads": -1, "filename": "graphene_jwt_auth_registration-1.0.0-py2.py3-none-any.whl", "has_sig": false, "md5_digest": "210686dd36cb6ca53996958817e41067", "packagetype": "bdist_wheel", "python_version": "py2.py3", "requires_python": null, "size": 10057, "upload_time": "2019-09-06T14:55:54", "url": "https://files.pythonhosted.org/packages/5a/01/68fb9be4e954ee593f4c6bfc665267c92b2cce958efad96f2bf66e3e558c/graphene_jwt_auth_registration-1.0.0-py2.py3-none-any.whl" }, { "comment_text": "", "digests": { "md5": "db49f5d35d63726c961692083ee0f590", "sha256": "28e4f30d0f58914d62415e7fcd5549d05c30c740693a8ef48cc5dd3e5f753317" }, "downloads": -1, "filename": "graphene-jwt-auth-registration-1.0.0.tar.gz", "has_sig": false, "md5_digest": "db49f5d35d63726c961692083ee0f590", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 9069, "upload_time": "2019-09-06T14:55:56", "url": "https://files.pythonhosted.org/packages/1f/de/94bdb25df249c53ea3efa1792db18e51a35845def66c451c8c7e7da53911/graphene-jwt-auth-registration-1.0.0.tar.gz" } ] }, "urls": [ { "comment_text": "", "digests": { "md5": "210686dd36cb6ca53996958817e41067", "sha256": "146a91f098d0f4769d62ccaef9d2a9f3a2193ecdc0ad39f59a86c6013eecc81b" }, "downloads": -1, "filename": "graphene_jwt_auth_registration-1.0.0-py2.py3-none-any.whl", "has_sig": false, "md5_digest": "210686dd36cb6ca53996958817e41067", "packagetype": "bdist_wheel", "python_version": "py2.py3", "requires_python": null, "size": 10057, "upload_time": "2019-09-06T14:55:54", "url": "https://files.pythonhosted.org/packages/5a/01/68fb9be4e954ee593f4c6bfc665267c92b2cce958efad96f2bf66e3e558c/graphene_jwt_auth_registration-1.0.0-py2.py3-none-any.whl" }, { "comment_text": "", "digests": { "md5": "db49f5d35d63726c961692083ee0f590", "sha256": "28e4f30d0f58914d62415e7fcd5549d05c30c740693a8ef48cc5dd3e5f753317" }, "downloads": -1, "filename": "graphene-jwt-auth-registration-1.0.0.tar.gz", "has_sig": false, "md5_digest": "db49f5d35d63726c961692083ee0f590", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 9069, "upload_time": "2019-09-06T14:55:56", "url": "https://files.pythonhosted.org/packages/1f/de/94bdb25df249c53ea3efa1792db18e51a35845def66c451c8c7e7da53911/graphene-jwt-auth-registration-1.0.0.tar.gz" } ] }