{
"info": {
"author": "Joris Beckers",
"author_email": "joris.beckers@gmail.com",
"bugtrack_url": null,
"classifiers": [
"Development Status :: 5 - Production/Stable",
"Environment :: Web Environment",
"Framework :: Django :: 1.11",
"Framework :: Django :: 2.0",
"Framework :: Django :: 2.1",
"Framework :: Django :: 2.2",
"Intended Audience :: Developers",
"Intended Audience :: End Users/Desktop",
"License :: OSI Approved :: BSD License",
"Operating System :: OS Independent",
"Programming Language :: Python",
"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",
"Programming Language :: Python :: 3.7",
"Topic :: Internet :: WWW/HTTP",
"Topic :: Internet :: WWW/HTTP :: Dynamic Content",
"Topic :: Internet :: WWW/HTTP :: WSGI",
"Topic :: Software Development :: Libraries :: Application Frameworks",
"Topic :: Software Development :: Libraries :: Python Modules"
],
"description": "ADFS Authentication for Django\n==============================\n\n.. image:: https://readthedocs.org/projects/django-auth-adfs/badge/?version=latest\n :target: http://django-auth-adfs.readthedocs.io/en/latest/?badge=latest\n :alt: Documentation Status\n.. image:: https://img.shields.io/pypi/v/django-auth-adfs.svg\n :target: https://pypi.python.org/pypi/django-auth-adfs\n.. image:: https://img.shields.io/pypi/pyversions/django-auth-adfs.svg\n :target: https://pypi.python.org/pypi/django-auth-adfs#downloads\n.. image:: https://img.shields.io/pypi/djversions/django-auth-adfs.svg\n :target: https://pypi.python.org/pypi/django-auth-adfs\n.. image:: https://travis-ci.org/jobec/django-auth-adfs.svg?branch=master\n :target: https://travis-ci.org/jobec/django-auth-adfs\n.. image:: https://codecov.io/github/jobec/django-auth-adfs/coverage.svg?branch=master\n :target: https://codecov.io/github/jobec/django-auth-adfs?branch=master\n\nA Django authentication backend for Microsoft ADFS and Azure AD\n\n* Free software: BSD License\n* Homepage: https://github.com/jobec/django-auth-adfs\n* Documentation: http://django-auth-adfs.readthedocs.io/\n\nFeatures\n--------\n\n* Integrates Django with Active Directory on Windows 2012 R2, 2016 or Azure AD in the cloud.\n* Provides seamless single sign on (SSO) for your Django project on intranet environments.\n* Auto creates users and adds them to Django groups based on info received from ADFS.\n* Django Rest Framework (DRF) integration: Authenticate against your API with an ADFS access token.\n\nInstallation\n------------\n\nPython package::\n\n pip install django-auth-adfs\n\nIn your project's ``settings.py`` add these settings.\n\n.. code-block:: python\n\n AUTHENTICATION_BACKENDS = (\n ...\n 'django_auth_adfs.backend.AdfsAuthCodeBackend',\n ...\n )\n\n INSTALLED_APPS = (\n ...\n # Needed for the ADFS redirect URI to function\n 'django_auth_adfs',\n ...\n\n # checkout the documentation for more settings\n AUTH_ADFS = {\n \"SERVER\": \"adfs.yourcompany.com\",\n \"CLIENT_ID\": \"your-configured-client-id\",\n \"RELYING_PARTY_ID\": \"your-adfs-RPT-name\",\n # Make sure to read the documentation about the AUDIENCE setting\n # when you configured the identifier as a URL!\n \"AUDIENCE\": \"microsoft:identityserver:your-RelyingPartyTrust-identifier\",\n \"CA_BUNDLE\": \"/path/to/ca-bundle.pem\",\n \"CLAIM_MAPPING\": {\"first_name\": \"given_name\",\n \"last_name\": \"family_name\",\n \"email\": \"email\"},\n }\n\n # Configure django to redirect users to the right URL for login\n LOGIN_URL = \"django_auth_adfs:login\"\n LOGIN_REDIRECT_URL = \"/\"\n\n ########################\n # OPTIONAL SETTINGS\n ########################\n\n MIDDLEWARE = (\n ...\n # With this you can force a user to login without using\n # the LoginRequiredMixin on every view class\n #\n # You can specify URLs for which login is not enforced by\n # specifying them in the LOGIN_EXEMPT_URLS setting.\n 'django_auth_adfs.middleware.LoginRequiredMiddleware',\n )\n\nIn your project's ``urls.py`` add these paths:\n\n.. code-block:: python\n\n urlpatterns = [\n ...\n path('oauth2/', include('django_auth_adfs.urls')),\n ]\n\nThis will add these paths to Django:\n\n* ``/oauth2/login`` where users are redirected to, to initiate the login with ADFS.\n* ``/oauth2/login_no_sso`` where users are redirected to, to initiate the login with ADFS but forcing a login screen.\n* ``/oauth2/callback`` where ADFS redirects back to after login. So make sure you set the redirect URI on ADFS to this.\n* ``/oauth2/logout`` which logs out the user from both Django and ADFS.\n\nYou can use them like this in your django templates:\n\n.. code-block:: html\n\n Logout\n Login\n Login (no SSO)\n\nContributing\n------------\nContributions to the code are more then welcome.\nFor more details have a look at the ``CONTRIBUTING.rst`` file.\n\n\nChangelog\n=========\n\n`1.2.0`_ - 2019-03-01\n---------------------\n\n**Removed**\n\n* Django 1.8, 1.9 and 1.10 support. They are end of extended support and keeping support for them was becoming too\n complex.\n\n**Fixed**\n\n* The django templates were missing in the wheel\n\n`1.1.2`_ - 2018-12-11\n---------------------\n\n**Added**\n\n* Added views to selectively disable SSO for login links\n\n**Fixed**\n\n* Existing users with an empty password raised an exception\n\n`1.1.1`_ - 2018-12-07\n---------------------\n\n**Added**\n\n* Add a setting to force a login screen and disable SSO on ADFS.\n* Documentation about how to enable SSO for other browsers than IE & Edge.\n\n**Fixed**\n\n* Prevent username field from being overwritten by a claim mapping.\n* Prevent traceback upon logout when ADFS config is not yet loaded.\n* Fix fields in log messages being swapped.\n\n**Security**\n\n* Don't allow the audience claim to be ignored. Preventing access token reuse.\n* Set an unusable password on newly created user instead of leaving it empty.\n\n`1.0.0`_ - 2018-12-05\n---------------------\n\n**This version contains backwards incompatible changes. Make sure to read the entire release notes**\n\n**Added**\n\n* Windows 2016 (a.k.a. ADFS 4.0) Support\n* AzureAD support (check the setting ``TENANT_ID``)\n* Django Rest Framework support.\n* Add a ``RETRIES`` and ``TIMEOUT`` setting for requests towards the ADFS server.\n* Add the ``CLIENT_SECRET`` setting to support client secrets in the OAuth2 Flow.\n* Users are now redirected back to the page that triggered the login instead of the main page.\n* Groups a user belongs to can now be automatically created in Django (check the ``MIRROR_GROUPS`` setting)\n\n**Changed**\n\n* Django 2.1 support\n* All settings that can be determined automatically are now set automatically\n* When a claim mapped to a non-required field in the user model is missing,\n a warning is logged instead of an exception raised\n\n**Incompatible changes**\n\n* Because of the login and logout views that were added, the redirect URI back from ADFS should\n now point to ``/oauth2/callback``. Keeping it at ``/oauth2/login`` would have caused a potential redirect loop.\n\n**Deprecated**\n\n* these settings are now loaded from ADFS metadata automatically and have been deprecated:\n\n * ``AUTHORIZE_PATH``\n * ``LOGIN_REDIRECT_URL``\n * ``ISSUER``\n * ``REDIR_URI``\n * ``SIGNING_CERT``\n * ``TOKEN_PATH``\n\n\n`0.2.1`_ - 2017-10-20\n---------------------\n\n* Django 2.0 support and tests.\n\n`0.2.0`_ - 2017-09-14\n---------------------\n\n* Fixed a bug were authentication failed when the last ADFS signing key was not the one that signed the JWT token.\n* Django 1.11 support and tests.\n* Proper handling the absence of 'code' query parameter after ADFS redirect.\n* Added ADFS configuration guide to docs.\n* Allow boolean user model fields to be set based on claims.\n* The ``namespace`` argument for ``include()`` is not needed anymore on Django >=1.9.\n* Fixed some Django 2.0 deprecation warnings, improving future django support.\n\n`0.1.2`_ - 2017-03-11\n---------------------\n\n* Support for django 1.10 new style middleware using the ``MIDDLEWARE`` setting.\n\n`0.1.1`_ - 2016-12-13\n---------------------\n\n* Numerous typos fixed in code and documentation.\n* Proper handling of class variables to allow inheriting from the class ``AdfsBackend``.\n\n`0.1.0`_ - 2016-12-11\n---------------------\n\n* By default, the ADFS signing certificate is loaded from the ``FederationMetadata.xml`` file every 24 hours.\n Allowing to automatically follow certificate updates when the ADFS settings for ``AutoCertificateRollover``\n is set to ``True`` (the default).\n* Group assignment optimisation. Users are not removed and added to all groups anymore. Instead only the\n groups that need to be removed or added are handled.\n\n**Backwards incompatible changes**\n\n* The redundant ``ADFS_`` prefix was removed from the configuration variables.\n* The ``REQUIRE_LOGIN_EXEMPT_URLS`` variable was renamed to ``LOGIN_EXEMPT_URLS``\n\n`0.0.5`_ - 2016-12-10\n---------------------\n\n* User update code in authentication backend split into separate functions.\n\n`0.0.4`_ - 2016-03-14\n---------------------\n\n* Made the absence of the group claim non-fatal to allow users without a group.\n\n`0.0.3`_ - 2016-02-21\n---------------------\n\n* ADFS_REDIR_URI is now a required setting\n* Now supports Python 2.7, 3.4 and 3.5\n* Now supports Django 1.7, 1.8 and 1.9\n* Added debug logging to aid in troubleshooting\n* Added unit tests\n* Lot's of code cleanup\n\n`0.0.2`_ - 2016-02-11\n---------------------\n\n* Fixed a possible issue with the cryptography package when used with apache + mod_wsgi.\n* Added a optional context processor to make the ADFS authentication URL available as a template variable (ADFS_AUTH_URL).\n* Added a optional middleware class to be able force an anonymous user to authenticate.\n\n0.0.1 - 2016-02-09\n------------------\n\n* Initial release\n\n.. _1.2.0: https://github.com/jobec/django-auth-adfs/compare/1.1.2...1.2.0\n.. _1.1.2: https://github.com/jobec/django-auth-adfs/compare/1.1.1...1.1.2\n.. _1.1.1: https://github.com/jobec/django-auth-adfs/compare/1.0.0...1.1.1\n.. _1.0.0: https://github.com/jobec/django-auth-adfs/compare/0.2.1...1.0.0\n.. _0.2.1: https://github.com/jobec/django-auth-adfs/compare/0.2.0...0.2.1\n.. _0.2.0: https://github.com/jobec/django-auth-adfs/compare/0.1.2...0.2.0\n.. _0.1.2: https://github.com/jobec/django-auth-adfs/compare/0.1.1...0.1.2\n.. _0.1.1: https://github.com/jobec/django-auth-adfs/compare/0.1.0...0.1.1\n.. _0.1.0: https://github.com/jobec/django-auth-adfs/compare/0.0.5...0.1.0\n.. _0.0.5: https://github.com/jobec/django-auth-adfs/compare/0.0.4...0.0.5\n.. _0.0.4: https://github.com/jobec/django-auth-adfs/compare/0.0.3...0.0.4\n.. _0.0.3: https://github.com/jobec/django-auth-adfs/compare/0.0.2...0.0.3\n.. _0.0.2: https://github.com/jobec/django-auth-adfs/compare/0.0.1...0.0.2\n\n\n",
"description_content_type": "",
"docs_url": null,
"download_url": "https://pypi.python.org/pypi/django-auth-adfs",
"downloads": {
"last_day": -1,
"last_month": -1,
"last_week": -1
},
"home_page": "https://github.com/jobec/django-auth-adfs",
"keywords": "django authentication adfs oauth2",
"license": "BSD",
"maintainer": "",
"maintainer_email": "",
"name": "django-auth-adfs",
"package_url": "https://pypi.org/project/django-auth-adfs/",
"platform": "",
"project_url": "https://pypi.org/project/django-auth-adfs/",
"project_urls": {
"Download": "https://pypi.python.org/pypi/django-auth-adfs",
"Homepage": "https://github.com/jobec/django-auth-adfs"
},
"release_url": "https://pypi.org/project/django-auth-adfs/1.2.0/",
"requires_dist": [
"pyjwt (>=1.0.1)",
"cryptography (>=1.7)",
"django (>=1.11)",
"requests"
],
"requires_python": "",
"summary": "A Django authentication backend for Microsoft ADFS and AzureAD",
"version": "1.2.0"
},
"last_serial": 4888228,
"releases": {
"0.0.1": [
{
"comment_text": "",
"digests": {
"md5": "eec48189ec6b00e36e3e3a1d736a149f",
"sha256": "e13a09f7db836e6d838201c86dd00f1c641dbd1e5815c25e9dcf5672277ea650"
},
"downloads": -1,
"filename": "django_auth_adfs-0.0.1-py3-none-any.whl",
"has_sig": false,
"md5_digest": "eec48189ec6b00e36e3e3a1d736a149f",
"packagetype": "bdist_wheel",
"python_version": "3.4",
"requires_python": null,
"size": 8381,
"upload_time": "2016-02-10T08:31:58",
"url": "https://files.pythonhosted.org/packages/fa/b8/563522bf4dc8ce4dd3c452b75656628451f0540876a4111c304e82ac4071/django_auth_adfs-0.0.1-py3-none-any.whl"
},
{
"comment_text": "",
"digests": {
"md5": "0852a9f18d97f58e25c2bbfa846f8c07",
"sha256": "18ed0364b3f596fca6b9d9427223a05416b8a3a21387d3e841ae2089696bce6c"
},
"downloads": -1,
"filename": "django-auth-adfs-0.0.1.tar.gz",
"has_sig": false,
"md5_digest": "0852a9f18d97f58e25c2bbfa846f8c07",
"packagetype": "sdist",
"python_version": "source",
"requires_python": null,
"size": 14210,
"upload_time": "2016-02-10T08:32:10",
"url": "https://files.pythonhosted.org/packages/31/e6/8a5cda5ea84287027db443e4bbb7112f2e9d75f0f09c34af538a9e4e6b6b/django-auth-adfs-0.0.1.tar.gz"
}
],
"0.0.2": [
{
"comment_text": "",
"digests": {
"md5": "de532e7a20e6e9acd29e3a8b6c981f3d",
"sha256": "c858825ea3ed7f97127c65b78946ecae9731fd91e9982e4a6fc7c7c66a9b5053"
},
"downloads": -1,
"filename": "django_auth_adfs-0.0.2-py3-none-any.whl",
"has_sig": false,
"md5_digest": "de532e7a20e6e9acd29e3a8b6c981f3d",
"packagetype": "bdist_wheel",
"python_version": "3.4",
"requires_python": null,
"size": 11788,
"upload_time": "2016-02-11T12:46:11",
"url": "https://files.pythonhosted.org/packages/a5/88/defd1f1d02e30092d83e9bbb36b9ae655dd6c8bb82c2bd207799ad8ab7d4/django_auth_adfs-0.0.2-py3-none-any.whl"
},
{
"comment_text": "",
"digests": {
"md5": "77ec20cd66a36f428470e2ac598f0409",
"sha256": "f10ee1b37a88db3f2dace9f48563f7af88398d2e60af99f4cdda61a92e72900b"
},
"downloads": -1,
"filename": "django-auth-adfs-0.0.2.tar.gz",
"has_sig": false,
"md5_digest": "77ec20cd66a36f428470e2ac598f0409",
"packagetype": "sdist",
"python_version": "source",
"requires_python": null,
"size": 18251,
"upload_time": "2016-02-11T12:46:28",
"url": "https://files.pythonhosted.org/packages/01/28/07ade5509f128f4104c6c2821374a56d0c4ea99f961d17938dc7d12defa3/django-auth-adfs-0.0.2.tar.gz"
}
],
"0.0.3": [
{
"comment_text": "",
"digests": {
"md5": "e60f7c9e8983fa5c07b0a9bc03d640ab",
"sha256": "6d58e19263d3ecdf6953318f746a2272e7077ad94205c781338a89eb7dbbd653"
},
"downloads": -1,
"filename": "django_auth_adfs-0.0.3-py2.py3-none-any.whl",
"has_sig": false,
"md5_digest": "e60f7c9e8983fa5c07b0a9bc03d640ab",
"packagetype": "bdist_wheel",
"python_version": "3.4",
"requires_python": null,
"size": 21411,
"upload_time": "2016-02-21T20:15:46",
"url": "https://files.pythonhosted.org/packages/a7/cd/b7e22f8f6a353b5d9bafb0179e97d538f5a63e1ef952d55bc14b367ac552/django_auth_adfs-0.0.3-py2.py3-none-any.whl"
},
{
"comment_text": "",
"digests": {
"md5": "5c410ae43d934321162248f30d6a355e",
"sha256": "b961d75722f55e4e1676bfc28994b56cfecf0ef63842a8545d0ba14d50d8e8c4"
},
"downloads": -1,
"filename": "django-auth-adfs-0.0.3.tar.gz",
"has_sig": false,
"md5_digest": "5c410ae43d934321162248f30d6a355e",
"packagetype": "sdist",
"python_version": "source",
"requires_python": null,
"size": 26450,
"upload_time": "2016-02-21T19:05:29",
"url": "https://files.pythonhosted.org/packages/6e/de/bd7e84bf7acb123d29ad708e16029e161a8b9758da068712584b2d768e96/django-auth-adfs-0.0.3.tar.gz"
}
],
"0.0.4": [
{
"comment_text": "",
"digests": {
"md5": "3ba1e1cb3a358a4b799ae45cb0a65f96",
"sha256": "7d8bdac97110b0611a2e2586c2caf8bb2c669c76c21cf2a977d73ae01aec3ca4"
},
"downloads": -1,
"filename": "django_auth_adfs-0.0.4-py3-none-any.whl",
"has_sig": false,
"md5_digest": "3ba1e1cb3a358a4b799ae45cb0a65f96",
"packagetype": "bdist_wheel",
"python_version": "3.4",
"requires_python": null,
"size": 21576,
"upload_time": "2016-03-14T10:56:17",
"url": "https://files.pythonhosted.org/packages/61/8a/8fef13d96164b1ec6806cba2e3da7c3c71cd080233ddb475f19d33c32437/django_auth_adfs-0.0.4-py3-none-any.whl"
},
{
"comment_text": "",
"digests": {
"md5": "8d21c02345a6470cfae16a21cd6a65da",
"sha256": "aca3434fc0b16944cbeaaa19b591fbc2bd6c74e2f79b3dc1180d12b02b3eecd2"
},
"downloads": -1,
"filename": "django-auth-adfs-0.0.4.tar.gz",
"has_sig": false,
"md5_digest": "8d21c02345a6470cfae16a21cd6a65da",
"packagetype": "sdist",
"python_version": "source",
"requires_python": null,
"size": 26765,
"upload_time": "2016-03-14T10:56:43",
"url": "https://files.pythonhosted.org/packages/5d/34/18d4b4efdbf0fbd00bccc982f0bb08621d56b1fe8fe962ac0fea726409e2/django-auth-adfs-0.0.4.tar.gz"
}
],
"0.0.5": [
{
"comment_text": "",
"digests": {
"md5": "3d37df0e45f92b9ef997516d269dcc9c",
"sha256": "e7e18afdf1e14498f9fe69c663c0f98d5b7bf20565413aa962bcf0ac2b940ad7"
},
"downloads": -1,
"filename": "django_auth_adfs-0.0.5-py3-none-any.whl",
"has_sig": false,
"md5_digest": "3d37df0e45f92b9ef997516d269dcc9c",
"packagetype": "bdist_wheel",
"python_version": "py3",
"requires_python": null,
"size": 21764,
"upload_time": "2016-12-10T17:00:59",
"url": "https://files.pythonhosted.org/packages/60/ae/9a7fe9108045be91f9a670651be28e67571206da2b51bc8c749e9de193f5/django_auth_adfs-0.0.5-py3-none-any.whl"
},
{
"comment_text": "",
"digests": {
"md5": "a296c5319acb66edf7c3275441f1e928",
"sha256": "57f0fc39f0ea0e693e742c8f2501ed44619f20c635ed994e2998ec11c7fdae9e"
},
"downloads": -1,
"filename": "django-auth-adfs-0.0.5.tar.gz",
"has_sig": false,
"md5_digest": "a296c5319acb66edf7c3275441f1e928",
"packagetype": "sdist",
"python_version": "source",
"requires_python": null,
"size": 26711,
"upload_time": "2016-12-10T17:01:02",
"url": "https://files.pythonhosted.org/packages/da/70/90b41f0d902b7fc6ce8188050f94c959cccc8a9e1c9db1260e279e3dda12/django-auth-adfs-0.0.5.tar.gz"
}
],
"0.1.0": [
{
"comment_text": "",
"digests": {
"md5": "12633a7cd7c078bf58c56b892ecdecd0",
"sha256": "ab43f45db496e19c5cd08b79ae58c058c31b364522c8d3883e89aa4e1777a6a5"
},
"downloads": -1,
"filename": "django_auth_adfs-0.1.0-py3-none-any.whl",
"has_sig": false,
"md5_digest": "12633a7cd7c078bf58c56b892ecdecd0",
"packagetype": "bdist_wheel",
"python_version": "py3",
"requires_python": null,
"size": 25550,
"upload_time": "2016-12-11T18:41:15",
"url": "https://files.pythonhosted.org/packages/e5/c4/54d5a473f97a8cd8d2524f2c7039c53c8526acafa41dd7708ef9b73073cb/django_auth_adfs-0.1.0-py3-none-any.whl"
},
{
"comment_text": "",
"digests": {
"md5": "79806827a6c85dc9075bc0bec77bde0f",
"sha256": "fb6531ac57005f4c1a6e19414f9c1c253aaa929d4af57c689624ebbd87645825"
},
"downloads": -1,
"filename": "django-auth-adfs-0.1.0.tar.gz",
"has_sig": false,
"md5_digest": "79806827a6c85dc9075bc0bec77bde0f",
"packagetype": "sdist",
"python_version": "source",
"requires_python": null,
"size": 46619,
"upload_time": "2016-12-12T12:20:52",
"url": "https://files.pythonhosted.org/packages/13/87/f690846137f12abfbf28fc8ac6ca285e2c7ffe24f6447da8b73223cbd4f5/django-auth-adfs-0.1.0.tar.gz"
}
],
"0.1.1": [
{
"comment_text": "",
"digests": {
"md5": "59153080152fc8fe26cc489a975e38b6",
"sha256": "3857313fb5c98f44744389b9388d34ba35e31a82fd9d17d663f222fb570111d2"
},
"downloads": -1,
"filename": "django_auth_adfs-0.1.1-py3-none-any.whl",
"has_sig": false,
"md5_digest": "59153080152fc8fe26cc489a975e38b6",
"packagetype": "bdist_wheel",
"python_version": "3.4",
"requires_python": null,
"size": 25718,
"upload_time": "2016-12-13T10:32:48",
"url": "https://files.pythonhosted.org/packages/86/a3/c76a02513ba19cb4ed5fdcde5268efb93f86917d1d120de61da5623e689f/django_auth_adfs-0.1.1-py3-none-any.whl"
},
{
"comment_text": "",
"digests": {
"md5": "32f1d961685e9644aa3fcfe0fd68ce67",
"sha256": "b4398d59c898c7a6c81f0407e06404b9c54091aca64ae66f5c05abdf5aeb0242"
},
"downloads": -1,
"filename": "django-auth-adfs-0.1.1.tar.gz",
"has_sig": false,
"md5_digest": "32f1d961685e9644aa3fcfe0fd68ce67",
"packagetype": "sdist",
"python_version": "source",
"requires_python": null,
"size": 46838,
"upload_time": "2016-12-13T10:32:46",
"url": "https://files.pythonhosted.org/packages/5e/78/dc4b5d73566d17fda507acb8b995996730709ca7877542b07f6ce5144602/django-auth-adfs-0.1.1.tar.gz"
}
],
"0.1.2": [
{
"comment_text": "",
"digests": {
"md5": "c1a604bb7c44ba4989a2743f7790f468",
"sha256": "e7dcd1cf54b6edb99ea4d92b530c2d9aaa4ea315e05e3f089ee7897e0bea7bbb"
},
"downloads": -1,
"filename": "django-auth-adfs-0.1.2.tar.gz",
"has_sig": false,
"md5_digest": "c1a604bb7c44ba4989a2743f7790f468",
"packagetype": "sdist",
"python_version": "source",
"requires_python": null,
"size": 47253,
"upload_time": "2017-03-11T20:21:24",
"url": "https://files.pythonhosted.org/packages/ae/83/a229d98532ae44ec34b55bdd2df3c3d991b879f0588741d65a10689c01e3/django-auth-adfs-0.1.2.tar.gz"
}
],
"0.2.0": [
{
"comment_text": "",
"digests": {
"md5": "e40e4b31748d308a17b560cff01c479c",
"sha256": "7a10085dc4fbed705bd642106017879157515f1cc4d25fd3ce324f442abcc78a"
},
"downloads": -1,
"filename": "django_auth_adfs-0.2.0-py2.py3-none-any.whl",
"has_sig": false,
"md5_digest": "e40e4b31748d308a17b560cff01c479c",
"packagetype": "bdist_wheel",
"python_version": "py2.py3",
"requires_python": null,
"size": 27053,
"upload_time": "2017-09-14T06:30:13",
"url": "https://files.pythonhosted.org/packages/55/6e/07218641b38a87e65b4da4edf0dbecb290d21541883bf410b73f7a2871b4/django_auth_adfs-0.2.0-py2.py3-none-any.whl"
},
{
"comment_text": "",
"digests": {
"md5": "74742d2f76f0466097d6837816a90f75",
"sha256": "fb41ffe3605b4ce7223809cf2ee8e9053038c476b84da2131f3399ad176bc6b0"
},
"downloads": -1,
"filename": "django-auth-adfs-0.2.0.tar.gz",
"has_sig": false,
"md5_digest": "74742d2f76f0466097d6837816a90f75",
"packagetype": "sdist",
"python_version": "source",
"requires_python": null,
"size": 412627,
"upload_time": "2017-09-14T06:28:15",
"url": "https://files.pythonhosted.org/packages/76/68/13f99ac02226a9e17700257c49b5be1d02abfd4b1e6820d4c4946910ee53/django-auth-adfs-0.2.0.tar.gz"
}
],
"0.2.1": [
{
"comment_text": "",
"digests": {
"md5": "3ec8e068d89162e5f1ecd72958bb43fc",
"sha256": "98bcc39bce486794469c4f29b08cc5ed797640b2ae59e3a933a55a4b916108ea"
},
"downloads": -1,
"filename": "django_auth_adfs-0.2.1-py2.py3-none-any.whl",
"has_sig": false,
"md5_digest": "3ec8e068d89162e5f1ecd72958bb43fc",
"packagetype": "bdist_wheel",
"python_version": "py2.py3",
"requires_python": null,
"size": 26847,
"upload_time": "2017-10-20T20:47:45",
"url": "https://files.pythonhosted.org/packages/3d/73/9fe8ad034999624b33241dae32eb5be53da6d38a351bc416ecf357a20dce/django_auth_adfs-0.2.1-py2.py3-none-any.whl"
},
{
"comment_text": "",
"digests": {
"md5": "ba57f74d0012204cbca6a7baefd56c75",
"sha256": "5fb31afc48eca4880a9dca77e3031eff824a4bce15b49c3b4a17393a31cf3d49"
},
"downloads": -1,
"filename": "django-auth-adfs-0.2.1.tar.gz",
"has_sig": false,
"md5_digest": "ba57f74d0012204cbca6a7baefd56c75",
"packagetype": "sdist",
"python_version": "source",
"requires_python": null,
"size": 413137,
"upload_time": "2017-10-20T20:46:04",
"url": "https://files.pythonhosted.org/packages/3c/c6/2e77cd5823376c3f81c4e6f385e8fc031557036532f9941c647ac07e033f/django-auth-adfs-0.2.1.tar.gz"
}
],
"1.0.0": [
{
"comment_text": "",
"digests": {
"md5": "7d3c4f318ca01ece95dab3907fcc6c69",
"sha256": "e543c1d1f8084af762509afc0d31a61126e4002a42d43cba3f50fe7010f82c71"
},
"downloads": -1,
"filename": "django_auth_adfs-1.0.0-py2.py3-none-any.whl",
"has_sig": false,
"md5_digest": "7d3c4f318ca01ece95dab3907fcc6c69",
"packagetype": "bdist_wheel",
"python_version": "py2.py3",
"requires_python": null,
"size": 22852,
"upload_time": "2018-12-05T20:47:50",
"url": "https://files.pythonhosted.org/packages/a3/b4/ecbdc7d657a113ca2e5315b07d2b3e88bdf9be89f4674c5321d2d066ab22/django_auth_adfs-1.0.0-py2.py3-none-any.whl"
},
{
"comment_text": "",
"digests": {
"md5": "9c5ced563ebc7467bb31556e9b4ff28c",
"sha256": "2d0c04c66c51769f257cb271c103a2deab38b8fb2fbb4cd760253adbd6fd6b3a"
},
"downloads": -1,
"filename": "django-auth-adfs-1.0.0.tar.gz",
"has_sig": false,
"md5_digest": "9c5ced563ebc7467bb31556e9b4ff28c",
"packagetype": "sdist",
"python_version": "source",
"requires_python": null,
"size": 1102615,
"upload_time": "2018-12-05T20:47:59",
"url": "https://files.pythonhosted.org/packages/0f/0c/36e7e45e86f5dc4f58b46caa47a584355092bb4721f9fcce5409196261db/django-auth-adfs-1.0.0.tar.gz"
}
],
"1.0.0rc1": [
{
"comment_text": "",
"digests": {
"md5": "5bfd9db33c04c264dc33e982c02e78c8",
"sha256": "3e981a11794851ca75c1fc1ab639a4d97d9b131cee2b873600d5b68ac0c33b92"
},
"downloads": -1,
"filename": "django_auth_adfs-1.0.0rc1-py2.py3-none-any.whl",
"has_sig": false,
"md5_digest": "5bfd9db33c04c264dc33e982c02e78c8",
"packagetype": "bdist_wheel",
"python_version": "py2.py3",
"requires_python": null,
"size": 22797,
"upload_time": "2018-06-15T20:26:10",
"url": "https://files.pythonhosted.org/packages/d5/d9/760eeb4b2304096ae893185dc66355008d19a4cbbcaf588b8d6406b8a32f/django_auth_adfs-1.0.0rc1-py2.py3-none-any.whl"
},
{
"comment_text": "",
"digests": {
"md5": "eea271c9c28727db6ff0e1b57b3d9038",
"sha256": "15961566b528d37dcf65d2af0f4774f78dacc027550640cdcabb51e70efbe616"
},
"downloads": -1,
"filename": "django-auth-adfs-1.0.0rc1.tar.gz",
"has_sig": false,
"md5_digest": "eea271c9c28727db6ff0e1b57b3d9038",
"packagetype": "sdist",
"python_version": "source",
"requires_python": null,
"size": 424906,
"upload_time": "2018-06-15T20:26:29",
"url": "https://files.pythonhosted.org/packages/f2/7f/370648d6569267bebf7ae371ee65258f58cde8fb669d1a7b1c90b322e250/django-auth-adfs-1.0.0rc1.tar.gz"
}
],
"1.0.0rc2": [
{
"comment_text": "",
"digests": {
"md5": "0e32dbc51e60d9be390118406f789a2a",
"sha256": "37b9aa6c9e34cca3250f4d86c6a9b0f4f532a324e7a10b9df8c74af16f9aca0b"
},
"downloads": -1,
"filename": "django_auth_adfs-1.0.0rc2-py2.py3-none-any.whl",
"has_sig": false,
"md5_digest": "0e32dbc51e60d9be390118406f789a2a",
"packagetype": "bdist_wheel",
"python_version": "py2.py3",
"requires_python": null,
"size": 18957,
"upload_time": "2018-09-20T19:44:41",
"url": "https://files.pythonhosted.org/packages/3c/b6/dbeb5ee4b3c324d0f1d8a7f35753b7ca9f33ca602d73c78a786c70d227fe/django_auth_adfs-1.0.0rc2-py2.py3-none-any.whl"
},
{
"comment_text": "",
"digests": {
"md5": "f5b5795f0230f15758815d1684e40820",
"sha256": "5c112a6bdf35aa21cd6c388bd53c30dce829c219f0e131a16044a2eadbc58228"
},
"downloads": -1,
"filename": "django-auth-adfs-1.0.0rc2.tar.gz",
"has_sig": false,
"md5_digest": "f5b5795f0230f15758815d1684e40820",
"packagetype": "sdist",
"python_version": "source",
"requires_python": null,
"size": 1095127,
"upload_time": "2018-09-20T19:45:05",
"url": "https://files.pythonhosted.org/packages/52/2d/e6bb1acf6760642cd7e709c340ea53c064b3ee7f3d3f3ce4adc7b2a302b9/django-auth-adfs-1.0.0rc2.tar.gz"
}
],
"1.0.0rc3": [
{
"comment_text": "",
"digests": {
"md5": "0b96240972597476fb78c77510cb735f",
"sha256": "e5c857ae1b6a29e5c3bc8018e22cf61fc10b722529caf214cf141f57c4ac5ddc"
},
"downloads": -1,
"filename": "django_auth_adfs-1.0.0rc3-py2.py3-none-any.whl",
"has_sig": false,
"md5_digest": "0b96240972597476fb78c77510cb735f",
"packagetype": "bdist_wheel",
"python_version": "py2.py3",
"requires_python": null,
"size": 23299,
"upload_time": "2018-10-19T19:47:18",
"url": "https://files.pythonhosted.org/packages/56/0b/5ee3169b47a972d7a3f6d43809f375fb0c3c131985a97bf48cd01508627c/django_auth_adfs-1.0.0rc3-py2.py3-none-any.whl"
},
{
"comment_text": "",
"digests": {
"md5": "af1e52353857625c139cf6517c1e4c2e",
"sha256": "29d7ed1b48b5a6afb8e66abe855c4ddb382a645249f7cc93906fba754597bcd3"
},
"downloads": -1,
"filename": "django-auth-adfs-1.0.0rc3.tar.gz",
"has_sig": false,
"md5_digest": "af1e52353857625c139cf6517c1e4c2e",
"packagetype": "sdist",
"python_version": "source",
"requires_python": null,
"size": 1095372,
"upload_time": "2018-10-19T19:47:56",
"url": "https://files.pythonhosted.org/packages/9f/e5/fc1999410e479cc4deb73b704f7d1c6d26eff041cd68da96424b4b1c324e/django-auth-adfs-1.0.0rc3.tar.gz"
}
],
"1.1.0": [
{
"comment_text": "",
"digests": {
"md5": "df1b7cbff389aee56b7dd4b8f26b7051",
"sha256": "8ad956db2dddfd0dcfbc1fadc3dbc779641a05064ce0ec131bdc6d3c92fdfed3"
},
"downloads": -1,
"filename": "django_auth_adfs-1.1.0-py2.py3-none-any.whl",
"has_sig": false,
"md5_digest": "df1b7cbff389aee56b7dd4b8f26b7051",
"packagetype": "bdist_wheel",
"python_version": "py2.py3",
"requires_python": null,
"size": 23894,
"upload_time": "2018-12-07T21:42:00",
"url": "https://files.pythonhosted.org/packages/c2/e0/62851e9b6caedbdb0fa0b54a89cf2324ec15e4fb2e62eebbfdb700b9ac70/django_auth_adfs-1.1.0-py2.py3-none-any.whl"
},
{
"comment_text": "",
"digests": {
"md5": "924259615306374115e30d5d18c251ae",
"sha256": "fd237d11fdfc6ff34efab6e41485a4c0f1ce2671012d5b9a33ccdc0cd66c2d62"
},
"downloads": -1,
"filename": "django-auth-adfs-1.1.0.tar.gz",
"has_sig": false,
"md5_digest": "924259615306374115e30d5d18c251ae",
"packagetype": "sdist",
"python_version": "source",
"requires_python": null,
"size": 1104368,
"upload_time": "2018-12-07T21:42:07",
"url": "https://files.pythonhosted.org/packages/4f/80/a1ca5a67a12b131b502fe1ea5c689616879b5d7fa0942c80284eb5bf5d31/django-auth-adfs-1.1.0.tar.gz"
}
],
"1.1.1": [
{
"comment_text": "",
"digests": {
"md5": "e99bd5a21b983d13e6f77b92d1ae57dc",
"sha256": "a0eab8f72b81e79658945a15679654a7d541c2f0a4ab6ffa95ee2678a6713ada"
},
"downloads": -1,
"filename": "django_auth_adfs-1.1.1-py2.py3-none-any.whl",
"has_sig": false,
"md5_digest": "e99bd5a21b983d13e6f77b92d1ae57dc",
"packagetype": "bdist_wheel",
"python_version": "py2.py3",
"requires_python": null,
"size": 23905,
"upload_time": "2018-12-07T22:03:46",
"url": "https://files.pythonhosted.org/packages/91/75/ec59a0da142dbc273daf3023984e26cb93fe285d813cda7b5bb8414491e7/django_auth_adfs-1.1.1-py2.py3-none-any.whl"
},
{
"comment_text": "",
"digests": {
"md5": "ff20c7f1ace9007246f5bfb1175761c6",
"sha256": "e80bf322b829f558fecbee60e3ac1bf066680fccba13b62f8d19556cb9b33d02"
},
"downloads": -1,
"filename": "django-auth-adfs-1.1.1.tar.gz",
"has_sig": false,
"md5_digest": "ff20c7f1ace9007246f5bfb1175761c6",
"packagetype": "sdist",
"python_version": "source",
"requires_python": null,
"size": 1104384,
"upload_time": "2018-12-07T22:03:53",
"url": "https://files.pythonhosted.org/packages/3f/1e/fb3e65dc7bfdcd7e6cdfcbeb730d610c6b634568cb32e074afda024721ac/django-auth-adfs-1.1.1.tar.gz"
}
],
"1.1.2": [
{
"comment_text": "",
"digests": {
"md5": "7afab641faeea4f0791638fbc0ac3502",
"sha256": "922d706ba5b992efeff7029d36f83a0f4dea1b78942c0945dd13d9b8361f5303"
},
"downloads": -1,
"filename": "django_auth_adfs-1.1.2-py2.py3-none-any.whl",
"has_sig": false,
"md5_digest": "7afab641faeea4f0791638fbc0ac3502",
"packagetype": "bdist_wheel",
"python_version": "py2.py3",
"requires_python": null,
"size": 24228,
"upload_time": "2018-12-11T09:20:00",
"url": "https://files.pythonhosted.org/packages/8b/95/878ec029cdbfb7ad0c49459ac7bc39ad69b01830a2586ca84d43b2af830b/django_auth_adfs-1.1.2-py2.py3-none-any.whl"
},
{
"comment_text": "",
"digests": {
"md5": "60cd30ae19d7bf039df8bedaf0d7bf5a",
"sha256": "ea59004f4e0b396a54e23d5095ebc5c894c8d44c01960f7a82e331b0aa66dcd5"
},
"downloads": -1,
"filename": "django-auth-adfs-1.1.2.tar.gz",
"has_sig": false,
"md5_digest": "60cd30ae19d7bf039df8bedaf0d7bf5a",
"packagetype": "sdist",
"python_version": "source",
"requires_python": null,
"size": 1104577,
"upload_time": "2018-12-11T09:20:04",
"url": "https://files.pythonhosted.org/packages/01/f9/e57b550e9aabc267aa389c3ce8113b5187a7568eba036fee584234b56ef0/django-auth-adfs-1.1.2.tar.gz"
}
],
"1.2.0": [
{
"comment_text": "",
"digests": {
"md5": "44df8447b000c45281466baad6d8336f",
"sha256": "f07d7ece72cbded2bd5adfad54791b527c3933b8ce846fbb571c531751ddae9a"
},
"downloads": -1,
"filename": "django_auth_adfs-1.2.0-py2.py3-none-any.whl",
"has_sig": false,
"md5_digest": "44df8447b000c45281466baad6d8336f",
"packagetype": "bdist_wheel",
"python_version": "py2.py3",
"requires_python": null,
"size": 31734,
"upload_time": "2019-03-02T12:30:30",
"url": "https://files.pythonhosted.org/packages/ac/38/6ec7f02e072c6aae731d29ec8d078721f906f5765d2f8163d33fd21e0c69/django_auth_adfs-1.2.0-py2.py3-none-any.whl"
},
{
"comment_text": "",
"digests": {
"md5": "449f0f9de0531c4f6e7ec642c347e397",
"sha256": "7960d8e9d8996196ae13ae29340c508a23b49698f53c49a64ff2ac54d4e58a5d"
},
"downloads": -1,
"filename": "django-auth-adfs-1.2.0.tar.gz",
"has_sig": false,
"md5_digest": "449f0f9de0531c4f6e7ec642c347e397",
"packagetype": "sdist",
"python_version": "source",
"requires_python": null,
"size": 1105885,
"upload_time": "2019-03-02T12:30:41",
"url": "https://files.pythonhosted.org/packages/a5/fa/aa22022ed8dc095ee9fa9a37e4b34608cbc40c1ae8579df24696fe5f992b/django-auth-adfs-1.2.0.tar.gz"
}
]
},
"urls": [
{
"comment_text": "",
"digests": {
"md5": "44df8447b000c45281466baad6d8336f",
"sha256": "f07d7ece72cbded2bd5adfad54791b527c3933b8ce846fbb571c531751ddae9a"
},
"downloads": -1,
"filename": "django_auth_adfs-1.2.0-py2.py3-none-any.whl",
"has_sig": false,
"md5_digest": "44df8447b000c45281466baad6d8336f",
"packagetype": "bdist_wheel",
"python_version": "py2.py3",
"requires_python": null,
"size": 31734,
"upload_time": "2019-03-02T12:30:30",
"url": "https://files.pythonhosted.org/packages/ac/38/6ec7f02e072c6aae731d29ec8d078721f906f5765d2f8163d33fd21e0c69/django_auth_adfs-1.2.0-py2.py3-none-any.whl"
},
{
"comment_text": "",
"digests": {
"md5": "449f0f9de0531c4f6e7ec642c347e397",
"sha256": "7960d8e9d8996196ae13ae29340c508a23b49698f53c49a64ff2ac54d4e58a5d"
},
"downloads": -1,
"filename": "django-auth-adfs-1.2.0.tar.gz",
"has_sig": false,
"md5_digest": "449f0f9de0531c4f6e7ec642c347e397",
"packagetype": "sdist",
"python_version": "source",
"requires_python": null,
"size": 1105885,
"upload_time": "2019-03-02T12:30:41",
"url": "https://files.pythonhosted.org/packages/a5/fa/aa22022ed8dc095ee9fa9a37e4b34608cbc40c1ae8579df24696fe5f992b/django-auth-adfs-1.2.0.tar.gz"
}
]
}