Welcome to Flask-Security¶

Flask-Security allows you to quickly add common security mechanisms to your Flask application. They include:
Authentication (via session, Basic HTTP, or token)
User registration (optional)
Role and Permission management
Account activation (via email confirmation) (optional)
Password management (recovery and resetting) (optional)
Two-factor authentication (optional)
WebAuthn Support (optional)
Use ‘social’/Oauth for authentication (e.g. google, github, ..) (optional)
Change email (optional)
Login tracking (optional)
JSON/Ajax Support
Many of these features are made possible by integrating various Flask extensions and libraries. They include:
Additionally, it assumes you’ll be using a common library for your database connections and model definitions. Flask-Security supports the following Flask extensions out of the box for data persistence:
PonyORM - NOTE: not currently working - Help needed!.
Getting Started¶
- Installation
- Quick Start
- Features
- Session Based Authentication
- Role/Identity Based Access
- Password Hashing
- Password Validation and Complexity
- Basic HTTP Authentication
- Token Authentication
- User Registration
- Username Support
- Email Confirmation
- Password Reset/Recovery
- Password Change
- Two-factor Authentication
- Unified Sign In
- WebAuthn
- Email Change
- Login Tracking
- JSON/Ajax Support
- Command Line Interface
- Social/Oauth Authentication
- Configuration
- Core
- Core - Passwords and Tokens
- Core - Multi-factor
- Core - Compatibility
- Core - rarely need changing
- Login/Logout
- Registerable
- Confirmable
- Changeable
- Recoverable
- Change-Email
- Two-Factor
- Unified Signin
- Username-Recovery
- Change Username
- Passwordless
- Trackable
- WebAuthn
- Recovery Codes
- Social Oauth
- Feature Flags
- URLs and Views
- Template Paths
- Messages
- Models
Customizing and Usage Patterns¶
API¶
Additional Notes¶
- Contributing
- Flask-Security Changelog
- Version 5.6.0
- Version 5.5.2
- Version 5.5.1
- Version 5.5.0
- Version 5.4.3
- Version 5.4.2
- Version 5.4.0 & 5.4.1
- Version 5.3.3
- Version 5.3.2
- Version 5.3.1
- Version 5.3.0
- Version 5.2.0
- Version 5.1.2
- Version 5.1.1
- Version 5.1.0
- Version 5.0.2
- Version 5.0.1
- Version 5.0.0
- Version 4.1.5
- Version 4.1.4
- Version 4.1.3
- Version 4.1.2
- Version 4.1.1
- Version 4.1.0
- Version 4.0.1
- Version 4.0.0
- Version 4.0.0rc2
- Version 3.4.5
- Version 3.4.4
- Version 3.4.3
- Version 3.4.2
- Version 3.4.1
- Version 3.4.0
- Version 3.3.3
- Version 3.3.2
- Version 3.3.1
- Version 3.3.0
- Version 3.2.0
- Version 3.1.0
- Version 3.0.2
- Version 3.0.1
- Version 3.0.0
- Version 1.7.5
- Version 1.7.4
- Version 1.7.3
- Version 1.7.2
- Version 1.7.1
- Version 1.7.0
- Version 1.6.9
- Version 1.6.8
- Version 1.6.7
- Version 1.6.6
- Version 1.6.5
- Version 1.6.4
- Version 1.6.3
- Version 1.6.2
- Version 1.6.1
- Version 1.6.0
- Version 1.5.4
- Version 1.5.3
- Version 1.5.2
- Version 1.5.1
- Version 1.5.0
- Version 1.2.3
- Version 1.2.2
- Version 1.2.1
- Version 1.2.0
- Version 1.1.0
- Development Lead
- Maintainer
- Patches and Suggestions