{ "info": { "author": "edX", "author_email": "oscm@edx.org", "bugtrack_url": null, "classifiers": [ "Development Status :: 5 - Production/Stable", "Environment :: Web Environment", "Framework :: Django", "Framework :: Django :: 1.10", "Framework :: Django :: 1.11", "Framework :: Django :: 1.8", "Framework :: Django :: 1.9", "Intended Audience :: Developers", "License :: OSI Approved :: GNU Affero General Public License v3", "Operating System :: OS Independent", "Programming Language :: Python", "Programming Language :: Python :: 2.7", "Programming Language :: Python :: 3.5", "Programming Language :: Python :: 3.6", "Topic :: Internet" ], "description": "auth-backends |Travis|_ |Codecov|_\n===================================\n.. |Travis| image:: https://travis-ci.org/edx/auth-backends.svg?branch=master\n.. _Travis: https://travis-ci.org/edx/auth-backends\n\n.. |Codecov| image:: http://codecov.io/github/edx/auth-backends/coverage.svg?branch=master\n.. _Codecov: http://codecov.io/github/edx/auth-backends?branch=master\n\nThis package contains custom authentication backends, views, and pipeline steps used by edX services for single sign-on.\n\nThis package is compatible with Python 2.7 and 3.5, and Django 1.8 through 1.11.\n\nWe currently support two forms of authentication:\n\n- OAuth 2.0\n- OpenID Connect (deprecated)\n\nSupport for OpenID Connect (OIDC) is deprecated. Clients should use the OAuth 2.0 backend. This backend behaves\nsimilarly to the OIDC backend, except we use a JWT as the access token instead of OIDC's ID token. This allows us to use\nany OAuth provider, and not rely on an implementation of an OIDC provider.\n\nInstallation\n------------\n\nThe `auth_backends` package can be installed from PyPI using pip::\n\n $ pip install edx-auth-backends\n\nUpdate ``INSTALLED_APPS``:\n\n.. code-block:: python\n\n INSTALLED_APPS = (\n 'social_django',\n )\n\n\nConfiguration\n-------------\nAdding single sign-on/out support to a service requires a few changes:\n\n1. Define settings\n2. Add the authentication backend\n3. Add the login/logout redirects\n\n\nOAuth 2.0 Settings\n~~~~~~~~~~~~~~~~~~\n+----------------------------------------------------------+-------------------------------------------------------------------------------------------+\n| Setting | Purpose |\n+==========================================================+===========================================================================================+\n| SOCIAL_AUTH_EDX_OAUTH2_KEY | Client key |\n+----------------------------------------------------------+-------------------------------------------------------------------------------------------+\n| SOCIAL_AUTH_EDX_OAUTH2_SECRET | Client secret |\n+----------------------------------------------------------+-------------------------------------------------------------------------------------------+\n| SOCIAL_AUTH_EDX_OAUTH2_ENDPOINT | Provider root (e.g. https://courses.stage.edx.org/oauth2) |\n+----------------------------------------------------------+-------------------------------------------------------------------------------------------+\n| SOCIAL_AUTH_EDX_OAUTH2_JWS_HMAC_SIGNING_KEY | (Optional) Shared secret for JWT signed with HS512 algorithm |\n+----------------------------------------------------------+-------------------------------------------------------------------------------------------+\n| SOCIAL_AUTH_EDX_OAUTH2_PROVIDER_CONFIGURATION_CACHE_TTL | (Optional) Cache timeout for provider configuration. Defaults to 1 week. |\n+----------------------------------------------------------+-------------------------------------------------------------------------------------------+\n| SOCIAL_AUTH_EDX_OAUTH2_JWKS_CACHE_TTL | (Optional) Cache timeout for provider's JWKS key data. Defaults to 1 day. |\n+----------------------------------------------------------+-------------------------------------------------------------------------------------------+\n\nNote that the OAuth 2.0 provider uses ``SOCIAL_AUTH_EDX_OAUTH2_ENDPOINT`` to read configuration from a special path,\n``.well-known/openid-configuration`` (e.g. https://courses.stage.edx.org/oauth2/.well-known/openid-configuration). The\ndata returned from this endpoint provides the URLs necessary for authentication as well as the public keys used to\nverify the signed JWT (JWS) access token.\n\nAs of auth-backends 2.0.0, oAuth2 Applications require access to the ``user_id`` scope in order for the ``EdXOAuth2`` backend to work. The backend will write the ``user_id`` into the social-auth extra_data, and can be accessed within the User model as follows::\n\n self.social_auth.first().extra_data[u'user_id'] # pylint: disable=no-member\n\n\nOIDC Settings (deprecated)\n~~~~~~~~~~~~~~~~~~~~~~~~~~\nThe following settings MUST be set:\n\n+----------------------------------------------+---------------------------------------------------------------------------------------------+\n| Setting | Purpose |\n+==============================================+=============================================================================================+\n| SOCIAL_AUTH_EDX_OIDC_KEY | OAuth/OpenID Connect client key |\n+----------------------------------------------+---------------------------------------------------------------------------------------------+\n| SOCIAL_AUTH_EDX_OIDC_SECRET | OAuth/OpenID Connect client secret |\n+----------------------------------------------+---------------------------------------------------------------------------------------------+\n| SOCIAL_AUTH_EDX_OIDC_ID_TOKEN_DECRYPTION_KEY | Identity token decryption key (same value as the client secret for edX OpenID Connect) |\n+----------------------------------------------+---------------------------------------------------------------------------------------------+\n| SOCIAL_AUTH_EDX_OIDC_URL_ROOT | OAuth/OpenID Connect provider root (e.g. https://courses.stage.edx.org/oauth2) |\n+----------------------------------------------+---------------------------------------------------------------------------------------------+\n| SOCIAL_AUTH_EDX_OIDC_ISSUER | OAuth/OpenID Connect provider ID token issuer (e.g. https://courses.stage.edx.org/oauth2) |\n+----------------------------------------------+---------------------------------------------------------------------------------------------+\n| SOCIAL_AUTH_EDX_OIDC_LOGOUT_URL | OAuth/OpenID Connect provider's logout page URL (e.g. https://courses.stage.edx.org/logout) |\n+----------------------------------------------+---------------------------------------------------------------------------------------------+\n\nIf your application requires additional user data in the identity token, you can specify additional claims by defining\nthe ``EXTRA_SCOPE`` setting. For example, if you wish to have a claim named `preferred_language`, you would include\nthe following in your settings:\n\n.. code-block:: python\n\n EXTRA_SCOPE = ['preferred_language']\n\nAssuming the identity provider knows how to process that scope, the associated claim data will be included in the\nidentity token returned during authentication. Note that these scopes/claims are dependent on the identity provider\nbeing used. The ``EdXOpenIdConnect`` backend is configured to be used by all edX services out-of-the-box.\n\nThe optional setting ``COURSE_PERMISSIONS_CLAIMS``, used primarily by\n`edx-analytics-dashboard `_, can be used to designate scopes/claims that\nshould be requested in order to retrieve a list of courses the user is permitted to access/administer. The value of this\narray depends on the authentication provider's available scopes.\n\nStrategy\n~~~~~~~~\nWe use a custom `strategy `_ that includes many of\nthe default settings necessary to utilize single sign-on for edX services. This strategy should be used for all\nservices to simplify configuration. If you need to override the defaults, you may still do so as you would with any\nsocial auth setting\u2014\u2014prepend `SOCIAL_AUTH_` to the setting name. Add the following to your Django settings to use the\nstrategy:\n\n.. code-block:: python\n\n SOCIAL_AUTH_STRATEGY = 'auth_backends.strategies.EdxDjangoStrategy'\n\nAuthentication Backend\n~~~~~~~~~~~~~~~~~~~~~~\nConfiguring the backend is simply a matter of updating the ``AUTHENTICATION_BACKENDS`` setting. The configuration\nbelow is sufficient for all edX services.\n\n.. code-block:: python\n\n AUTHENTICATION_BACKENDS = (\n 'auth_backends.backends.EdXOpenIdConnect',\n 'django.contrib.auth.backends.ModelBackend',\n )\n\nAuthentication Views\n~~~~~~~~~~~~~~~~~~~~\nIn order to make use of the authentication backend, your service's login/logout views need to be updated. The login\nview should be updated to redirect to the authentication provider's login page. The logout view should be updated to\nredirect to the authentication provider's logout page.\n\nThis package includes views and urlpatterns configured for OIDC and OAuth 2.0. To use them, simply append/prepend\neither ``auth_urlpatterns`` or ``oauth2_urlpatterns`` to your service's urlpatterns in `urls.py`.\n\n.. code-block:: python\n\n from auth_backends.urls import auth_urlpatterns\n\n urlpatterns = auth_urlpatterns + [\n url(r'^admin/', include(admin.site.urls)),\n ...\n ]\n\nIt is recommended that you not modify the login view. If, however, you need to modify the logout view (to redirect to\na different URL, for example), you can subclass either ``EdxOAuth2LogoutView`` or ``EdxOpenIdConnectLogoutView`` for\nthe view and ``LogoutViewTestMixin`` for your tests.\n\nDevstack\n--------\nWhen using the Docker-based devstack, it is necessary to have both internal and public URLs for the OAuth/OIDC\nprovider. To accommodate this need, set the ``SOCIAL_AUTH_EDX_OIDC_PUBLIC_URL_ROOT`` setting to the value of the\nprovider's browser-accessible URL.\n\n.. code-block:: python\n\n SOCIAL_AUTH_EDX_OIDC_URL_ROOT = 'http://edx.devstack.edxapp:18000/oauth2'\n SOCIAL_AUTH_EDX_OIDC_PUBLIC_URL_ROOT = 'http://localhost:18000/oauth2'\n\nAdditionally, the logout URL should also be browser-accessible:\n\n.. code-block:: python\n\n SOCIAL_AUTH_EDX_OIDC_LOGOUT_URL = 'http://localhost:18000/logout'\n\nTesting\n-------\n\nCall ``make test``.\n\nLicense\n-------\n\nThe code in this repository is licensed under the AGPL unless otherwise noted.\n\nPlease see ``LICENSE.txt`` for details.\n\nHow To Contribute\n-----------------\n\nContributions are very welcome!\n\nPlease read `How To Contribute `_ for details.\n\nEven though it was written with `edx-platform `_ in mind,\nthe guidelines should be followed for Open edX code in general.\n\nReporting Security Issues\n-------------------------\n\nPlease do not report security issues in public. Please email security@edx.org.\n\nMailing List and IRC Channel\n----------------------------\n\nYou can discuss this code on the `edx-code Google Group `_ or in the\n``#edx-code`` IRC channel on Freenode.\n\n\n.. :changelog:\n\nHistory\n=======\n\n0.1.3 (2015-03-31)\n------------------\n\n- Update required version of Python Social Auth to 0.2.3.\n\n0.1.2 (2015-02-23)\n------------------\n\n- Update required version of Python Social Auth to 0.2.2.\n\n0.1.1 (2015-02-20)\n------------------\n\n- Initial release.\n\n\nRenzo Lucioni \nTroy Sankey \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/edx/auth-backends", "keywords": "authentication edx", "license": "AGPL", "maintainer": "", "maintainer_email": "", "name": "edx-auth-backends", "package_url": "https://pypi.org/project/edx-auth-backends/", "platform": "", "project_url": "https://pypi.org/project/edx-auth-backends/", "project_urls": { "Homepage": "https://github.com/edx/auth-backends" }, "release_url": "https://pypi.org/project/edx-auth-backends/2.0.2/", "requires_dist": [ "Django (<2.0,>=1.8)", "pyjwt", "six", "social-auth-core[openidconnect] (<2.0.0,>=1.3.0)", "social-auth-app-django (<2.0.0,>=1.2.0)" ], "requires_python": "", "summary": "Custom edX authentication backends and pipeline steps", "version": "2.0.2" }, "last_serial": 5667201, "releases": { "0.1.1": [ { "comment_text": "", "digests": { "md5": "a91508c2ff92388ce5d16f5784356621", "sha256": "3f3b11563fb7cb8df57cbfecce341f1b8b4449e44ea946350de639867838b926" }, "downloads": -1, "filename": "edx_auth_backends-0.1.1-py2-none-any.whl", "has_sig": false, "md5_digest": "a91508c2ff92388ce5d16f5784356621", "packagetype": "bdist_wheel", "python_version": "2.7", "requires_python": null, "size": 9318, "upload_time": "2015-02-20T18:31:14", "url": "https://files.pythonhosted.org/packages/31/47/62ec3d410af6d5d80da8e97dd56186e2ed0265e45cf10e4f65b365eb88c9/edx_auth_backends-0.1.1-py2-none-any.whl" }, { "comment_text": "", "digests": { "md5": "806e50082b8b653e188f91c3a263bf01", "sha256": "de6dc235788d6abe0023177e821eb7b20d0d69c34cad78cd396baee74a43c283" }, "downloads": -1, "filename": "edx-auth-backends-0.1.1.tar.gz", "has_sig": false, "md5_digest": "806e50082b8b653e188f91c3a263bf01", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 19221, "upload_time": "2015-02-20T18:31:04", "url": "https://files.pythonhosted.org/packages/74/4e/fec6b98d0c980e137ce1f0dc1f8fc32cc1b4d36187d67620269039e667e4/edx-auth-backends-0.1.1.tar.gz" } ], "0.1.2": [ { "comment_text": "", "digests": { "md5": "ec21a021670a044a51c237814c57b9ae", "sha256": "717d186300e68abbade82492fe6101200cdb31c72e24558a185774fc6c4bf49b" }, "downloads": -1, "filename": "edx_auth_backends-0.1.2-py2-none-any.whl", "has_sig": false, "md5_digest": "ec21a021670a044a51c237814c57b9ae", "packagetype": "bdist_wheel", "python_version": "2.7", "requires_python": null, "size": 9396, "upload_time": "2015-02-23T16:16:17", "url": "https://files.pythonhosted.org/packages/f0/27/d8caf899b4d147c668ac37e99394160b291169e3d7df649eac39f02246bb/edx_auth_backends-0.1.2-py2-none-any.whl" }, { "comment_text": "", "digests": { "md5": "7a8447cea159f10899858a5b1b5471bc", "sha256": "343c0481cd1d645be2073952b16c5a413bd04ada9a20a5fad5ad9b4854649c34" }, "downloads": -1, "filename": "edx-auth-backends-0.1.2.tar.gz", "has_sig": false, "md5_digest": "7a8447cea159f10899858a5b1b5471bc", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 19206, "upload_time": "2015-02-23T16:16:01", "url": "https://files.pythonhosted.org/packages/7c/69/6017a117af6a4bdfce29ce7f79ed74fc26db57f089eae5dc2f0711a2b7cc/edx-auth-backends-0.1.2.tar.gz" } ], "0.1.3": [ { "comment_text": "", "digests": { "md5": "dbef565ced9f433b5b1a47184d15c413", "sha256": "c7e7449b11258d99f5691210f8ed6cc55f30ad3c2294ddfadf3b2631d62b8fb4" }, "downloads": -1, "filename": "edx_auth_backends-0.1.3-py2-none-any.whl", "has_sig": false, "md5_digest": "dbef565ced9f433b5b1a47184d15c413", "packagetype": "bdist_wheel", "python_version": "2.7", "requires_python": null, "size": 9432, "upload_time": "2015-03-31T20:38:23", "url": "https://files.pythonhosted.org/packages/7b/ba/f942ba8270ecb83ac06109959672afdb689db0102e43286e7f6e0cc33b62/edx_auth_backends-0.1.3-py2-none-any.whl" }, { "comment_text": "", "digests": { "md5": "b92e11cb851eb80f2f8d2827f2ae92e6", "sha256": "6ae477e53f5a86d233365de679175b59f7a87ea985f0c9371e0f5b2ae9b44b3b" }, "downloads": -1, "filename": "edx-auth-backends-0.1.3.tar.gz", "has_sig": false, "md5_digest": "b92e11cb851eb80f2f8d2827f2ae92e6", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 19246, "upload_time": "2015-03-31T20:38:05", "url": "https://files.pythonhosted.org/packages/47/fa/0ce8064a94c26787345c6e3e08ef446ce9bc206d11d168242fb083d0ea24/edx-auth-backends-0.1.3.tar.gz" } ], "0.2.0": [ { "comment_text": "", "digests": { "md5": "808eb231bc203558cbea2ef2b7fb1e01", "sha256": "031458cae4d0cdc2242098edaa7bcde5844008574242411def262e35c0c32088" }, "downloads": -1, "filename": "edx_auth_backends-0.2.0-py2-none-any.whl", "has_sig": false, "md5_digest": "808eb231bc203558cbea2ef2b7fb1e01", "packagetype": "bdist_wheel", "python_version": "py2", "requires_python": null, "size": 7921, "upload_time": "2016-02-22T21:16:23", "url": "https://files.pythonhosted.org/packages/76/ba/49b0f26348d6c8ed8694ac2153771ab26b98f2f25dc3c151faf5f9e15bcc/edx_auth_backends-0.2.0-py2-none-any.whl" }, { "comment_text": "", "digests": { "md5": "e9db74638688d36635715e49af92d2e6", "sha256": "1183cd86158afbe9401444a12fc5744f97b0e23dbc5211371ef89d864b59870b" }, "downloads": -1, "filename": "edx-auth-backends-0.2.0.tar.gz", "has_sig": false, "md5_digest": "e9db74638688d36635715e49af92d2e6", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 18580, "upload_time": "2016-02-22T21:16:33", "url": "https://files.pythonhosted.org/packages/9f/8f/a13577075269ea97e87534291f3e730db4ea22ad54b58caefbf32b5078ee/edx-auth-backends-0.2.0.tar.gz" } ], "0.2.1": [ { "comment_text": "", "digests": { "md5": "20236ff338c14f30119775a13360e287", "sha256": "4846763656f13e2be1ba771e014f4b9aab2920e22efc7e12f71c93b664f8cc55" }, "downloads": -1, "filename": "edx_auth_backends-0.2.1-py2.py3-none-any.whl", "has_sig": false, "md5_digest": "20236ff338c14f30119775a13360e287", "packagetype": "bdist_wheel", "python_version": "py2.py3", "requires_python": null, "size": 8191, "upload_time": "2016-04-22T21:07:26", "url": "https://files.pythonhosted.org/packages/91/d5/1eed91cb6746b5f38f62df1548046382fea1b98424a05d2c273e637f4ac6/edx_auth_backends-0.2.1-py2.py3-none-any.whl" }, { "comment_text": "", "digests": { "md5": "9a1fcd7170c1f86a1f1a74c4477b461e", "sha256": "688217e3259b43ba05e255d475ead3e5eb212490a5f0765f1d43ea3adda6f271" }, "downloads": -1, "filename": "edx-auth-backends-0.2.1.tar.gz", "has_sig": false, "md5_digest": "9a1fcd7170c1f86a1f1a74c4477b461e", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 18982, "upload_time": "2016-04-22T21:07:31", "url": "https://files.pythonhosted.org/packages/c8/28/6068a4f81bc94df89512c614ccece926cefbecfff3d0fc1e40b095d4167a/edx-auth-backends-0.2.1.tar.gz" } ], "0.2.3": [ { "comment_text": "", "digests": { "md5": "8fdee6efc1c9a4871cbff214a013fc47", "sha256": "567ea6a9c6323a7592bd727ab1f985fec2ed2f4a673983c7d01f1890b4a6d34e" }, "downloads": -1, "filename": "edx_auth_backends-0.2.3-py2.py3-none-any.whl", "has_sig": false, "md5_digest": "8fdee6efc1c9a4871cbff214a013fc47", "packagetype": "bdist_wheel", "python_version": "py2.py3", "requires_python": null, "size": 8190, "upload_time": "2016-04-29T19:05:04", "url": "https://files.pythonhosted.org/packages/5a/48/b7fa2f98370cbdd0f88390503f5deebfa65b52eb75bdf5cdb7302feb41bf/edx_auth_backends-0.2.3-py2.py3-none-any.whl" }, { "comment_text": "", "digests": { "md5": "13a4fb3008d2f281704b3cc1ffd737fe", "sha256": "05fa8c68dd6b63df54bdc14b5f7ec45a4c76fcb844d720a4e32574db04f7622b" }, "downloads": -1, "filename": "edx-auth-backends-0.2.3.tar.gz", "has_sig": false, "md5_digest": "13a4fb3008d2f281704b3cc1ffd737fe", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 18982, "upload_time": "2016-04-29T19:05:13", "url": "https://files.pythonhosted.org/packages/03/0f/5c46c9182477a9dc27798118e9576c26133f015ca38d4a433bb25854e531/edx-auth-backends-0.2.3.tar.gz" } ], "0.3.0": [ { "comment_text": "", "digests": { "md5": "f4f2beccb16b324b9e14cab210a10933", "sha256": "a3e519563a0e0ce3e01450dcd79a090b1c18558727f596107ea79e8355bfabe5" }, "downloads": -1, "filename": "edx_auth_backends-0.3.0-py2.py3-none-any.whl", "has_sig": false, "md5_digest": "f4f2beccb16b324b9e14cab210a10933", "packagetype": "bdist_wheel", "python_version": "py2.py3", "requires_python": null, "size": 9082, "upload_time": "2016-06-07T14:49:52", "url": "https://files.pythonhosted.org/packages/7b/1a/4a7457d467e31f9082b9bf6752707bdd5d96ea5313ad7e7d61bd4d29559d/edx_auth_backends-0.3.0-py2.py3-none-any.whl" }, { "comment_text": "", "digests": { "md5": "9793676ded11da837cbcd104f026ff25", "sha256": "1113ca6ad35c72cb3173bef64b1410a8f0cc090c30fe2d2bcfe9dad122771821" }, "downloads": -1, "filename": "edx-auth-backends-0.3.0.tar.gz", "has_sig": false, "md5_digest": "9793676ded11da837cbcd104f026ff25", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 19538, "upload_time": "2016-06-07T14:50:22", "url": "https://files.pythonhosted.org/packages/28/84/754ecdb7f57a049091b70dc5e24ea302cf1530c35eee358f8d91cc778f56/edx-auth-backends-0.3.0.tar.gz" } ], "0.3.1": [ { "comment_text": "", "digests": { "md5": "6a280cc527128ee16424596395e9dd90", "sha256": "eaed5b36646ad2607077ca14e177cee3330acbf75737fca883a423fce6ffdbdb" }, "downloads": -1, "filename": "edx_auth_backends-0.3.1-py2.py3-none-any.whl", "has_sig": false, "md5_digest": "6a280cc527128ee16424596395e9dd90", "packagetype": "bdist_wheel", "python_version": "py2.py3", "requires_python": null, "size": 12414, "upload_time": "2016-06-09T05:05:03", "url": "https://files.pythonhosted.org/packages/2e/48/29ee9d45a10ed2481d76aa9f4d2c9082cc8ca2887df6ba7220ae191822ee/edx_auth_backends-0.3.1-py2.py3-none-any.whl" }, { "comment_text": "", "digests": { "md5": "d1f8f6a60a34e0e64d5c167bc582dfcb", "sha256": "50de3fbfca991cb275dd6f82db67af12554790a1fe91c2fa09a2b519f263acc0" }, "downloads": -1, "filename": "edx-auth-backends-0.3.1.tar.gz", "has_sig": false, "md5_digest": "d1f8f6a60a34e0e64d5c167bc582dfcb", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 21230, "upload_time": "2016-06-09T05:05:06", "url": "https://files.pythonhosted.org/packages/9a/e2/a4b7fb456921893b401ce2c33bf1621cf393422eafd41eb37f5210a2e5c4/edx-auth-backends-0.3.1.tar.gz" } ], "0.4.0": [ { "comment_text": "", "digests": { "md5": "fc6c6576b5c5193cb68fb5448d3626bb", "sha256": "81c40ad7d12e547f958abbf0fa848c9b7e7cd36363130af4deab461e9d375103" }, "downloads": -1, "filename": "edx_auth_backends-0.4.0-py2.py3-none-any.whl", "has_sig": false, "md5_digest": "fc6c6576b5c5193cb68fb5448d3626bb", "packagetype": "bdist_wheel", "python_version": "py2.py3", "requires_python": null, "size": 13831, "upload_time": "2016-06-11T02:35:37", "url": "https://files.pythonhosted.org/packages/29/ce/de236ffea313b871bdd1dcaedddd55454bcb1ccfb6c9a13813bb001d5dd8/edx_auth_backends-0.4.0-py2.py3-none-any.whl" }, { "comment_text": "", "digests": { "md5": "2d0bc8a838008df3f381b2aa2beb5559", "sha256": "e3ee70caffea1487f206b4ef5a7b6e89e2594dec8b06040e0a479a6c62991870" }, "downloads": -1, "filename": "edx-auth-backends-0.4.0.tar.gz", "has_sig": false, "md5_digest": "2d0bc8a838008df3f381b2aa2beb5559", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 22124, "upload_time": "2016-06-11T02:35:40", "url": "https://files.pythonhosted.org/packages/03/1c/a8dbaa625f367e6290a030f0d13a5ddcda6a8b9290c3becf2b13b3b0535d/edx-auth-backends-0.4.0.tar.gz" } ], "0.5.0": [ { "comment_text": "", "digests": { "md5": "d304d96a2f1a3f87c13b5f3e83dcca24", "sha256": "66e9e1afffc69ae76df1c6cae454e74d889a4a61aa30398c70f50b84d068d915" }, "downloads": -1, "filename": "edx_auth_backends-0.5.0-py2.py3-none-any.whl", "has_sig": false, "md5_digest": "d304d96a2f1a3f87c13b5f3e83dcca24", "packagetype": "bdist_wheel", "python_version": "py2.py3", "requires_python": null, "size": 14201, "upload_time": "2016-06-17T03:50:58", "url": "https://files.pythonhosted.org/packages/70/bd/27e472ff73e754ab6ea9551fdb832d2a65081cea787584d7243e4fcf6f5c/edx_auth_backends-0.5.0-py2.py3-none-any.whl" }, { "comment_text": "", "digests": { "md5": "8d2f49981fd52278a5a7d5747ce12d1b", "sha256": "ecae9ad5820fa2c7af787e225ccc29704249192b3fa5a1296bc9b5318f36de6d" }, "downloads": -1, "filename": "edx-auth-backends-0.5.0.tar.gz", "has_sig": false, "md5_digest": "8d2f49981fd52278a5a7d5747ce12d1b", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 22384, "upload_time": "2016-06-17T03:51:03", "url": "https://files.pythonhosted.org/packages/94/cc/fbea403a76a9d2d25f0d3ffd095029b7cacea045b7c516c7af208d34a46c/edx-auth-backends-0.5.0.tar.gz" } ], "0.5.1": [ { "comment_text": "", "digests": { "md5": "e7ad3cfea36bb709490585379710204f", "sha256": "8bc7297595f6930ecdd67b5936c4dd79d50bdb74909d9efbceb7de47b0695d56" }, "downloads": -1, "filename": "edx_auth_backends-0.5.1-py2.py3-none-any.whl", "has_sig": false, "md5_digest": "e7ad3cfea36bb709490585379710204f", "packagetype": "bdist_wheel", "python_version": "py2.py3", "requires_python": null, "size": 15354, "upload_time": "2016-08-12T07:25:46", "url": "https://files.pythonhosted.org/packages/cc/fb/fc71e5db05b620d3f9f6740215562ad39fb90063bdc69da1089a0136b961/edx_auth_backends-0.5.1-py2.py3-none-any.whl" }, { "comment_text": "", "digests": { "md5": "cd6ac1b68d0c2fa05a5c9d1821ece3a8", "sha256": "2c8d1381e821d335a7eff76a68cf3b34c843002204d58a4c34a811b87070e166" }, "downloads": -1, "filename": "edx-auth-backends-0.5.1.tar.gz", "has_sig": false, "md5_digest": "cd6ac1b68d0c2fa05a5c9d1821ece3a8", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 23512, "upload_time": "2016-08-12T07:25:48", "url": "https://files.pythonhosted.org/packages/4a/c9/0b9d73fbfc3376be5fa930f7847b7add438dd933ce8202f8caad431cae61/edx-auth-backends-0.5.1.tar.gz" } ], "0.5.2": [ { "comment_text": "", "digests": { "md5": "27d126e236862fc5dace393a0de01e56", "sha256": "6a31e93e76f9f3905fbfc9f8b2d7d572832ef1990ac8bd10d8b9edb87b66f90b" }, "downloads": -1, "filename": "edx_auth_backends-0.5.2-py2.py3-none-any.whl", "has_sig": false, "md5_digest": "27d126e236862fc5dace393a0de01e56", "packagetype": "bdist_wheel", "python_version": "py2.py3", "requires_python": null, "size": 15356, "upload_time": "2016-08-15T15:41:56", "url": "https://files.pythonhosted.org/packages/37/e2/4114e99a09bdbc0bd701de6574ef020a0ac207081fb9128db1c9a46f57cf/edx_auth_backends-0.5.2-py2.py3-none-any.whl" }, { "comment_text": "", "digests": { "md5": "3a3b29490197b5eb20220beca22a4e39", "sha256": "b80127948a58c9380cfa401edc02eafa68720b61b43a9fb26adc38ef00a18ee8" }, "downloads": -1, "filename": "edx-auth-backends-0.5.2.tar.gz", "has_sig": false, "md5_digest": "3a3b29490197b5eb20220beca22a4e39", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 23520, "upload_time": "2016-08-15T15:41:59", "url": "https://files.pythonhosted.org/packages/d1/8f/3ab5ffa95620adee7f96cfb3d18314491dc8356fce866aaf183b2b01309c/edx-auth-backends-0.5.2.tar.gz" } ], "0.5.3": [ { "comment_text": "", "digests": { "md5": "3edc66331aa209430a78459677924e5a", "sha256": "10d8040a7900118321946331ffafb1e67560246e03130414a449b38355e29adc" }, "downloads": -1, "filename": "edx_auth_backends-0.5.3-py2.py3-none-any.whl", "has_sig": false, "md5_digest": "3edc66331aa209430a78459677924e5a", "packagetype": "bdist_wheel", "python_version": "py2.py3", "requires_python": null, "size": 15364, "upload_time": "2017-01-03T19:06:08", "url": "https://files.pythonhosted.org/packages/3b/c5/b59db99b03b68121e090fbfaee3a1627b206d782921780a313a64db0528e/edx_auth_backends-0.5.3-py2.py3-none-any.whl" }, { "comment_text": "", "digests": { "md5": "bef6b7368af16ffc7f28c7d992b14c01", "sha256": "a32a9d3aad7ec0aab67ef0d33dc58e18ba24444387bb7c7150374fb28b18a54c" }, "downloads": -1, "filename": "edx-auth-backends-0.5.3.tar.gz", "has_sig": false, "md5_digest": "bef6b7368af16ffc7f28c7d992b14c01", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 23633, "upload_time": "2017-01-03T19:06:09", "url": "https://files.pythonhosted.org/packages/17/ef/c4de9c33df0220732d0fff11f5af146b6fe3d25e8055f9c322c04c71ddd6/edx-auth-backends-0.5.3.tar.gz" } ], "0.6.0": [ { "comment_text": "", "digests": { "md5": "58ffc45289e6922bd73bb82f3c850f3c", "sha256": "a424e6665d9cce055d06c5e8b01acd5b130242a469843fcd4b70942552030501" }, "downloads": -1, "filename": "edx_auth_backends-0.6.0-py2.py3-none-any.whl", "has_sig": false, "md5_digest": "58ffc45289e6922bd73bb82f3c850f3c", "packagetype": "bdist_wheel", "python_version": "py2.py3", "requires_python": null, "size": 18390, "upload_time": "2017-01-19T14:24:35", "url": "https://files.pythonhosted.org/packages/fa/c0/12c6a9d0209251da91a2b4ca56c733d6dc6097aa88f6a7dd7cb5e3d95227/edx_auth_backends-0.6.0-py2.py3-none-any.whl" }, { "comment_text": "", "digests": { "md5": "d78df67f89303be76cdf5039fbfa34bd", "sha256": "f2a84aed4bdc06c2f83e35b0e04740bff2210bcb90d72bf1870401f155a51077" }, "downloads": -1, "filename": "edx-auth-backends-0.6.0.tar.gz", "has_sig": false, "md5_digest": "d78df67f89303be76cdf5039fbfa34bd", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 25695, "upload_time": "2017-01-19T14:24:36", "url": "https://files.pythonhosted.org/packages/05/14/ba29045afad783bb0ab061bed4bb71925fc847d930fd4e48679212e7bc53/edx-auth-backends-0.6.0.tar.gz" } ], "0.7.0": [ { "comment_text": "", "digests": { "md5": "f135d98b771fbf14518a844152c17378", "sha256": "d08f0ac28fa123e635c60a25d637b30072614e8b49f052f78882d8c582e1ddae" }, "downloads": -1, "filename": "edx_auth_backends-0.7.0-py2.py3-none-any.whl", "has_sig": false, "md5_digest": "f135d98b771fbf14518a844152c17378", "packagetype": "bdist_wheel", "python_version": "py2.py3", "requires_python": null, "size": 18394, "upload_time": "2017-01-26T20:27:49", "url": "https://files.pythonhosted.org/packages/cf/90/36c390935b10a503ce8435d92c15436ec9b425dd8fb2a2cd34d157ecea85/edx_auth_backends-0.7.0-py2.py3-none-any.whl" }, { "comment_text": "", "digests": { "md5": "79fff8ded07c9445ee7489efd5f7a485", "sha256": "181b0c9d9c544b926666d45d2482d443e3965bd05a0e626ce6e60517f2f31202" }, "downloads": -1, "filename": "edx-auth-backends-0.7.0.tar.gz", "has_sig": false, "md5_digest": "79fff8ded07c9445ee7489efd5f7a485", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 25703, "upload_time": "2017-01-26T20:27:51", "url": "https://files.pythonhosted.org/packages/1f/f9/28501571a0cf60313eec6fa90bda1ab4d1b105a01c7e05b4587e03003e4d/edx-auth-backends-0.7.0.tar.gz" } ], "1.0.1": [ { "comment_text": "", "digests": { "md5": "5519513852a6a77cdf7b008df48075e4", "sha256": "7f9a706ef65249d6ba4a984f4ff8360930e14052aec2cea0b52e90bb49b24d55" }, "downloads": -1, "filename": "edx_auth_backends-1.0.1-py2.py3-none-any.whl", "has_sig": false, "md5_digest": "5519513852a6a77cdf7b008df48075e4", "packagetype": "bdist_wheel", "python_version": "py2.py3", "requires_python": null, "size": 19213, "upload_time": "2017-04-05T23:01:05", "url": "https://files.pythonhosted.org/packages/00/1b/8c6240d2be5e3eae16d080be14545891815ac01576816845b553536433d7/edx_auth_backends-1.0.1-py2.py3-none-any.whl" }, { "comment_text": "", "digests": { "md5": "2d60a4e44e6d44f6c5e617c3dfe9691b", "sha256": "bded905ad2724e2b32f039891f6b5b802b9fa05baa00ad3760e0b0f750088527" }, "downloads": -1, "filename": "edx-auth-backends-1.0.1.tar.gz", "has_sig": false, "md5_digest": "2d60a4e44e6d44f6c5e617c3dfe9691b", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 26471, "upload_time": "2017-04-05T23:01:07", "url": "https://files.pythonhosted.org/packages/05/3e/4a83030bdd4b3da6ccbbb310b9528efe0f1dbe07d3638b6fdab530ccde59/edx-auth-backends-1.0.1.tar.gz" } ], "1.0.2": [ { "comment_text": "", "digests": { "md5": "d8fbcb5bb5b58fd0fc4bc801ee5c825c", "sha256": "b1c6d2a43eb6b45f64cc2e6b0a4b5637f07b88caa939e710da920fe2699ae3b6" }, "downloads": -1, "filename": "edx_auth_backends-1.0.2-py2.py3-none-any.whl", "has_sig": false, "md5_digest": "d8fbcb5bb5b58fd0fc4bc801ee5c825c", "packagetype": "bdist_wheel", "python_version": "py2.py3", "requires_python": null, "size": 20200, "upload_time": "2017-04-26T13:07:41", "url": "https://files.pythonhosted.org/packages/bd/d9/8fb4105718fc57cdc08387139c59ead5b1756e7e4ec88b60fe70a21a610d/edx_auth_backends-1.0.2-py2.py3-none-any.whl" }, { "comment_text": "", "digests": { "md5": "1e04d3117938b76a4de504bc205a2165", "sha256": "3bbcbd53572fe41469e87a80a5171a7e097ce0e55ee4662e939bee8a135c984b" }, "downloads": -1, "filename": "edx-auth-backends-1.0.2.tar.gz", "has_sig": false, "md5_digest": "1e04d3117938b76a4de504bc205a2165", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 27180, "upload_time": "2017-04-26T13:07:43", "url": "https://files.pythonhosted.org/packages/ae/c0/401eb7f6e04893072f32b6409452e5f426ad3ec567fb5bfd6dbfd18fe22d/edx-auth-backends-1.0.2.tar.gz" } ], "1.0.3": [ { "comment_text": "", "digests": { "md5": "5a1f05127f23222bd0896afb8e559dac", "sha256": "545324e77dea2e7a51bb591388c9e5d5fc59e82ede52c066fdb7737ec2cf67e7" }, "downloads": -1, "filename": "edx_auth_backends-1.0.3-py2.py3-none-any.whl", "has_sig": false, "md5_digest": "5a1f05127f23222bd0896afb8e559dac", "packagetype": "bdist_wheel", "python_version": "py2.py3", "requires_python": null, "size": 20443, "upload_time": "2017-04-27T02:44:34", "url": "https://files.pythonhosted.org/packages/aa/21/4fa11dd5c49fccf94d2d91769cd41ff67535cf662704fa5bb0918d62fc9e/edx_auth_backends-1.0.3-py2.py3-none-any.whl" }, { "comment_text": "", "digests": { "md5": "494fa5965e8b76cd568b7db34437f221", "sha256": "52de9c58696fe462d67f637574cd93b0e07f98dc26fc8a95cfff20b78ad54a81" }, "downloads": -1, "filename": "edx-auth-backends-1.0.3.tar.gz", "has_sig": false, "md5_digest": "494fa5965e8b76cd568b7db34437f221", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 27402, "upload_time": "2017-04-27T02:44:36", "url": "https://files.pythonhosted.org/packages/9a/9f/7fdb667887ad56c8b55a636206a88d19b4ec043dc8701e5f6ebd5309bca8/edx-auth-backends-1.0.3.tar.gz" } ], "1.0.4": [ { "comment_text": "", "digests": { "md5": "80a8b9a1514b115868039fb03e0df159", "sha256": "9e6bd117670c5c4058879caa3de49ee6c25ac62939f1c66d52d7c8076d4aecfe" }, "downloads": -1, "filename": "edx_auth_backends-1.0.4-py2.py3-none-any.whl", "has_sig": false, "md5_digest": "80a8b9a1514b115868039fb03e0df159", "packagetype": "bdist_wheel", "python_version": "py2.py3", "requires_python": null, "size": 20517, "upload_time": "2017-05-01T19:12:17", "url": "https://files.pythonhosted.org/packages/cb/63/fbf5b01e48931b27e5a3d65bdf396ff101499926b04b30330f3257933df1/edx_auth_backends-1.0.4-py2.py3-none-any.whl" }, { "comment_text": "", "digests": { "md5": "1e3598aad7410d1fd6fe572d489b5dc4", "sha256": "c8ec6f1678a44def68b17e8b1bfc2ff9a938c5df246c6fba5b49e45db8648f05" }, "downloads": -1, "filename": "edx-auth-backends-1.0.4.tar.gz", "has_sig": false, "md5_digest": "1e3598aad7410d1fd6fe572d489b5dc4", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 27442, "upload_time": "2017-05-01T19:12:19", "url": "https://files.pythonhosted.org/packages/70/05/3ccc359a2f4bbb0aaabc90c39efcf0ab6a7b636f04ea402e52f8dd462823/edx-auth-backends-1.0.4.tar.gz" } ], "1.1.0": [ { "comment_text": "", "digests": { "md5": "bfc2d4a96c91fca0427e569c9e055d9f", "sha256": "974e27ac3949f90d4026926007825cd58df8e418ee2adc2c0e9be94cd09d9dcd" }, "downloads": -1, "filename": "edx_auth_backends-1.1.0-py2.py3-none-any.whl", "has_sig": false, "md5_digest": "bfc2d4a96c91fca0427e569c9e055d9f", "packagetype": "bdist_wheel", "python_version": "py2.py3", "requires_python": null, "size": 24365, "upload_time": "2017-05-05T20:38:54", "url": "https://files.pythonhosted.org/packages/9b/b4/7b7fe457f9d0df315f031bc4b4a92256a92cae47b56d8c44be4e484910f8/edx_auth_backends-1.1.0-py2.py3-none-any.whl" }, { "comment_text": "", "digests": { "md5": "119e9b096e9cec909b6d23cd77667cbc", "sha256": "511d5140d27d012acdaddac053d64998014b38b149391ac7dfb23f8c299f801b" }, "downloads": -1, "filename": "edx-auth-backends-1.1.0.tar.gz", "has_sig": false, "md5_digest": "119e9b096e9cec909b6d23cd77667cbc", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 31103, "upload_time": "2017-05-05T20:38:56", "url": "https://files.pythonhosted.org/packages/15/6b/26a37c269da60a371ec4fd34a584c34d5264a107a0e32c278136ecca649a/edx-auth-backends-1.1.0.tar.gz" } ], "1.1.1": [ { "comment_text": "", "digests": { "md5": "08e0ef5f1ed37a7179aba98eef7a3b74", "sha256": "7b303bd6eb974d0c20d5fdc8128ab7e40fd0e4d86f052965b9f8cf2cebcd625d" }, "downloads": -1, "filename": "edx_auth_backends-1.1.1-py2.py3-none-any.whl", "has_sig": false, "md5_digest": "08e0ef5f1ed37a7179aba98eef7a3b74", "packagetype": "bdist_wheel", "python_version": "py2.py3", "requires_python": null, "size": 24376, "upload_time": "2017-05-12T15:55:36", "url": "https://files.pythonhosted.org/packages/cb/f9/23625c1ac62bb211d1510854880192b3c631b85fecc9ac871e120950961f/edx_auth_backends-1.1.1-py2.py3-none-any.whl" }, { "comment_text": "", "digests": { "md5": "34599270a9d591243d436ffa77a96ac7", "sha256": "1f75c1a3b8c919475b7d42431397831b6801117706f4c5a48581efe76ec274ca" }, "downloads": -1, "filename": "edx-auth-backends-1.1.1.tar.gz", "has_sig": false, "md5_digest": "34599270a9d591243d436ffa77a96ac7", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 31099, "upload_time": "2017-05-12T15:55:37", "url": "https://files.pythonhosted.org/packages/13/89/65d2bac54abbed1784a7e2acab81dacc606740b7a7272b36bb95c037d3f7/edx-auth-backends-1.1.1.tar.gz" } ], "1.1.2": [ { "comment_text": "", "digests": { "md5": "f58e0b975db55876704a99089d6b51b7", "sha256": "dbcc0cd3733e6306bcc85742e6096a08658fbc41dc1218b3fc289574d9224935" }, "downloads": -1, "filename": "edx_auth_backends-1.1.2-py2.py3-none-any.whl", "has_sig": false, "md5_digest": "f58e0b975db55876704a99089d6b51b7", "packagetype": "bdist_wheel", "python_version": "py2.py3", "requires_python": null, "size": 24545, "upload_time": "2017-05-12T20:44:57", "url": "https://files.pythonhosted.org/packages/01/ac/fa3bcd07363189c2148e1687e3006de18c76ce7849ddb94e3aea0c7630f0/edx_auth_backends-1.1.2-py2.py3-none-any.whl" }, { "comment_text": "", "digests": { "md5": "f382e90a5d0284a22add379773f1dc5b", "sha256": "038cabcd43699872d54681a47becc18fdf2c53688b05faadc8cd840c68ad1e4c" }, "downloads": -1, "filename": "edx-auth-backends-1.1.2.tar.gz", "has_sig": false, "md5_digest": "f382e90a5d0284a22add379773f1dc5b", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 31205, "upload_time": "2017-05-12T20:44:59", "url": "https://files.pythonhosted.org/packages/ac/ec/dc005c4e8c273938c9b7e20597aadae6d72d5c3560ca0d9d4484e6f9ae5d/edx-auth-backends-1.1.2.tar.gz" } ], "1.1.3": [ { "comment_text": "", "digests": { "md5": "0c7894bce8518116b70ca41a5dd0ece4", "sha256": "4cfdbd21d278d0c8f78d8be76973127f559713f835ae47e91bdfad15066e92c3" }, "downloads": -1, "filename": "edx_auth_backends-1.1.3-py2.py3-none-any.whl", "has_sig": false, "md5_digest": "0c7894bce8518116b70ca41a5dd0ece4", "packagetype": "bdist_wheel", "python_version": "py2.py3", "requires_python": null, "size": 24938, "upload_time": "2018-01-04T10:16:32", "url": "https://files.pythonhosted.org/packages/19/7f/8c7ccd08e67b9f570ae0aa2ac5b400089b655e11f02240a4304878c3abc4/edx_auth_backends-1.1.3-py2.py3-none-any.whl" }, { "comment_text": "", "digests": { "md5": "a5d212d1be47f7c9adb19979b98500f1", "sha256": "73372d81478ef7892e4551cd771bad9581319d6ba46e33c2d713a68eb573b540" }, "downloads": -1, "filename": "edx-auth-backends-1.1.3.tar.gz", "has_sig": false, "md5_digest": "a5d212d1be47f7c9adb19979b98500f1", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 31532, "upload_time": "2018-01-04T10:16:33", "url": "https://files.pythonhosted.org/packages/24/02/e752ce9b6e53276d047a64b758c7ac8dc3404712c094731a343d5df54e3d/edx-auth-backends-1.1.3.tar.gz" } ], "1.1.4": [ { "comment_text": "", "digests": { "md5": "21e9f8f01bf701f034194485010ab4f4", "sha256": "764b5b66401fa0bfb02cd11b5c856c7cbc5c6135723137d76e1513abbd95a4c1" }, "downloads": -1, "filename": "edx_auth_backends-1.1.4-py2.py3-none-any.whl", "has_sig": false, "md5_digest": "21e9f8f01bf701f034194485010ab4f4", "packagetype": "bdist_wheel", "python_version": "py2.py3", "requires_python": null, "size": 31611, "upload_time": "2018-10-12T20:37:05", "url": "https://files.pythonhosted.org/packages/25/04/8c4ee398b7b0a405b32a9e6b4046e80c898d3406fc84a51a6b546e2865d3/edx_auth_backends-1.1.4-py2.py3-none-any.whl" }, { "comment_text": "", "digests": { "md5": "128caf850b0d534d85ef7a9c41c6ae0c", "sha256": "ff504a2e7ebc1bbf980227f7d1fc2ce25b60cbb0b108e43428c4682ef293e1e0" }, "downloads": -1, "filename": "edx-auth-backends-1.1.4.tar.gz", "has_sig": false, "md5_digest": "128caf850b0d534d85ef7a9c41c6ae0c", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 30303, "upload_time": "2018-10-12T20:37:06", "url": "https://files.pythonhosted.org/packages/b4/05/9b59beab90a49c710756c27b1f719013596e45eb9ccc09d522cdac65b83e/edx-auth-backends-1.1.4.tar.gz" } ], "1.1.5": [ { "comment_text": "", "digests": { "md5": "3471db6cd99683f2a728ed91aebb0c9c", "sha256": "75978f9821d6d84526a21a25b5e92f15d79a6da5c61e6c2d2f4cce28a6b461c8" }, "downloads": -1, "filename": "edx_auth_backends-1.1.5-py2.py3-none-any.whl", "has_sig": false, "md5_digest": "3471db6cd99683f2a728ed91aebb0c9c", "packagetype": "bdist_wheel", "python_version": "py2.py3", "requires_python": null, "size": 31635, "upload_time": "2018-10-19T17:57:23", "url": "https://files.pythonhosted.org/packages/15/07/90fe3e196f8abf4f7cc303c129c62da6d762efecc5fea8bc386893f92a36/edx_auth_backends-1.1.5-py2.py3-none-any.whl" }, { "comment_text": "", "digests": { "md5": "44119d11b810042be25507f9cb4f4318", "sha256": "f1ec333dd2b9d25c5beb8b9d8adecb9b34907c002226835c79b9797fda75c7ec" }, "downloads": -1, "filename": "edx-auth-backends-1.1.5.tar.gz", "has_sig": false, "md5_digest": "44119d11b810042be25507f9cb4f4318", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 30322, "upload_time": "2018-10-19T17:57:25", "url": "https://files.pythonhosted.org/packages/58/cd/922d10bf9471d051fe67b4fce991d18e3baefc5b28c34b33f5ee2dc24a26/edx-auth-backends-1.1.5.tar.gz" } ], "1.2.0": [ { "comment_text": "", "digests": { "md5": "21ddaf95d1c5f04ef2007eb9b876ca01", "sha256": "70875aeddef0d498a40cd358f2b7afaecdf62badbbd3171c2167048f3c2ae5cc" }, "downloads": -1, "filename": "edx_auth_backends-1.2.0-py2.py3-none-any.whl", "has_sig": false, "md5_digest": "21ddaf95d1c5f04ef2007eb9b876ca01", "packagetype": "bdist_wheel", "python_version": "py2.py3", "requires_python": null, "size": 31815, "upload_time": "2018-10-25T19:54:45", "url": "https://files.pythonhosted.org/packages/d4/d8/e21c42eabc8d532589677c27319dee84dc57d0cc36995551fbee10d6fe97/edx_auth_backends-1.2.0-py2.py3-none-any.whl" }, { "comment_text": "", "digests": { "md5": "2719baf29d30ab974c3e2a9317d26170", "sha256": "d24ef1ec3d5528baed5087aa72164b37eddc4e7af83ac31784ae766c50b465ae" }, "downloads": -1, "filename": "edx-auth-backends-1.2.0.tar.gz", "has_sig": false, "md5_digest": "2719baf29d30ab974c3e2a9317d26170", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 30448, "upload_time": "2018-10-25T19:54:46", "url": "https://files.pythonhosted.org/packages/29/16/187b8d566eee95ec809362311a2bb32b4eea73c6843638756d8fe88a445b/edx-auth-backends-1.2.0.tar.gz" } ], "1.2.1": [ { "comment_text": "", "digests": { "md5": "a9bd4bfb74e890c16e5de9250eb8bbd9", "sha256": "f8368ca18ecabf5349731a224caa06ab028dafb1d00295cd7930593eb0d10abe" }, "downloads": -1, "filename": "edx_auth_backends-1.2.1-py2.py3-none-any.whl", "has_sig": false, "md5_digest": "a9bd4bfb74e890c16e5de9250eb8bbd9", "packagetype": "bdist_wheel", "python_version": "py2.py3", "requires_python": null, "size": 31745, "upload_time": "2018-10-26T15:30:06", "url": "https://files.pythonhosted.org/packages/58/13/4149ec85c5d73335e1e3f2fd0850b260739d645ad7bddc8c5d201d648658/edx_auth_backends-1.2.1-py2.py3-none-any.whl" }, { "comment_text": "", "digests": { "md5": "88c99dac15d5f6afa1388e22350ce46f", "sha256": "f272b61b52724ad1d8e1119e0b3694b8be755ef68a97efba592fd3f4e477fe0f" }, "downloads": -1, "filename": "edx-auth-backends-1.2.1.tar.gz", "has_sig": false, "md5_digest": "88c99dac15d5f6afa1388e22350ce46f", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 30407, "upload_time": "2018-10-26T15:30:08", "url": "https://files.pythonhosted.org/packages/1f/3e/4db846c96f2ce95b7855f34e8965ab7e59a032826ca7cc9b856081af14c4/edx-auth-backends-1.2.1.tar.gz" } ], "1.2.2": [ { "comment_text": "", "digests": { "md5": "1033dfca20ddd437a3d9270d7906ab5b", "sha256": "020d6f5f8d7e9b65c833124f0697eb4906735017fb48898f45e337f092ec58a7" }, "downloads": -1, "filename": "edx_auth_backends-1.2.2-py2.py3-none-any.whl", "has_sig": false, "md5_digest": "1033dfca20ddd437a3d9270d7906ab5b", "packagetype": "bdist_wheel", "python_version": "py2.py3", "requires_python": null, "size": 32269, "upload_time": "2019-01-31T16:15:50", "url": "https://files.pythonhosted.org/packages/25/ce/e341a0311caea7ffcda54a7a9f1bd3ebe12bda11ce53424c0d633654495d/edx_auth_backends-1.2.2-py2.py3-none-any.whl" }, { "comment_text": "", "digests": { "md5": "c162f465fb41a6de91689f05995f1cc1", "sha256": "6f50001034dd5ad9cf663b46021bcc872f4695558f32617a7cbd4434d9eee4a1" }, "downloads": -1, "filename": "edx-auth-backends-1.2.2.tar.gz", "has_sig": false, "md5_digest": "c162f465fb41a6de91689f05995f1cc1", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 30821, "upload_time": "2019-01-31T16:15:51", "url": "https://files.pythonhosted.org/packages/c0/2b/b58d330ce2a27c78b2784bbf0ea43a0bc571b9c20ebe8e81fe7bb68647f1/edx-auth-backends-1.2.2.tar.gz" } ], "2.0.0": [ { "comment_text": "", "digests": { "md5": "aa1b9f3edcb315b7a9f8f13e1f6d13f0", "sha256": "471bf8d57a4dd07933710e1ce9aaf2558ec86df35cca26864e8087b9f6d8b49f" }, "downloads": -1, "filename": "edx_auth_backends-2.0.0-py2.py3-none-any.whl", "has_sig": false, "md5_digest": "aa1b9f3edcb315b7a9f8f13e1f6d13f0", "packagetype": "bdist_wheel", "python_version": "py2.py3", "requires_python": null, "size": 32915, "upload_time": "2019-03-28T18:54:55", "url": "https://files.pythonhosted.org/packages/de/fc/65660de4cd621b64eeb2f6e784ef36c44f865ba243ffd9c865d759532c5a/edx_auth_backends-2.0.0-py2.py3-none-any.whl" }, { "comment_text": "", "digests": { "md5": "2b13f660ad21920b286197d53bc1e4ce", "sha256": "9b785804421bb663aa62b11c7e204a71301faf281d89be28dda7b848f83322ac" }, "downloads": -1, "filename": "edx-auth-backends-2.0.0.tar.gz", "has_sig": false, "md5_digest": "2b13f660ad21920b286197d53bc1e4ce", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 31501, "upload_time": "2019-03-28T18:54:56", "url": "https://files.pythonhosted.org/packages/60/23/b28b5994225fb3656d8fd7a6a0d04455e61e3c96c455a940e463667968b9/edx-auth-backends-2.0.0.tar.gz" } ], "2.0.1": [ { "comment_text": "", "digests": { "md5": "071c922006c2fc4591ea51e9101bcc43", "sha256": "06bda7ad8ccb1b7ab1dbb8820a0dcaee89c167015b543d806c0c2ce23fdb75a7" }, "downloads": -1, "filename": "edx_auth_backends-2.0.1-py2.py3-none-any.whl", "has_sig": false, "md5_digest": "071c922006c2fc4591ea51e9101bcc43", "packagetype": "bdist_wheel", "python_version": "py2.py3", "requires_python": null, "size": 32898, "upload_time": "2019-05-13T09:42:42", "url": "https://files.pythonhosted.org/packages/10/f3/d1771713f56a381ef625d13a692bf671695c5af71daaa935c11d4eb50f31/edx_auth_backends-2.0.1-py2.py3-none-any.whl" }, { "comment_text": "", "digests": { "md5": "9eecd13c5d4c1c83c1d8248654418b92", "sha256": "2f9fb31e45694942e9b9a5fc002efb58ab8924447ee7a78a03d4d39e0f2eab25" }, "downloads": -1, "filename": "edx-auth-backends-2.0.1.tar.gz", "has_sig": false, "md5_digest": "9eecd13c5d4c1c83c1d8248654418b92", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 31495, "upload_time": "2019-05-13T09:42:43", "url": "https://files.pythonhosted.org/packages/ec/fa/eb707e3c8d99ec63dd9d9477a19994e8441431ab124b1fe0c235255277e4/edx-auth-backends-2.0.1.tar.gz" } ], "2.0.2": [ { "comment_text": "", "digests": { "md5": "aad606111ea6baba0057d227e5b26147", "sha256": "36f30400912bd5247361365e18c3cd51a5b90ff35fe30031114bb28ffbe26f87" }, "downloads": -1, "filename": "edx_auth_backends-2.0.2-py2.py3-none-any.whl", "has_sig": false, "md5_digest": "aad606111ea6baba0057d227e5b26147", "packagetype": "bdist_wheel", "python_version": "py2.py3", "requires_python": null, "size": 33160, "upload_time": "2019-08-12T15:44:50", "url": "https://files.pythonhosted.org/packages/ea/d8/b8b79a7e3f9088713c9dc53c91af9f5c35ba8396635a7c5155faef4c392c/edx_auth_backends-2.0.2-py2.py3-none-any.whl" }, { "comment_text": "", "digests": { "md5": "28974417780374b8104432c7ce4929e6", "sha256": "904471a32b204d06adce49f50eb30abd9d7fd23f714e505d838e5dec8c8031cd" }, "downloads": -1, "filename": "edx-auth-backends-2.0.2.tar.gz", "has_sig": false, "md5_digest": "28974417780374b8104432c7ce4929e6", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 31718, "upload_time": "2019-08-12T15:44:51", "url": "https://files.pythonhosted.org/packages/04/63/ea121aaf4d7ec64eb4e7d474fc78485b59bb61196e7d6686de68e1d56f4d/edx-auth-backends-2.0.2.tar.gz" } ] }, "urls": [ { "comment_text": "", "digests": { "md5": "aad606111ea6baba0057d227e5b26147", "sha256": "36f30400912bd5247361365e18c3cd51a5b90ff35fe30031114bb28ffbe26f87" }, "downloads": -1, "filename": "edx_auth_backends-2.0.2-py2.py3-none-any.whl", "has_sig": false, "md5_digest": "aad606111ea6baba0057d227e5b26147", "packagetype": "bdist_wheel", "python_version": "py2.py3", "requires_python": null, "size": 33160, "upload_time": "2019-08-12T15:44:50", "url": "https://files.pythonhosted.org/packages/ea/d8/b8b79a7e3f9088713c9dc53c91af9f5c35ba8396635a7c5155faef4c392c/edx_auth_backends-2.0.2-py2.py3-none-any.whl" }, { "comment_text": "", "digests": { "md5": "28974417780374b8104432c7ce4929e6", "sha256": "904471a32b204d06adce49f50eb30abd9d7fd23f714e505d838e5dec8c8031cd" }, "downloads": -1, "filename": "edx-auth-backends-2.0.2.tar.gz", "has_sig": false, "md5_digest": "28974417780374b8104432c7ce4929e6", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 31718, "upload_time": "2019-08-12T15:44:51", "url": "https://files.pythonhosted.org/packages/04/63/ea121aaf4d7ec64eb4e7d474fc78485b59bb61196e7d6686de68e1d56f4d/edx-auth-backends-2.0.2.tar.gz" } ] }