{"id":26481995,"url":"https://github.com/kiwitcms/python-social-auth-kerberos","last_synced_at":"2025-03-20T03:36:37.400Z","repository":{"id":51364476,"uuid":"126329546","full_name":"kiwitcms/python-social-auth-kerberos","owner":"kiwitcms","description":"Kerberos authentication backend for Python Social Auth","archived":false,"fork":false,"pushed_at":"2024-10-14T20:36:52.000Z","size":49,"stargazers_count":2,"open_issues_count":2,"forks_count":1,"subscribers_count":3,"default_branch":"master","last_synced_at":"2024-10-30T05:42:05.527Z","etag":null,"topics":[],"latest_commit_sha":null,"homepage":"https://kiwitcms.org","language":"Python","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":"gpl-2.0","status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/kiwitcms.png","metadata":{"files":{"readme":"README.rst","changelog":null,"contributing":null,"funding":null,"license":"LICENSE","code_of_conduct":null,"threat_model":null,"audit":null,"citation":null,"codeowners":null,"security":null,"support":null,"governance":null,"roadmap":null,"authors":null,"dei":null,"publiccode":null,"codemeta":null},"funding":{"custom":["https://kiwitcms.org/#subscriptions"],"github":["kiwitcms"],"patreon":null,"open_collective":"kiwitcms","ko_fi":null,"tidelift":"pypi/kiwitcms","community_bridge":null,"liberapay":null,"issuehunt":null,"otechie":null}},"created_at":"2018-03-22T12:08:36.000Z","updated_at":"2024-10-09T14:43:30.000Z","dependencies_parsed_at":"2022-09-26T21:41:22.253Z","dependency_job_id":"deda5b4f-e45e-40fa-b773-38b0191583fa","html_url":"https://github.com/kiwitcms/python-social-auth-kerberos","commit_stats":{"total_commits":77,"total_committers":5,"mean_commits":15.4,"dds":0.6623376623376623,"last_synced_commit":"76cc828ac97a97995d6479ae6445e5bb10eb7368"},"previous_names":[],"tags_count":5,"template":false,"template_full_name":null,"repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/kiwitcms%2Fpython-social-auth-kerberos","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/kiwitcms%2Fpython-social-auth-kerberos/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/kiwitcms%2Fpython-social-auth-kerberos/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/kiwitcms%2Fpython-social-auth-kerberos/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/kiwitcms","download_url":"https://codeload.github.com/kiwitcms/python-social-auth-kerberos/tar.gz/refs/heads/master","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":244545476,"owners_count":20469863,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2022-07-04T15:15:14.044Z","host_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub","repositories_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories","repository_names_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repository_names","owners_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners"}},"keywords":[],"created_at":"2025-03-20T03:36:36.736Z","updated_at":"2025-03-20T03:36:37.389Z","avatar_url":"https://github.com/kiwitcms.png","language":"Python","funding_links":["https://kiwitcms.org/#subscriptions","https://github.com/sponsors/kiwitcms","https://opencollective.com/kiwitcms","https://tidelift.com/funding/github/pypi/kiwitcms","https://tidelift.com/badges/package/pypi/social-auth-kerberos","https://tidelift.com/subscription/pkg/pypi-social-auth-kerberos?utm_source=pypi-social-auth-kerberos\u0026utm_medium=github\u0026utm_campaign=readme"],"categories":[],"sub_categories":[],"readme":"Kerberos authentication backend for Python Social Auth\n======================================================\n\n.. image:: https://github.com/kiwitcms/python-social-auth-kerberos/workflows/integration%20test/badge.svg\n    :target: https://github.com/kiwitcms/python-social-auth-kerberos/actions\n\n.. image:: https://coveralls.io/repos/github/kiwitcms/python-social-auth-kerberos/badge.svg?branch=master\n   :target: https://coveralls.io/github/kiwitcms/python-social-auth-kerberos?branch=master\n\n.. image:: https://tidelift.com/badges/package/pypi/social-auth-kerberos\n    :target: https://tidelift.com/subscription/pkg/pypi-social-auth-kerberos?utm_source=pypi-social-auth-kerberos\u0026utm_medium=github\u0026utm_campaign=readme\n    :alt: Tidelift\n\n.. image:: https://opencollective.com/kiwitcms/tiers/sponsor/badge.svg?label=sponsors\u0026color=brightgreen\n   :target: https://opencollective.com/kiwitcms#contributors\n   :alt: Become a sponsor\n\n.. image:: https://img.shields.io/twitter/follow/KiwiTCMS.svg\n    :target: https://twitter.com/KiwiTCMS\n    :alt: Kiwi TCMS on Twitter\n\n\nThis package provides Kerberos backend for Python Social Auth. It can be used to\nenable passwordless authentication inside a Django app or any other application\nthat supports Python Social Auth. This is a pure Python implementation which doesn't\ndepend on Apache ``mod_auth_kerb``.\n\nInstallation\n------------\n\nTo install::\n\n    pip install social-auth-kerberos\n\n**WARNING:** you will need gcc, Python and kerberos devel packages to\nbuild the ``gssapi`` dependency because it doesn't provide binary packages. Try\n``dnf install gcc krb5-devel python3-devel`` (Red Hat/Fedora) or\n``apt-get install gcc libkrb5-dev libpython3-dev`` (Debian/Ubuntu).\n\n\nConfiguration\n-------------\n\n`Configure Python Social Auth \u003chttps://python-social-auth.readthedocs.io/en/latest/configuration/index.html\u003e`_\nand then make sure you have the following settings enabled::\n\n\n    AUTHENTICATION_BACKENDS = [\n        'social_auth_kerberos.backend.KerberosAuth',\n        'django.contrib.auth.backends.ModelBackend',\n    ]\n\n    SOCIAL_AUTH_KRB5_KEYTAB = '/Kiwi/your-application.keytab'\n\n**IMPORTANT:**\n\nThe principal name for your Kiwi TCMS web service must be\n``HTTP/\u003cfqdn.example.com\u003e@REALM.EXAMPLE.COM`` where ``fqdn.example.com`` is\nthe domain name of the Kiwi TCMS server and ``REALM.EXAMPLE.COM`` is the\nKerberos realm that is used in your organization.\n\n``/Kiwi/your-application.keytab`` is the keytab file for your\nweb app principal! If you install this inside a Docker container make sure\nto ``chown 1001:root``!\n\n\nPipeline configuration\n----------------------\n\nPython Social Auth, and by extension this plugin, will create new user accounts\nupon first access of the web interface. In Kiwi TCMS users need to either be\nin the special group *Tester* or have sufficient permissions to add/edit/delete\nobjects.\n\nYou can automatically assign new accounts to the *Tester* group if\nyou append ``social_auth_kerberos.pipeline.initiate_defaults`` to the end\nof the ``SOCIAL_AUTH_PIPELINE`` setting.\n\n**WARNING:** this is not done for you automatically because some administrators\nmay want to employ different behaviour for newly registered accounts!\n\n\nKerberos configuration\n----------------------\n\nFor more information about Kerberos see:\n\n- `How to configure Firefox for kerberos \u003chttps://people.redhat.com/mikeb/negotiate/\u003e`_\n- `How to configure kerberos on Fedora \u003chttps://fedoraproject.org/wiki/Kerberos_KDC_Quickstart_Guide\u003e`_\n- `How to generate a keytab file\n  \u003chttps://docs.tibco.com/pub/spotfire_server/7.6.1/doc/html/tsas_admin_help/GUID-27726F6E-569C-4704-8433-5CCC0232EC79.html\u003e`_\n\nor check out ``tests/Dockerfile.kerberos``.\n\n\n\nChangelog\n---------\n\nv0.3.0 (17 Dec 2023)\n~~~~~~~~~~~~~~~~~~~~\n\n- Update gssapi from 1.6.12 to 1.8.3\n- Update social-auth-core from 4.0.1 to 4.5.1\n- Document the need to compile ``gssapi``. Fixes\n  `Issue #3 \u003chttps://github.com/kiwitcms/python-social-auth-kerberos/issues/3\u003e`_\n- Build and test with Python 3.11, Kiwi TCMS v12.7\n- Remove unused import\n\n\nv0.2.4 (24 Mar 2020)\n~~~~~~~~~~~~~~~~~~~~\n\n- Add ``social_auth_kerberos.pipeline`` with function to initialize\n  default permissions for newly created accounts. See section\n  *Pipeline configuration*\n- Update README with more information how to configure this plugin\n- Enable integration testing with Kerberos and coverage collection\n\n\nv0.2.3 (22 Mar 2020)\n~~~~~~~~~~~~~~~~~~~~\n\n- Keep a reference to current user before checking anything else.\n  Resolves a crash for clients which know that the server is\n  Kerberos enabled and directly send the Authorization header\n- Be more tolerant to authorization request headers which don't\n  match RFC-4459, section 4.2\n\n\nv0.2.2 (10 Nov 2019)\n~~~~~~~~~~~~~~~~~~~~\n\n- Pin license version to GPLv2 for Tidelift\n\n\nv0.2.1 (10 Dec 2018)\n~~~~~~~~~~~~~~~~~~~~\n\n- Initial release\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fkiwitcms%2Fpython-social-auth-kerberos","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fkiwitcms%2Fpython-social-auth-kerberos","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fkiwitcms%2Fpython-social-auth-kerberos/lists"}