So, you're writing a Flask web application and would like to authenticate your users.
You start with a simple Login page, but soon enough you'll need to handle:
- Registrations and Email Confirmations
- Change Usernames, Change Passwords, and Forgotten Passwords
And wouldn't it be nice to also offer:
- Added security
- Increased reliability
- Role-based Authorization
- Internationalization
- Support for multiple emails per user
Flask-User offers these features and more.
- Secure -- Built on top of widely deployed Passlib, PyCrypto, ItsDangerous.
- Reliable -- Code coverage of over 95%
- Available -- Tested on Python 2.6, 2.7 and 3.3-3.6
- Well documented
- Largely configurable -- Through configuration settings
- Fully customizable -- Through customizable functions and email templates
- Ready to use -- Through sensible defaults
- Supports SQL Databases and MongoDB Databases
- Event hooking -- Through signals
Chinese, Dutch, English, Farsi, Finnish, French, German, Italian, Russian, Spanish, Swedish, and Turkish
Flask-User requires the following Python packages:
- cryptography 2.0+
- Flask 0.9+
- Flask-Login 0.3+
- Flask-WTF 0.9+
- passlib 1.6+
Optionally:
- blinker 1.3+ -- for Event Notification
- Flask-Babel 0.9+ -- for translations
- Flask-Mail 0.9+ -- for sending mail with SMTP
- Flask-MongoAlchemy 0.7+ -- for MongoAlchemy applications
- Flask-Sendmail -- for sending mail with sendmail
- Flask-SQLAlchemy 1.0+ -- for SQLAlchemy applications
- py-bcript 0.4+ -- for fast bcrypt encryption
- speaklater 1.3+ -- for translations