{ "info": { "author": "Brandon Ewing", "author_email": "brandon.ewing@imc.com", "bugtrack_url": null, "classifiers": [ "Development Status :: 4 - Beta", "Environment :: Web Environment", "Framework :: Django", "Framework :: Django :: 1.11", "Framework :: Django :: 2.0", "Framework :: Django :: 2.1", "Framework :: Django :: 2.2", "Intended Audience :: Developers", "License :: OSI Approved :: Apache Software License", "Operating System :: Unix", "Programming Language :: Python", "Programming Language :: Python :: 2", "Programming Language :: Python :: 2.7", "Programming Language :: Python :: 3", "Programming Language :: Python :: 3.5", "Programming Language :: Python :: 3.6", "Programming Language :: Python :: 3.7", "Topic :: Internet :: WWW/HTTP" ], "description": "=================\ndjango-gss-spngeo\n=================\n\nA Django application for adding Kerberos/GSS authentication to your existing backend\n\nThis Django application provides some ``View`` and ``Mixin`` classes along with a backend\n``Mixin`` class to extend your existing ``AuthenticationBackend`` with SPNEGO-based authentication.\n\nPrereqs\n-------\n* A working Kerberos KDC (MIT, Windows AD, Heimdall, whatever)\n* A SPN for your application server(s)\n* A method for mapping Kerberos Principals to User objects in your backend\n\nConfiguration\n-------------\nThe following settings must be present:\n\n* ``django_gss_spnego`` in ``settings.INSTALLED_APPS``\n* ``settings.KERBEROS_SPN`` may be set to ``SERVICENAME@HOSTNAME`` `ie` ``HTTP@django-server``.\n Setting it to \"\" means \"try all SPNs in the host keytab\"\n* Environment variables to control your KRB5 installation.\n See the `kerberos env`_ documentation for details.\n\nUsage\n-----\nMix ``django_gss_spnego.backends.SpnegoBackendMixin`` into your backend class(es) of choice.\nEnsure those backends can resolve a User object from a kerberos principal name.\n\n.. code-block:: python\n\n from django_auth_ldap.backend import LDAPBackend\n from django_gss_spnego.backends import SpnegoBackendMixin\n\n\n class MyBackendClass(SpnegoBackendMixin, LDAPBackend):\n def get_user_from_username(self, username):\n return self.populate_user(username)\n\nRegister aforementioned backend class in ``settings.AUTHENTICATION_BACKENDS``\n\nCreate a view somewhere on your site that uses ``SpnegoAuthMixin``, and add it to your URL router.\nIf using one of the provided CBV View classes, also include ``django_gss_spnego`` and\n``django.contrib.admin`` in your ``settings.INSTALLED_APPS`` for access to the spnego.html template.\n\n.. code-block:: python\n\n from django_gss_spnego.views import SpnegoView\n\n urls.append(r\"^auth/spnego$\", SpnegoView.as_view(), name=\"spnego\")\n\nAcquire a ticket, and point your favorite supported client at the endpoint\n\n.. code-block:: python\n\n import requests_gssapi\n import requests\n\n auth = requests_gssapi.HTTPSPNEGOAuth()\n sess = requests.session()\n sess.auth = auth\n sess.get(\"http://localhost/auth/spnego\")\n sess.get(\"http://localhost/page/that/requires/authorized_user\")\n\nAcknowledgements\n----------------\n* `Matt Magin (AzMoo)`_ for writing a `similar Middleware`_\n\n\nLicense\n-------\nApache 2.0 -- see the LICENSE file for more detail\n\n.. _Matt Magin (AzMoo): https://github.com/AzMoo\n.. _similar Middleware: https://github.com/AzMoo/django-auth-spnego\n.. _kerberos env: http://web.mit.edu/kerberos/www/krb5-1.16/doc/user/user_config/kerberos.html#kerberos-7", "description_content_type": "text/x-rst", "docs_url": null, "download_url": "", "downloads": { "last_day": -1, "last_month": -1, "last_week": -1 }, "home_page": "https://github.com/imc-trading/django-gss-spnego.git", "keywords": "", "license": "", "maintainer": "", "maintainer_email": "", "name": "django-gss-spnego", "package_url": "https://pypi.org/project/django-gss-spnego/", "platform": "", "project_url": "https://pypi.org/project/django-gss-spnego/", "project_urls": { "Homepage": "https://github.com/imc-trading/django-gss-spnego.git" }, "release_url": "https://pypi.org/project/django-gss-spnego/19.2.0.dev0/", "requires_dist": null, "requires_python": ">=2.7, !=3.0.*, !=3.1.*, !=3.2.*, !=3.3.*, !=3.4.*", "summary": "Django GSSAPI SPNEGO", "version": "19.2.0.dev0" }, "last_serial": 4843000, "releases": { "19.2.0.dev0": [ { "comment_text": "", "digests": { "md5": "0a3772e5737c26d9738428b9cd193939", "sha256": "e04bd5a2b540551f5fce48662a3ce3bd5ff1821d4ff21c46674d0c3467fccbb2" }, "downloads": -1, "filename": "django-gss-spnego-19.2.0.dev0.tar.gz", "has_sig": false, "md5_digest": "0a3772e5737c26d9738428b9cd193939", "packagetype": "sdist", "python_version": "source", "requires_python": ">=2.7, !=3.0.*, !=3.1.*, !=3.2.*, !=3.3.*, !=3.4.*", "size": 11573, "upload_time": "2019-02-19T23:26:07", "url": "https://files.pythonhosted.org/packages/29/10/8c1387f237ea59631392b5560f6c8de0ac8d47ead6b93a323411ce56e300/django-gss-spnego-19.2.0.dev0.tar.gz" } ] }, "urls": [ { "comment_text": "", "digests": { "md5": "0a3772e5737c26d9738428b9cd193939", "sha256": "e04bd5a2b540551f5fce48662a3ce3bd5ff1821d4ff21c46674d0c3467fccbb2" }, "downloads": -1, "filename": "django-gss-spnego-19.2.0.dev0.tar.gz", "has_sig": false, "md5_digest": "0a3772e5737c26d9738428b9cd193939", "packagetype": "sdist", "python_version": "source", "requires_python": ">=2.7, !=3.0.*, !=3.1.*, !=3.2.*, !=3.3.*, !=3.4.*", "size": 11573, "upload_time": "2019-02-19T23:26:07", "url": "https://files.pythonhosted.org/packages/29/10/8c1387f237ea59631392b5560f6c8de0ac8d47ead6b93a323411ce56e300/django-gss-spnego-19.2.0.dev0.tar.gz" } ] }