Skip to content

HTTPS clone URL

Subversion checkout URL

You can clone with
or
.
Download ZIP
Toolkit for Pyramid, a Pylons Project, to add Authentication and Authorization using Velruse (OAuth) and/or a local database, CSRF, ReCaptcha, Sessions, Flash messages and I18N
Python Shell

This branch is 86 commits behind cd34:master

Fetching latest commit…

Cannot retrieve the latest commit at this time

Failed to load latest commit information.
apex
docs
examples/apex_example
.gitignore
LICENSE.txt
MANIFEST.in
README
TODO.txt
i18n.sh
setup.cfg
setup.py

README

THIS BREAKS ALL BACKWARDS COMPATIBILITY.

This means that existing auth systems need to be modified - check the install 
instructions as you'll need to slightly modify your SQL, do some imports, 
and make sure you're running Velruse trunk.

Authentication, Form Library, I18N/L10N, Flash Message Template
(not associated with Pyramid, a Pylons project)

Uses pyramid_routesalchemy

* Authentication

Authentication has a single authentication id which can have multiple
associated credentials. A user can create a username and associate their
Facebook and Google login records with their current record and log in
with any of them. It is planned that Apex will act as an endpoint for
multi-domain multi-site installations - allowing one to associate a login
account from one domain to another.

Local authentication uses salt + BCrypt
http://codahale.com/how-to-safely-store-a-password/

Velruse is used for OpenID/OpenAuth providers and supports
  * Google
  * Facebook
  * Twitter
  * Yahoo
  * Microsoft Live
  * Bitbucket
  * Github
  * Identi.ca
  * Last.fm
  * LinkedIn
  * Any OpenID provider

Ability to overload the login form, extend the AuthUser class through
polymorphism or a Foreign Key user profile table.

* Form Library

WTForms is used to help those transitioning over from Django to Pyramid.

* I18N/L10N

Babel is used to support Internationalization and Localization.

* Flash Messages

Templates and helpers for Mako and Jinja2 are included to support Flash
Messages in your application.
Something went wrong with that request. Please try again.