{ "info": { "author": "di-dip-unistra", "author_email": "di-dip@unistra.fr", "bugtrack_url": null, "classifiers": [ "Development Status :: 5 - Production/Stable", "Environment :: Console", "Intended Audience :: End Users/Desktop", "License :: OSI Approved :: BSD License", "Natural Language :: English", "Operating System :: OS Independent", "Programming Language :: Python", "Topic :: Internet :: WWW/HTTP :: Dynamic Content :: CGI Tools/Libraries", "Topic :: Utilities" ], "description": "# cas\n\n[![Code Health](https://landscape.io/github/unistra/django-cas/master/landscape.svg?style=flat)](https://landscape.io/github/unistra/django-cas/master)\n \nCAS client for Django. This is K-State's fork of the original, which lives at\nhttps://bitbucket.org/cpcc/django-cas/overview. This fork is actively maintaned and \nincludes several new features.\n\nCurrent version: 0.8.5\n\nhttps://github.com/kstateome/django-cas\n\n\n## Install\n\n\nSee the document at Bitbucket\n\nhttps://bitbucket.org/cpcc/django-cas/overview\n\n## Settings.py for CAS\n\nAdd the following to middleware if you want to use CAS::\n \n MIDDLEWARE_CLASSES = (\n 'cas.middleware.CASMiddleware',\n )\n \n\nAdd these to ``settings.py`` to use the CAS Backend::\n\n\n CAS_SERVER_URL = \"Your Cas Server\"\n CAS_LOGOUT_COMPLETELY = True\n\nTo disable CAS authentication for the entire django admin app, you should use the ``CAS_ADMIN_AUTH`` parameter::\n\n CAS_ADMIN_AUTH = False\n\n\nThe ``CAS_ADMIN_PREFIX`` is deprecated since version 1.1.4 and will be removed in 1.1.5 release.\n\n\n# Additional Features\n\nThis fork contains additional features not found in the original:\n* Proxied Hosts\n* CAS Response Callbacks\n* CAS Gateway\n* Proxy Tickets (From Edmund Crewe) \n\n## Proxied Hosts\n\nYou will need to setup middleware to handle the use of proxies.\n\nAdd a setting ``PROXY_DOMAIN`` of the domain you want the client to use. Then add\n\n MIDDLEWARE_CLASSES = (\n 'cas.middleware.ProxyMiddleware',\n )\n\nThis middleware needs to be added before the django ``common`` middleware.\n\n\n## CAS Response Callbacks\n\nTo store data from CAS, create a callback function that accepts the ElementTree object from the\nproxyValidate response. There can be multiple callbacks, and they can live anywhere. Define the \ncallback(s) in ``settings.py``:\n\n CAS_RESPONSE_CALLBACKS = (\n 'path.to.module.callbackfunction',\n 'anotherpath.to.module.callbackfunction2',\n )\n\nand create the functions in ``path/to/module.py``:\n\n def callbackfunction(tree):\n username = tree[0][0].text\n\n user, user_created = User.objects.get_or_create(username=username)\n profile, created = user.get_profile()\n\n profile.email = tree[0][1].text\n profile.position = tree[0][2].text\n profile.save()\n \n\n## CAS Gateway\n\nTo use the CAS Gateway feature, first enable it in settings. Trying to use it without explicitly\nenabling this setting will raise an ImproperlyConfigured:\n\n CAS_GATEWAY = True\n\nThen, add the ``gateway`` decorator to a view:\n\n from cas.decorators import gateway\n\n @gateway()\n def foo(request):\n #stuff\n return render(request, 'foo/bar.html')\n\n\n## Custom Forbidden Page\n\nTo show a custom forbidden page, set ``CAS_CUSTOM_FORBIDDEN`` to a ``path.to.some_view``. Otherwise,\na generic ``HttpResponseForbidden`` will be returned.\n\n\n## Proxy Tickets\n\nThis fork also includes Edmund Crewe's proxy ticket patch:\nhttp://code.google.com/r/edmundcrewe-proxypatch/source/browse/django-cas-proxy.patch\n", "description_content_type": null, "docs_url": null, "download_url": "", "downloads": { "last_day": -1, "last_month": -1, "last_week": -1 }, "home_page": "https://github.com/drinksober/django-cas/", "keywords": "django", "license": "MIT", "maintainer": "", "maintainer_email": "", "name": "hypers-cas", "package_url": "https://pypi.org/project/hypers-cas/", "platform": "", "project_url": "https://pypi.org/project/hypers-cas/", "project_urls": { "Homepage": "https://github.com/drinksober/django-cas/" }, "release_url": "https://pypi.org/project/hypers-cas/1.1.7/", "requires_dist": null, "requires_python": "", "summary": "Django Cas SSO Client (inherited from django-cas)", "version": "1.1.7" }, "last_serial": 2984405, "releases": { "1.1.7": [ { "comment_text": "", "digests": { "md5": "fae15c319584ee90efd75342a96632fa", "sha256": "d51ecc21fde54a0c67fc314fe53ca2663739f8250d18fc6dbe47c0a752af7e95" }, "downloads": -1, "filename": "hypers-cas-1.1.7.tar.gz", "has_sig": false, "md5_digest": "fae15c319584ee90efd75342a96632fa", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 12931, "upload_time": "2017-06-28T09:48:08", "url": "https://files.pythonhosted.org/packages/8e/d5/b06574c1fe866be2afa4b4f09412d2cd8627473317237e88d7c8d639a5aa/hypers-cas-1.1.7.tar.gz" } ] }, "urls": [ { "comment_text": "", "digests": { "md5": "fae15c319584ee90efd75342a96632fa", "sha256": "d51ecc21fde54a0c67fc314fe53ca2663739f8250d18fc6dbe47c0a752af7e95" }, "downloads": -1, "filename": "hypers-cas-1.1.7.tar.gz", "has_sig": false, "md5_digest": "fae15c319584ee90efd75342a96632fa", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 12931, "upload_time": "2017-06-28T09:48:08", "url": "https://files.pythonhosted.org/packages/8e/d5/b06574c1fe866be2afa4b4f09412d2cd8627473317237e88d7c8d639a5aa/hypers-cas-1.1.7.tar.gz" } ] }