{ "info": { "author": "Jens Klein and Matthias Dollfuss", "author_email": "dev@bluedynamics.com", "bugtrack_url": null, "classifiers": [ "Environment :: Web Environment", "Framework :: Plone", "Framework :: Plone :: 4.3", "Framework :: Plone :: 5.0", "Framework :: Plone :: 5.1", "Programming Language :: Python", "Programming Language :: Python :: 2.7" ], "description": ".. image:: https://travis-ci.org/collective/pas.plugins.authomatic.svg?branch=master\n :target: https://travis-ci.org/collective/pas.plugins.authomatic\n\n.. image:: https://coveralls.io/repos/collective/pas.plugins.authomatic/badge.svg?branch=master&service=github\n :target: https://coveralls.io/github/collective/pas.plugins.authomatic?branch=master\n\n\n.. This README is meant for consumption by humans and pypi. Pypi can render rst files so please do not use Sphinx features.\n If you want to learn more about writing documentation, please check out: http://docs.plone.org/about/documentation_styleguide_addons.html\n This text does not appear on pypi or github. It is a comment.\n\n\n=============================================================================\nLogin with OAuth2/ OpenId by integrating Authomatic in Plone\n=============================================================================\n\n**pas.plugins.authomatic**\n\nFeatures\n--------\n\nProvides OAuth2 and OpenID login capability for Plone:\n\nIt integrates the awesome `Authomatic `_ package in Plone\n\n Authomatic is a framework agnostic library\n for Python web applications\n with a minimalistic but powerful interface\n which simplifies authentication of users\n by third party providers like Facebook or Twitter\n through standards like OAuth and OpenID.\n\n *by Author Peter Hudec on Authomatic website*\n\nIt has out of the box support for:\n\nOAuth 1.0a providers\n Bitbucket, Flickr, Meetup, Plurk, Twitter, Tumblr, UbuntuOne, Vimeo, Xero, Xing and Yahoo.\nOAuth 2.0 providers\n Amazon, Behance, Bitly, Cosm, DeviantART, Eventbrite, Facebook, Foursquare, GitHub, Google, LinkedIn, PayPal, Reddit, Viadeo, VK, WindowsLive, Yammer and Yandex.\nOpenID\n python-openid and Google App Engine based OpenID.\n\n\nDocumentation\n-------------\n\n- This package will create a view called ``authomatic-handler`` where you can login with different providers\n- The view can be used as well to add an identity from a provider to an existing account\n- The provider is choosen in the URL so if you call ``/authomatic-handler/PROVIDER`` you will use PROVIDER to login\n- You can set the JSON configuration of the plugin in the Controlpanel ``@@authomatic-controlpanel`` (linked under users)\n- Example JSON configuration (first level key is the PROVIDER::\n\n {\n \"github\": {\n \"display\": {\n \"title\": \"Github\",\n \"cssclasses\": {\n \"button\": \"plone-btn plone-btn-default\",\n \"icon\": \"glypicon glyphicon-github\"\n },\n \"as_form\": false\n },\n \"propertymap\": {\n \"email\": \"email\",\n \"link\": \"home_page\",\n \"location\": \"location\",\n \"name\": \"fullname\"\n },\n \"class_\": \"authomatic.providers.oauth2.GitHub\",\n \"consumer_key\": \"5c4901d141e736f114a7\",\n \"consumer_secret\": \"d4692ca3c0ab6cc1f8b28d3ccb1ea15b61e7ef5c\",\n \"access_headers\": {\n \"User-Agent\": \"Plone Authomatic Plugin\"\n }\n },\n }\n\nInstallation\n------------\n\nInstall pas.plugins.authomatic by adding it to your buildout::\n\n [buildout]\n\n ...\n\n eggs =\n pas.plugins.authomatic\n\n\nand then running \"bin/buildout\".\n\nStart Plone and activate the plugin in the addons control-panel.\n\nGo to the Authomatic controlpanel (security section) and configure the plugin.\n\nConfiguration parameters for the different authorization are provided as JSON text in there.\nJSON is used because of flexibility.\nDetails at `Authomatics provider section `_.\n\nThere are some differences in configuration:\n\n- the value of ``\"class_\"`` has to be a string, which is then resolved as a dotted path.\n- each provider can get an optional entry ``display`` with sub-enties such as:\n\n - ``title`` which is used in the templates instead of the section name.\n - ``iconclasses`` which is applied in the templates to an span.\n - ``buttonclasses`` which is applied in the templates to the button.\n - ``as_form`` (true/false) which renders a form for OpenId providers.\n\n- each provider can get an optional entry ``propertymap``.\n It is a mapping from authomatic/provider user properties to plone user properties, like ``\"fullname\": \"name\",``.\n Look at each providers documentation which properties are available.\n\nSource Code and Contributions\n-----------------------------\n\nIf you want to help with the development (improvement, update, bug-fixing, ...) of ``pas.plugins.authomatic`` this is a great idea!\n\n- `Source code at Github `_\n- `Issue tracker at Github `_\n\nYou can clone it or `get access to the github-collective `_ and work directly on the project.\nPlease do larger changes on a branch and submit a Pull Request.\n\nMaintainer of pas.plugins.authomatic is Jens Klein.\nWe appreciate any contribution and if a release is needed to be done on pypi, please just contact one of us.\n\nDevelopment\n-----------\n\nThere must be an ``python`` binary available in system path pointing to Python 2.7.\nAlso you need to have all installed to develop with Plone (see http://docs.plone.org/) then:\n\n- Plone 4: ``$ bootstrap-4.3.x.sh``\n- Plone 5: ``$ bootstrap-5.0.x.sh``\n\n\nLicense\n-------\n\nThe project is licensed under the GPLv2.\n\n\nContributors\n============\n\n- Jens Klein, jens@bluedynamics.com\n- Matthias Dollfuss, matthias.dollfuss@gmail.com\n- \u00c9rico Andrei\n- Luca Fabbri, luca.fabbri@abstract.it\n\nChangelog\n=========\n\n1.0b1 (2017-11-20)\n------------------\n\n- Slighly beautify login modal.\n [jensens]\n\n- Fix #33\" Page does not exist Control Settings.\n [jensens]\n\n- Fix #31: Link is broken to JSON configuration documentation in help text.\n [jensens]\n\n- Fix #28: After uninstall plone.external_login_url is still registered and the login broken.\n [jensens]\n\n- Support for Plone 5.1 tested (worked, ust control-panel icon needed some tweak).\n Buildout configuration for 5.1 added.\n [jensens]\n\n- Install: Hide non-valid profiles at install form.\n [jensens]\n\n- Additional checks to ensure to never have an empty/None key stored.\n [jensens]\n\n- Fix #27: Update user data after login.\n [jensens]\n\n- Fix filter users bug in enumerateUsers plugin where it was always returning\n all the users.\n [sneridagh]\n\n- fix typo and wording of login message [tkimnguyen]\n\n\n1.0a7 (2016-02-15)\n------------------\n\n- Workaround for None users.\n [sneridagh]\n\n\n1.0a6 (2016-01-11)\n------------------\n\n- Fix #21: When you logout and then login again, a new user is created.\n [jensens]\n\n\n1.0a5 (2015-12-04)\n------------------\n\n- Fix: #18 \"Provider Login\" option for \"Generator for Plone User ID\" seems\n broken\n [jensens]\n\n- Fix: Title indicates if an identity is added\n [jensens]\n\n- Fix: Correct usage of plone.protect\n [jensens]\n\n\n1.0a4 (2015-11-20)\n------------------\n\n- Added german translation\n [jensens]\n\n- Restored Plone 4 compatibility\n [keul]\n\n- Added italian translation\n [keul]\n\n- Proper uninstall\n [keul]\n\n1.0a3 (2015-11-15)\n------------------\n\n- Refactor authomatic-handler to enable adding identities.\n [jensens]\n\n- Fix: use secret from settings as secret for Authomatic.\n [jensens]\n\n- Renamed view ``authomatic-login`` to ``authomatic-handler``, because this\n view will be used to add an identity too (url must be registered on provider\n side sometimes and we want to do this only once).\n [jensens]\n\n\n1.0a2 (2015-11-14)\n------------------\n\n- Minimal validation of JSON.\n [jensens]\n\n- Make the whole ``remember`` procedure a ``safeWrite`` if called from login\n view. We can not pass a authenticator token here, because of redirects and\n expected return urls .\n [jensens]\n\n- Allow selection of user id generator strategy.\n [jensens]\n\n- Allow multiple services for one user. This changes a lot behind the scenes.\n [jensens]\n\n- Use authomatic.core.User attributes instead of raw provider data. closes `#9`_\n [ericof]\n\n\n1.0a1 (2015-10-28)\n------------------\n\n- Initial release.\n\n\n.. _`#9`: https://github.com/collective/pas.plugins.authomatic/issues/9", "description_content_type": null, "docs_url": null, "download_url": "", "downloads": { "last_day": -1, "last_month": -1, "last_week": -1 }, "home_page": "http://pypi.python.org/pypi/pas.plugins.authomatic", "keywords": "Python Plone PAS OAuth", "license": "GPL", "maintainer": "", "maintainer_email": "", "name": "pas.plugins.authomatic", "package_url": "https://pypi.org/project/pas.plugins.authomatic/", "platform": "", "project_url": "https://pypi.org/project/pas.plugins.authomatic/", "project_urls": { "Homepage": "http://pypi.python.org/pypi/pas.plugins.authomatic" }, "release_url": "https://pypi.org/project/pas.plugins.authomatic/1.0b1/", "requires_dist": null, "requires_python": "", "summary": "Provides OAuth2/ OpenID login for Plone using Authomatic.", "version": "1.0b1" }, "last_serial": 3349455, "releases": { "1.0a1": [ { "comment_text": "", "digests": { "md5": "ae696aff7f2c1285abcd06fae9272aec", "sha256": "de0d865b519612d3728df29a8cbff3a4191c7c431fe2917ffb67b65b936ba514" }, "downloads": -1, "filename": "pas.plugins.authomatic-1.0a1.tar.gz", "has_sig": false, "md5_digest": "ae696aff7f2c1285abcd06fae9272aec", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 47510, "upload_time": "2015-10-28T21:54:39", "url": "https://files.pythonhosted.org/packages/2f/9f/e480a09a4db5e1fb910d603d84f4eaf9f7facd3a29d5eab300c422d3f11a/pas.plugins.authomatic-1.0a1.tar.gz" } ], "1.0a2": [ { "comment_text": "", "digests": { "md5": "797ed60768f984209305708b69d8b916", "sha256": "8aff13d4e2a47b9d32eb8c2839c55b4d322115502350f760af5b164ecfe754c2" }, "downloads": -1, "filename": "pas.plugins.authomatic-1.0a2.tar.gz", "has_sig": false, "md5_digest": "797ed60768f984209305708b69d8b916", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 34486, "upload_time": "2015-11-13T23:22:14", "url": "https://files.pythonhosted.org/packages/c4/f6/e75d3d35a7d3d3fb3d047c35421512090588a5794dc1a3c242cf13e733a5/pas.plugins.authomatic-1.0a2.tar.gz" } ], "1.0a3": [ { "comment_text": "", "digests": { "md5": "f8064693487dccb05e81122768783033", "sha256": "86c5dc9efdd3b889d24c19f0920bff566c20eed8cbab25f2d5ac4fb9f96d1a40" }, "downloads": -1, "filename": "pas.plugins.authomatic-1.0a3.tar.gz", "has_sig": false, "md5_digest": "f8064693487dccb05e81122768783033", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 34906, "upload_time": "2015-11-15T19:52:24", "url": "https://files.pythonhosted.org/packages/b6/80/e01936fe4a9a5be83c2c42b8e636055f3937409077f686a743474b812b97/pas.plugins.authomatic-1.0a3.tar.gz" } ], "1.0a4": [ { "comment_text": "", "digests": { "md5": "6a1461852383f004e64fb1eab627d475", "sha256": "6e574290273157f0b50f95678bc2426706498db14a49cb90979b03970de73565" }, "downloads": -1, "filename": "pas.plugins.authomatic-1.0a4.tar.gz", "has_sig": false, "md5_digest": "6a1461852383f004e64fb1eab627d475", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 51558, "upload_time": "2015-11-20T14:30:06", "url": "https://files.pythonhosted.org/packages/d0/bb/f52d243cec7a09a2f83a691302597e7453df72f4be4475fbc97f3c5abb71/pas.plugins.authomatic-1.0a4.tar.gz" } ], "1.0a5": [ { "comment_text": "", "digests": { "md5": "ab718dbcb2792d44f63d82415c14cf1d", "sha256": "c45ec9cb6a1170232f8c783d805961468de99d1cf26ec8ec9bcb0d365e671b80" }, "downloads": -1, "filename": "pas.plugins.authomatic-1.0a5.tar.gz", "has_sig": false, "md5_digest": "ab718dbcb2792d44f63d82415c14cf1d", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 51836, "upload_time": "2015-12-04T00:05:51", "url": "https://files.pythonhosted.org/packages/38/bb/3b6c7dd8ac9a269deedcbe69d71f9fbde2c3f4840d0178c5ce5284260247/pas.plugins.authomatic-1.0a5.tar.gz" } ], "1.0a6": [ { "comment_text": "", "digests": { "md5": "7694e10263d593a403340019b46f0aa3", "sha256": "86de3b1805a87c236fd51703ea0375e30c82c2539ce5c27a83a084dcd5bedefc" }, "downloads": -1, "filename": "pas.plugins.authomatic-1.0a6.tar.gz", "has_sig": false, "md5_digest": "7694e10263d593a403340019b46f0aa3", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 52139, "upload_time": "2016-01-11T11:34:46", "url": "https://files.pythonhosted.org/packages/a6/1e/779b4bad88e81f91cf23aaf68bd03c275c992bb5068ab2d75ea4a06826f7/pas.plugins.authomatic-1.0a6.tar.gz" } ], "1.0a7": [ { "comment_text": "", "digests": { "md5": "aea9728c4691ceae0e78f1a2e1b896a3", "sha256": "700abba53d28018f9176d730e80c21ed3ed0f50ff8f159737dc500118881e1f5" }, "downloads": -1, "filename": "pas.plugins.authomatic-1.0a7.tar.gz", "has_sig": false, "md5_digest": "aea9728c4691ceae0e78f1a2e1b896a3", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 52216, "upload_time": "2016-02-15T09:01:26", "url": "https://files.pythonhosted.org/packages/1e/67/2d917d19fac4951bd53cf07a66e3dfe98984d250c9bcca94fd8f7f272ec8/pas.plugins.authomatic-1.0a7.tar.gz" } ], "1.0b1": [ { "comment_text": "", "digests": { "md5": "dec38c1692b8eaa9399dccadfcd27e08", "sha256": "cbed1ca71a040b24548d285f0630839b3c4012b17bcb1b5cf7ec5cfbba539b03" }, "downloads": -1, "filename": "pas.plugins.authomatic-1.0b1.tar.gz", "has_sig": false, "md5_digest": "dec38c1692b8eaa9399dccadfcd27e08", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 46072, "upload_time": "2017-11-20T16:03:02", "url": "https://files.pythonhosted.org/packages/21/34/1e6011bcf9be02896e98f3be46d7c36afdc06ccb38e51bf2e728920171bc/pas.plugins.authomatic-1.0b1.tar.gz" } ] }, "urls": [ { "comment_text": "", "digests": { "md5": "dec38c1692b8eaa9399dccadfcd27e08", "sha256": "cbed1ca71a040b24548d285f0630839b3c4012b17bcb1b5cf7ec5cfbba539b03" }, "downloads": -1, "filename": "pas.plugins.authomatic-1.0b1.tar.gz", "has_sig": false, "md5_digest": "dec38c1692b8eaa9399dccadfcd27e08", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 46072, "upload_time": "2017-11-20T16:03:02", "url": "https://files.pythonhosted.org/packages/21/34/1e6011bcf9be02896e98f3be46d7c36afdc06ccb38e51bf2e728920171bc/pas.plugins.authomatic-1.0b1.tar.gz" } ] }