Cork - Authentication for the Bottle web framework¶
Cork provides a simple set of methods to implement Authentication and Authorization in web applications based on Bottle and Flask.
It is designed to stay out of the way and let you focus on what your application should do.
Cork is under development - contributions are welcome.
Features¶
- Minimal design, easy to tweak.
- Multiple storage backends are supported:
- MySQL, MariaDB, PostgreSQL using SQLAlchemy
- MongoDb
- SQLite
- Local JSON files for low-traffic web applications
- Simple role-based authentication. User are authorized by role e.g. ‘admin’, ‘user’, ‘editor’.
- Admin users can create and delete user accounts and roles.
- User registration and password reset using email delivery and confirmation.
- Unit-tested and code covered
News¶
- 2015-05-01: Version 0.12.0a2
- Implement configurable variables in email templates #88
- Fix #86, #87
- 2015-04-26: Version 0.12.0a1
- WARNING: this is a development release and not backward-compatible.
- Add Python 3 support
- Add configurable session key #84
- 2015-01-06: Version 0.11
- Add Flask support
- MongoDB: add authentication #68
- Enable configurable SMTP port. Closes: #43
- Remove unneeded setuptools dependency. Closes: #40
- 2013-09-22: Version 0.10
- Decorator support added. #6
- ‘last_login’ user attribute added. #47 #48
- In-memory SQLite Database support added.
- CONTRIBUTORS.txt added
- Bugfix: configurable role table name #46
- Bugfix: email address #42
- 2013-07-07: Version 0.9
- SQLite support added.
- SMTP URL bugfix #38
- 2013-05-27: Version 0.8
- scrypt implemented, bugfixes #34 #35 #32
- 2013-04-08: Version 0.7
- Configurable backend support added.
- SQLAlchemy and MongoDB support added.
- Closes: #8 #27 #28
- 2013-01-27: Version 0.6
- More flexible file naming in JsonBackend.
- Fixed function to update user’s email address.
- More informative log message for missing Pycrypto.
Roadmap¶
- Additional hooks to provide logging or user-defined functions in case of login()/require() failure
- Hooks to share session data between multiple hosts
- Flask support