{ "info": { "author": "Richard Gomes", "author_email": "rgomes.info@gmail.com", "bugtrack_url": null, "classifiers": [ "Environment :: Web Environment", "Framework :: Pylons", "Framework :: Pyramid", "Intended Audience :: Developers", "License :: OSI Approved :: BSD License", "Operating System :: OS Independent", "Programming Language :: Python", "Programming Language :: Python :: 2.6", "Programming Language :: Python :: 2.7", "Topic :: Internet :: WWW/HTTP", "Topic :: Internet :: WWW/HTTP :: Dynamic Content", "Topic :: Internet :: WWW/HTTP :: WSGI :: Application", "Topic :: Software Development :: User Interfaces" ], "description": "| Code_ | Bugs_ | Forum_ | Docs_ | License_ | Contact_\n\n.. _Code : http://github.com/frgomes/kotti_velruse\n.. _Bugs : http://github.com/frgomes/kotti_velruse/issues\n.. _Forum : http://github.com/frgomes/kotti_velruse/wiki\n.. _Docs : http://kotti_velruse.readthedocs.org\n.. _License : http://opensource.org/licenses/BSD-3-Clause\n.. _Contact : http://github.com/~frgomes\n\n\n`kotti_velruse`_ is a `Kotti`_ plugin which provides authentication via `Velruse`_, using\nmethods such as: OpenID, OAuth2, Google, Yahoo, Live, Facebook, Twitter and others\n\n`Find out more about Kotti`_\n\n.. note::\n\n `kotti_accounts`_ needs to be installed alongside with `kotti_velruse`_.\n\n\n.. _`Kotti`: http://pypi.python.org/pypi/Kotti\n.. _`Find out more about Kotti`: http://pypi.python.org/pypi/Kotti\n.. _`Velruse`: http://velruse.readthedocs.org\n.. _`kotti_velruse`: http://pypi.python.org/pypi/kotti_velruse\n.. _`kotti_accounts`: http://pypi.python.org/pypi/kotti_accounts\n\n\n\nFor the impatient\n=================\n\nThere's a demo which shows how it works.\nJust run the commands below inside a clean virtualenv.\n\n::\n\n git clone https://github.com/frgomes/kotti_velruse_demo.git\n cd kotti_velruse_demo\n ./run-server.sh\n\n\nSetup\n=====\n\n1. Insert ``kotti_velruse.kotti_configure`` on ``kotti.configurators``\n\n::\n\n kotti.configurators = kotti_velruse.kotti_configure\n kotti_accounts.kotti_configure\n # other plugins\n\n2. Insert the block below under section ``[app:main]``\n\n::\n\n [app:main]\n \n ### --------------------------------------------------------------------------\n # velruse configuration\n #\n # Module velruse.app.includeme looks for entries named \"provider.\" in order\n # to discover which providers are configured. \n #\n # NOTE: these configurations must be inside [app:kotti]\n #\n ###\n \n \n #---\n # Please adjust variable REALM\n #\n # Make sure that:\n #\n # 1. your browser is able to resolve the FQDN\n # 2. your Kotti server is able to resolve the FQDN\n #\n #---\n realm=http://www.example.com\n \n \n endpoint = %(realm)s:6543/logged_in\n store = memory\n # store = redis\n # store.host = localhost\n # store.port = 6379\n # store.db = 0\n # store.key_prefix = velruse_ustore\n \n \n # OpenID\n # Despite a single provide.openid is declared, you can specify multiple\n # URLs that should be used for connecting to multiple OpenID endpoints.\n # See: login.mako for an example of how this can be done\n provider.openid.realm=%(realm)s\n provider.openid.store=openid.store.memstore:MemoryStore\n \n # Google (this an alias to Google Hybrid, for backward compatibility)\n provider.google.realm=%(realm)s\n provider.google.consumer_key=CHANGE-ME\n provider.google.consumer_secret=CHANGE-ME\n provider.google.scope=CHANGE-ME\n \n # Google Hybrid\n #provider.google_hybrid.realm=%(realm)s\n #provider.google_hybrid.consumer_key=CHANGE-ME\n #provider.google_hybrid.consumer_secret=CHANGE-ME\n #provider.google_hybrid.scope=CHANGE-ME\n \n # Google OAuth2\n provider.google_oauth2.consumer_key=CHANGE-ME\n provider.google_oauth2.consumer_secret=CHANGE-ME\n provider.google_oauth2.scope=CHANGE-ME\n \n # Yahoo\n provider.yahoo.realm=%(realm)s\n provider.yahoo.consumer_key=CHANGE-ME\n provider.yahoo.consumer_secret=CHANGE-ME\n \n # Live\n provider.live.client_id=CHANGE-ME\n provider.live.client_secret=CHANGE-ME\n provider.live.consumer_key=CHANGE-ME\n provider.live.consumer_secret=CHANGE-ME\n \n # Twitter\n provider.twitter.consumer_key=CHANGE-ME\n provider.twitter.consumer_secret=CHANGE-ME\n \n # Facebook\n provider.facebook.app_id=CHANGE-ME\n provider.facebook.app_secret=CHANGE-ME\n provider.facebook.consumer_key=CHANGE-ME\n provider.facebook.consumer_secret=CHANGE-ME\n provider.facebook.scope=email,publish_stream,read_stream,create_event,offline_access\n \n # LinkedIn\n provider.linkedin.consumer_key=CHANGE-ME\n provider.linkedin.consumer_secret=CHANGE-ME\n \n # Github\n provider.github.consumer_key=CHANGE-ME\n provider.github.consumer_secret=CHANGE-ME\n provider.github.scope=CHANGE-ME\n \n # BitBucket\n provider.bitbucket.consumer_key=CHANGE-ME\n provider.bitbucket.consumer_secret=CHANGE-ME\n \n # MailRU\n provider.mailru.app_id=CHANGE-ME\n provider.mailru.app_secret=CHANGE-ME\n provider.mailru.consumer_key=CHANGE-ME\n provider.mailru.consumer_secret=CHANGE-ME\n \n ### --------------------------------------------------------------------------\n\n\n3. Please adjust variable ``realm`` in ``development.ini``.\n\n4. Adjust provider configurations accordingly to to your affiliation keys and\n passwords.\n\n.. note::\n\n Several providers work out of the box, like Google Hybrid, Yahoo and most\n OpenID providers.\n\n5. Navigate to page /login like shown below:\n\n $ firefox http://localhost:6543/login\n\n\nHow it works\n============\n\n`kotti_velruse`_ allows users to employ any identity they already have on popular\nproviders like Google, Yahoo, LinkedIn, Twitter, Facebook or any OpenID enabled\nprovider.\n\nkotti_velruse is responsible for authentication workflow solely, which starts when\nthe user selects the authentication provider and finishes when the authentication\nprovider responds with a record containing user details, such as name and email\naddress. kotti_velruse is also responsible for assigning user credentials to\nthe current browsing session.\n\nkotti_velruse IS NOT responsible for creating or managing user credentials in\nany way. kotti_velsure IS NOT responsible even for querying user credentials, in\norder to find the one which matches the authenticated user identity. These\ntasks are performed by `kotti_accounts`_, which intercepts notifications emitted\nby kotti_velruse when an user successfully authenticates.\n\nSee also: `kotti_accounts`_\n\n\nDependencies\n============\n\nThis plugin depends on modified versions of:\n\n* velruse: https://github.com/frgomes/velruse/tree/feature.kotti_auth\n\n* openid-selector: https://github.com/frgomes/openid-selector\n\n\nSupport\n=======\n\nPlease find links on the top of this page.\n\nAuthors\n=======\n\nRichard Gomes \n\nChangelog\n=========\n\n0.1 (not released)\n------------------\n\n- Initial version, created as an example to velruse.\n See: http://github.com/frgomes/velruse/tree/feature.kotti_auth\n\n\n0.2 (31-Oct-2013)\n-----------------\n\n- Initial version as a proper Kotti plugin.\n\n\n0.3 (02-Nov-2013)\n-----------------\n\n- Honouring attribute 'came_from', in order to return to the previous page.\n- Better communication protocol with kotti_accounts (or any other module) which\n is responsible for handling event AfterKottiVelruseLoggedIn.\n- Creates credentials in the current browser session when kotti_accounts returns\n a valid Principal.\n- Code review.\n- Better documentation.\n\n\n0.3.1 (06-Nov-2013)\n-------------------\n- Better integration with kotti_accounts\n\n\n0.3.2 (11-Nov-2013)\n-------------------\n- Better integration with Preferences page (/@@prefs)\n\n0.3.3 (18-Nov-2013)\n-------------------\n- Move version number to package __init__.py\n- Pass ``request`` as part of ``event`` passed to AfterKottiVelruseLoggedIn\n- Better documentation", "description_content_type": null, "docs_url": null, "download_url": "UNKNOWN", "downloads": { "last_day": -1, "last_month": -1, "last_week": -1 }, "home_page": "http://kotti_velruse.readthedocs.org", "keywords": "pyramid kotti authentication velruse openid oauth2 google yahoo live facebook twitter", "license": "BSD", "maintainer": null, "maintainer_email": null, "name": "kotti_velruse", "package_url": "https://pypi.org/project/kotti_velruse/", "platform": "UNKNOWN", "project_url": "https://pypi.org/project/kotti_velruse/", "project_urls": { "Download": "UNKNOWN", "Homepage": "http://kotti_velruse.readthedocs.org" }, "release_url": "https://pypi.org/project/kotti_velruse/0.3.4/", "requires_dist": null, "requires_python": null, "summary": "Kotti authentication with Velruse: OpenID, OAuth2, Google, Yahoo, Live, Facebook, Twitter and others", "version": "0.3.4" }, "last_serial": 929795, "releases": { "0.3.4": [ { "comment_text": "", "digests": { "md5": "e35ddecade3dfd449e32245560ce119e", "sha256": "3df91e437109a787e7a28f9dc2cf9aadc2bbeb83c8de5f97c4ba9c2cf3d6bf07" }, "downloads": -1, "filename": "kotti_velruse-0.3.4.zip", "has_sig": false, "md5_digest": "e35ddecade3dfd449e32245560ce119e", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 25566, "upload_time": "2013-11-26T18:01:42", "url": "https://files.pythonhosted.org/packages/04/9c/0af661259315193bf05333ea5520613febc0858b59b1c8f0538892afeee2/kotti_velruse-0.3.4.zip" } ] }, "urls": [ { "comment_text": "", "digests": { "md5": "e35ddecade3dfd449e32245560ce119e", "sha256": "3df91e437109a787e7a28f9dc2cf9aadc2bbeb83c8de5f97c4ba9c2cf3d6bf07" }, "downloads": -1, "filename": "kotti_velruse-0.3.4.zip", "has_sig": false, "md5_digest": "e35ddecade3dfd449e32245560ce119e", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 25566, "upload_time": "2013-11-26T18:01:42", "url": "https://files.pythonhosted.org/packages/04/9c/0af661259315193bf05333ea5520613febc0858b59b1c8f0538892afeee2/kotti_velruse-0.3.4.zip" } ] }