{"id":25176341,"url":"https://github.com/redturtle/pas.plugins.velruse","last_synced_at":"2025-06-13T07:39:58.391Z","repository":{"id":8809840,"uuid":"10506686","full_name":"RedTurtle/pas.plugins.velruse","owner":"RedTurtle","description":"PAS plugin for Plone. Allow users to login using social networks through Velruse","archived":false,"fork":false,"pushed_at":"2014-05-14T14:59:31.000Z","size":440,"stargazers_count":3,"open_issues_count":1,"forks_count":0,"subscribers_count":14,"default_branch":"master","last_synced_at":"2025-02-19T17:09:59.839Z","etag":null,"topics":[],"latest_commit_sha":null,"homepage":"http://plone.org/products/pas.plugins.velruse","language":"Python","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":"swcarpentry/shell-novice","license":null,"status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/RedTurtle.png","metadata":{"files":{"readme":"README.rst","changelog":null,"contributing":null,"funding":null,"license":null,"code_of_conduct":null,"threat_model":null,"audit":null,"citation":null,"codeowners":null,"security":null,"support":null}},"created_at":"2013-06-05T15:59:43.000Z","updated_at":"2014-05-22T02:31:50.000Z","dependencies_parsed_at":"2022-09-22T13:30:21.806Z","dependency_job_id":null,"html_url":"https://github.com/RedTurtle/pas.plugins.velruse","commit_stats":null,"previous_names":[],"tags_count":2,"template":false,"template_full_name":null,"repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/RedTurtle%2Fpas.plugins.velruse","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/RedTurtle%2Fpas.plugins.velruse/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/RedTurtle%2Fpas.plugins.velruse/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/RedTurtle%2Fpas.plugins.velruse/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/RedTurtle","download_url":"https://codeload.github.com/RedTurtle/pas.plugins.velruse/tar.gz/refs/heads/master","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":247107820,"owners_count":20884795,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2022-07-04T15:15:14.044Z","host_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub","repositories_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories","repository_names_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repository_names","owners_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners"}},"keywords":[],"created_at":"2025-02-09T13:16:55.616Z","updated_at":"2025-04-04T01:40:49.448Z","avatar_url":"https://github.com/RedTurtle.png","language":"Python","funding_links":[],"categories":[],"sub_categories":[],"readme":"A PAS plugin for Plone that **authenticate users from social networks** through the use of **Velruse**.\n\n.. contents::\n\nIntroduction\n============\n\nThis Plone plugin let you to enable authentication of social networks users in Plone sites, using `Velruse`__.\n\n__ http://velruse.readthedocs.org/\n\nVelruse is a Pyramid application so defined:\n\n    Velruse is a set of authentication routines that provide a **unified way** to have a website user authenticate to a\n    variety of different identity providers and/or a variety of different authentication schemes.\n    \n    It is similar in some ways to `Janrain Engage`__ with the exception of being **open-source**, **locally installable**,\n    and **easily pluggable** for custom identity providers and authentication schemes.\n\n    __ http://www.janrain.com/products/engage\n    \n    -- from Velruse documentation\n\nWhy use Velruse instead of RPX service?\n---------------------------------------\n\nPlone ecosystem already have at least one plugin for a general social authentication: `plonesocial.auth.rpx`__. But in some\nenvironments (for example: public company or whatever use case where the user's privacy follow strict rules) this\nkind of service can't be used.\n\n__ http://comlounge.net/rpx/\n\nPrivacy apart, Velruse is **open source* and **easilly pluggable**: you can provide authentication providers for new services\nnot covered by Janrain.\n\nCheck also this `Velruse presentation`__ for more.\n\n__ http://www.slideshare.net/amleczko/lost-in-o-auth-learn-velruse-and-get-your-life-back\n\nHow to Use\n==========\n\nInstalling Velruse\n------------------\n\nVelruse is a `Pyramid`__ application so you must follow the proper `installation instruction`__ the refer to the\n`Velruse setup guide`__.\n\n__ http://www.pylonsproject.org/projects/pyramid/about\n__ http://docs.pylonsproject.org/projects/pyramid/en/1.4-branch/narr/install.html\n__ http://velruse.readthedocs.org/en/latest/usage.html\n\nVelruse can be executed as a separate *Pyramid service* and the Plone plugin needs this configuration.\nIt will talk to Velruse using HTTP requests.\n\n**TODO**: recent Zope version can be executed in the WSGI stack. Maybe future version of the plugin would support\nalso this alternative way? Who knows.\n\nInstalling pas.plugins.velruse\n------------------------------\n\nJust add ``pas.plugins.velruse`` to your buildout configuration and re-run it.\n\n.. code:: ini\n\n    [instance]\n    recipe = plone.recipe.zope2instance\n    \n    ...\n    \n    eggs =\n        ...\n        pas.plugins.velruse\n\nAfter Plone restart, add \"**Velruse authentication plugin**\" product to you Plone site.\n\nConfiguring pas.plugins.velruse\n-------------------------------\n\nAll configuration are done through the \"*Velruse integration settings*\" configuration, from the Plone\ncontrol panel.\n\nGeneral site settings\n~~~~~~~~~~~~~~~~~~~~~\n\nThe first section is for configuration that globally controls how Plone talk to Velruse, and other user interface\noptions.\n\n**Site login enabled**\n    If you want to keep enabled the standard Plone site login form or not.\n**Authentication services enabled**\n    A configuration list of available Velruse backends. See below.\n**Connection timeout**\n    A timeout value for connection to velruse server.\n\nThe \"*Authentication services enabled*\" configuration is composed by a set of triplets:\n\n**Name**\n    (optional) A descriptive name of the remote service. For example: \"Facebook\".\n**URL or path**\n    (mandatory) URL or path to the running Velruse service. Please note: this must be a public URL the user must\n    able to access. This is not really mandatory, but if not provided the login method is not displayed in the login form.\n**Icon**\n    (optional) URL or path for an icon that can recall the service logo.\n    \n    Default CSS implementation is for 64x64px images.\n\nURLs above can be absolute (\"http://auth.yourservice.com/login/facebook\") or relative to the portal root URL by\nusing a starting slash (\"/velruse/login/facebook\"). The latter will help you keeping Plone and Velruse behind Apache.\n\nThose information are used to properly configure the new login form.\n\n.. image:: http://blog.redturtle.it/pypi-images/pas.plugins.velruse/pas.plugins.velruse-0.1a1-01.png/image_large\n   :alt: New login form\n   :target: http://blog.redturtle.it/pypi-images/pas.plugins.velruse/pas.plugins.velruse-0.1a1-01.png\n\nPAS plugins configuration\n~~~~~~~~~~~~~~~~~~~~~~~~~\n\nThe other configuration section is relative the Velruse PAS plugin(s).\n\n**Velruse server host** \n    The hostname of the Pyramid Velruse service. For example: ``127.0.0.1:8080`` if Velruse run on the same\n    server of Plone.\n**Velruse auth info path**\n    The configured Pyramid route for calling **auth_info**. Default is ``/velruse/auth_info``.\n    \n    Keep in mind this warning taken from official Velruse documentation:\n    \n        The ``/auth_info`` URL should be considered sensitive and only trusted services should be allowed access.\n        If an attacker intercepts a an authentication token, they could potentially query /auth_info and learn all of\n        the credentials for the user.\n\n**User roles**\n    Set of default roles automatically given to users that perform authentication with the Velruse plugin.\n    Default to \"*Members*\" only.\n\nPlus, you have two additional forms: \"*Users management*\" and \"*Blacklist management*\" to manage user's data\ninside the plugin. You can delete data or enableadd the user to the **blacklist**.\nBlacklisted users can't authenticate anymore.\n\nData read by Plone from Velruse\n-------------------------------\n\nRight now only Twitter, Facebook, Linkedin and Google+ are automatically configured:\n\n* from Twitter: fullname, location, personal home page and portrait\n  (no e-mail can be read)\n* from Facebook: fullname, e-mail and portrait\n* from Linkedin: fullname, e-mail and portrait\n  (must properly configure the Linkedin API)\n* from Google: fullname and e-mail\n\nBut Velruse support *a lot* of additional providers; if you want to enable more\n(this is true also for custom providers) you must configure the plugin, setting what data try to read\nby changing a configuration variable.\n\n.. code:: python\n\n    from pas.plugins.velruse.config import PROPERTY_PROVIDERS_INFO\n    PROPERTY_PROVIDERS_INFO['yourmagicnewprovider'] = ('fullname', 'email', 'description')\n\n**TODO**: this will probably change in future, maybe replaced by a blacklist of property you *don't* want to read, or\nsomething configurable TTW.\n\nRequirements\n============\n\nTested with:\n\n* Plone 3.3\n* Plone 4.2\n* Plone 4.3\n\nAll using Velruse 1.1.\n\nCredits\n=======\n\nDeveloped with the support of `Regione Emilia Romagna`__;\nRegione Emilia Romagna supports the `PloneGov initiative`__.\n\n__ http://www.regione.emilia-romagna.it/\n__ http://www.plonegov.it/\n\nAuthors\n=======\n\nThis product was developed by RedTurtle Technology team.\n\n.. image:: http://www.redturtle.it/redturtle_banner.png\n   :alt: RedTurtle Technology Site\n   :target: http://www.redturtle.it/\n\nSpecial thanks to `Mauro Amico`__ and `Ben Bangert`__ (for accepting a couple of mine pull requests).\n\n__ https://github.com/mamico\n__ https://github.com/bbangert\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fredturtle%2Fpas.plugins.velruse","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fredturtle%2Fpas.plugins.velruse","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fredturtle%2Fpas.plugins.velruse/lists"}