{
"info": {
"author": "David Beitey",
"author_email": "david@davidjb.com",
"bugtrack_url": null,
"classifiers": [
"Development Status :: 2 - Pre-Alpha",
"Intended Audience :: Developers",
"License :: OSI Approved :: BSD License",
"Natural Language :: English",
"Operating System :: OS Independent",
"Programming Language :: Python",
"Topic :: Internet :: WWW/HTTP :: WSGI :: Middleware",
"Topic :: System :: Systems Administration :: Authentication/Directory"
],
"description": "Introduction\n============\n\n``repoze.who.plugins.metadata_cache`` is a set of plugins for the \n`repoze.who framework\n`_ that enables the caching and replaying\nof \"one-off\" user metadata, specifically targetting SSO requests.\n\nQuick start and Example Applications\n------------------------------------\n\nUsage with CAS attribute release\n~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~\n\nYou can use a metadata cache plugin with `repoze.who.plugins.cas\n`_ to capture the metadata\nreturned from ticket validation. \n\nTo do this, configure a metadata cache plugin with the\nsame ``name`` as the ``attributes_name`` for the CAS plugin, and ensure you're\nusing at least CAS version 2 (so set ``cas_version = 2.0`` or higher for the\nCAS plugin). During ticket validation for CAS, the attributes will be\nretrieved and placed into the ``repoze.who`` identity for the metadata cache\nplugin to pick up and hold onto.\n\nAn example configuration would look like the following. The one main thing\nto make sure of is that the configuration for the attributes for the CAS\nplugin matches up with the ``name`` configured for the ``metadata_cache``\nplugin. This very basic configuration stores user attributes in memory (a\nPython dictionary, specifically).\n\n.. code:: ini\n\n [plugin:casauth]\n use = repoze.who.plugins.cas.main_plugin:make_plugin\n cas_url = https://cas.example.com/cas/\n cas_version = 3.0\n attributes_name = attributes\n rememberer_name = auth_tkt\n\n [plugin:metadata_cache]\n use = repoze.who.plugins.metadata_cache.memory:make_plugin\n name = attributes\n\n ...\n\n [identifiers]\n plugins =\n casauth\n auth_tkt\n \n [authenticators]\n plugins =\n casauth\n auth_tkt\n\n [challengers]\n plugins =\n casauth\n\n [mdproviders]\n plugins = \n metadata_cache\n\n\nWeb server authentication\n~~~~~~~~~~~~~~~~~~~~~~~~~\n\nYou can use a metadata cache plugin with a front-end web server authentication\nmodule (for example, Shibboleth) to extract user metadata out of the\nenvironment or headers and reduce your dependency on the authentication/web\nserver layers above.\n\nAn implementation and example for this will be coming soon.\n\n...and more\n~~~~~~~~~~~\n\nYou can also extend the classes available here for anything else where user\ndetails come into the application via the environment or request (headers,\ncookies, etc).\n\nIf you build something you think is going to useful to the world at large,\nsend a pull request to see if it can be included.\n\n\nCaution\n-------\n\nBe wary of anything upstream - servers, proxies, and especially the client -\nbeing able to spoof or inject things into the request or environment that might \ninadvertently affect the given metadata being used. A careless configuration\ncould compromise security.\n\nDevelopment\n-----------\n\nTo clone this project, and run the test suite, run the following::\n\n git clone git://github.com/davidjb/repoze.who.plugins.metadata_cache.git\n cd repoze.who.plugins.metadata_cache\n python bootstrap.py\n ./bin/buildout\n ./bin/test\n\nSend a pull request with things to fix, new features or whatever you think\ncould be useful. Try to document what you're doing and keep the code clean.\nNo reasonable pull request refused\u2122.\n\nCredits\n-------\n\n* David Beitey (davidjb), Author\n\n\nDocumentation\n=============\n\n.. contents::\n\n\n\n\nChanges\n=======\n\n0.1 (2013-04-24)\n----------------\n\n- Initial release.\n [davidjb]",
"description_content_type": null,
"docs_url": null,
"download_url": "UNKNOWN",
"downloads": {
"last_day": -1,
"last_month": -1,
"last_week": -1
},
"home_page": "http://github.com/davidjb/repoze.who.plugins.metadata_cache/",
"keywords": "server web wsgi repoze repoze.who metadata",
"license": "BSD",
"maintainer": null,
"maintainer_email": null,
"name": "repoze.who.plugins.metadata_cache",
"package_url": "https://pypi.org/project/repoze.who.plugins.metadata_cache/",
"platform": "UNKNOWN",
"project_url": "https://pypi.org/project/repoze.who.plugins.metadata_cache/",
"project_urls": {
"Download": "UNKNOWN",
"Homepage": "http://github.com/davidjb/repoze.who.plugins.metadata_cache/"
},
"release_url": "https://pypi.org/project/repoze.who.plugins.metadata_cache/0.1/",
"requires_dist": null,
"requires_python": null,
"summary": "Metadata caching plugin for repoze.who",
"version": "0.1"
},
"last_serial": 722266,
"releases": {
"0.1": [
{
"comment_text": "",
"digests": {
"md5": "db292de909141c559b7fe7121109fc5d",
"sha256": "14d8413c31ea28bea4bca1474dbb5681a39decdb6aada1f7da6210058d9bb01f"
},
"downloads": -1,
"filename": "repoze.who.plugins.metadata_cache-0.1.zip",
"has_sig": false,
"md5_digest": "db292de909141c559b7fe7121109fc5d",
"packagetype": "sdist",
"python_version": "source",
"requires_python": null,
"size": 17012,
"upload_time": "2013-04-24T06:39:14",
"url": "https://files.pythonhosted.org/packages/b0/1d/7eea8812989e6363912bccccdfce9cda7459eb629775e7870b11933c44fd/repoze.who.plugins.metadata_cache-0.1.zip"
}
]
},
"urls": [
{
"comment_text": "",
"digests": {
"md5": "db292de909141c559b7fe7121109fc5d",
"sha256": "14d8413c31ea28bea4bca1474dbb5681a39decdb6aada1f7da6210058d9bb01f"
},
"downloads": -1,
"filename": "repoze.who.plugins.metadata_cache-0.1.zip",
"has_sig": false,
"md5_digest": "db292de909141c559b7fe7121109fc5d",
"packagetype": "sdist",
"python_version": "source",
"requires_python": null,
"size": 17012,
"upload_time": "2013-04-24T06:39:14",
"url": "https://files.pythonhosted.org/packages/b0/1d/7eea8812989e6363912bccccdfce9cda7459eb629775e7870b11933c44fd/repoze.who.plugins.metadata_cache-0.1.zip"
}
]
}