{ "info": { "author": "Tobias Carlander", "author_email": "tobias.carlander@wfp.org", "bugtrack_url": null, "classifiers": [ "Development Status :: 4 - Beta", "Intended Audience :: Developers", "Programming Language :: Python :: 3", "Programming Language :: Python :: 3.4", "Programming Language :: Python :: 3.5", "Programming Language :: Python :: 3.6", "Programming Language :: Python :: 3 :: Only" ], "description": "django-crowd-sso |Build Status| |Coverage Status|\n=================================================\n\nSimple Atlassian CROWD authentication backend for Django with SSO\nsupport\n\nConfiguration:\n==============\n\nPut a CROWD configuration in your ``settings.py``:\n\n::\n\n CROWD = {\n 'url': 'http://your.crowd.url:port/crowd/rest', # your CROWD rest API url\n 'app_name': 'your-registered-crowd-application-name', # appname, registered with CROWD\n 'password': 'application-password', # correct password for provided appname\n 'superuser': False, # if True makes CROWD-imported users superusers\n 'staffuser': False, # if True makes CROWD-imported users staffuser\n 'validation':'10.11.40.34', # The ipaddress the Crowd server is responding to\n 'sso': False, # TRurn on SSO\n 'blocked_creation_domains': ['@example.org'], # Domains not allowed to be created in the local db\n 'crowd_group': 'CrowdUser', # Group that all imported users are placed in\n 'DTS_not_use_public_schema': False # If DTS is installed don't save users and groups in Public schema\n }\n\nAdd ``crowd.CrowdBackend`` in your ``AUTHENTICATION_BACKENDS`` settings\nlist. Put it first so that password are only kept in CROWD:\n\n::\n\n AUTHENTICATION_BACKENDS = (\n 'crowd.backends.CrowdBackend'\n 'django.contrib.auth.backends.ModelBackend',\n )\n\nAdd ``crowd.middleware.CrowdMiddleware`` to the Middleware\n\n::\n\n MIDDLEWARE_CLASSES = (\n ...\n 'crowd.middleware.CrowdMiddleware',\n ...\n )\n\nAUTHENTICATION\\_BACKENDS list to make sure you always start with crowd\nauthentication before falling over to a local account.\n\nsimple test: ``py.test``\n\nTox test: ``tox``\n\ntest currently does not cover the SSO\n\n**Release Notes**\n=================\n\n**Version 0.57**\n\nAdded support for Django Tenant Schema (django-tenant-schemas) Will\ncreate crowd\\_group in the public schema if DTS is installed, unless\nsetting NotPublicSchema == True\n\n**Version 0.56**\n\nAdd users \"Pulled\" from crowd to the group defined in crowd\\_group,\ndefault \"CrowdUser\" New setting 'disallowed\\_creation\\_domains':\n['@wfp.org']\n\n**New For version 0.52**\n\nAdded disallowed emails to the import first version hardcoded\n@example.org, will be a setting in future\n\nany email with @wfp.org but not in crowd will be in the disallowed list\n\nexample of use\n\n- User with email a@b.c is already user 'a' in the local db as a django\n created user\n- User with email b@c.c is already user 'b' in the local db as a\n imported user from Crowd\n- User with email c@a.b is no already user in the local db but exists\n in Crowd so it will be imported as user 'c'\n- User with email d@e.f is not in local db nor in Crowd\n- User with email e@example.org has a domain that is on the disallowed\n list\n\n::\n\n from crowd.backends import import_users_from_email_list\n\n emails = [\"a@b.c\", \"b@c.c\", \"c@a.b\", \"d@e.f\",\"e@example.org\"]\n added_or_found, not_found, not_alowed = import_users_from_email_list(emails)\n print(added_or_found)\n print(not_found)\n print(not_allowed)\n\nResulting printout:\n\n::\n\n ['a','b','c']\n\n ['d@e.f']\n\n ['e@example.org']\n\nCredits:\n========\n\nOriginally written for Django v1.3 by Konstantin J. Volkov\nkonstantin-j-volkov@yandex.ru at 12.07.2012\n\nRefactored, put together and tested with Django v1.4 by Grigoriy Beziuk\ngbezyuk@gmail.com at 27.08.2012\n\nRefactored, updated for Django 1.9 and added SSO and other features by\nTobias Carlander tobias.carlander@wfp.org at 2015/03/25\n\n.. |Build Status| image:: https://travis-ci.org/WFP-BKK/django-crowd-sso.svg?branch=master\n :target: https://travis-ci.org/WFP-BKK/django-crowd-sso\n.. |Coverage Status| image:: https://coveralls.io/repos/github/WFP-BKK/django-crowd-sso/badge.svg?branch=master\n :target: https://coveralls.io/github/WFP-BKK/django-crowd-sso?branch=master", "description_content_type": null, "docs_url": null, "download_url": "UNKNOWN", "downloads": { "last_day": -1, "last_month": -1, "last_week": -1 }, "home_page": "https://github.com/WFP-BKK/django-crowd-sso", "keywords": "django crowd users authentication sso", "license": "Creative Commons Attribution-Noncommercial-Share Alike license", "maintainer": null, "maintainer_email": null, "name": "django-crowd-sso", "package_url": "https://pypi.org/project/django-crowd-sso/", "platform": "UNKNOWN", "project_url": "https://pypi.org/project/django-crowd-sso/", "project_urls": { "Download": "UNKNOWN", "Homepage": "https://github.com/WFP-BKK/django-crowd-sso" }, "release_url": "https://pypi.org/project/django-crowd-sso/0.58/", "requires_dist": null, "requires_python": null, "summary": "Atlassian Crowd integration for Django with SSO", "version": "0.58" }, "last_serial": 2532677, "releases": { "0.58": [ { "comment_text": "", "digests": { "md5": "b51a7084493a2dbad098b58633435afc", "sha256": "ac32c8287a5fa10fcf8ed445fb9cadd94ec8a36d2ddc72250f5897d8de51e4ff" }, "downloads": -1, "filename": "django_crowd_sso-0.58-py3-none-any.whl", "has_sig": false, "md5_digest": "b51a7084493a2dbad098b58633435afc", "packagetype": "bdist_wheel", "python_version": "py3", "requires_python": null, "size": 10505, "upload_time": "2016-12-21T13:37:59", "url": "https://files.pythonhosted.org/packages/d0/71/6eb6aaa0cfbe6a6af00f9f68ec2f3c058e0d6cb69ab866b531e8f6c4f304/django_crowd_sso-0.58-py3-none-any.whl" }, { "comment_text": "", "digests": { "md5": "831200b69957b91c4864b1b24b5ca3f7", "sha256": "c7dfc666db1189f2cfa1a9f6cd3999d7ea457c791b8b12e0ba30244e230a8810" }, "downloads": -1, "filename": "django-crowd-sso-0.58.tar.gz", "has_sig": false, "md5_digest": "831200b69957b91c4864b1b24b5ca3f7", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 7457, "upload_time": "2016-12-21T13:38:02", "url": "https://files.pythonhosted.org/packages/4c/45/faf0dfdcfec11a0e42b3863e78b238a3330683ce371e75397d5e70fab696/django-crowd-sso-0.58.tar.gz" } ] }, "urls": [ { "comment_text": "", "digests": { "md5": "b51a7084493a2dbad098b58633435afc", "sha256": "ac32c8287a5fa10fcf8ed445fb9cadd94ec8a36d2ddc72250f5897d8de51e4ff" }, "downloads": -1, "filename": "django_crowd_sso-0.58-py3-none-any.whl", "has_sig": false, "md5_digest": "b51a7084493a2dbad098b58633435afc", "packagetype": "bdist_wheel", "python_version": "py3", "requires_python": null, "size": 10505, "upload_time": "2016-12-21T13:37:59", "url": "https://files.pythonhosted.org/packages/d0/71/6eb6aaa0cfbe6a6af00f9f68ec2f3c058e0d6cb69ab866b531e8f6c4f304/django_crowd_sso-0.58-py3-none-any.whl" }, { "comment_text": "", "digests": { "md5": "831200b69957b91c4864b1b24b5ca3f7", "sha256": "c7dfc666db1189f2cfa1a9f6cd3999d7ea457c791b8b12e0ba30244e230a8810" }, "downloads": -1, "filename": "django-crowd-sso-0.58.tar.gz", "has_sig": false, "md5_digest": "831200b69957b91c4864b1b24b5ca3f7", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 7457, "upload_time": "2016-12-21T13:38:02", "url": "https://files.pythonhosted.org/packages/4c/45/faf0dfdcfec11a0e42b3863e78b238a3330683ce371e75397d5e70fab696/django-crowd-sso-0.58.tar.gz" } ] }