Flask-OpenID
OpenID support for Flask
What it is and what it does
Flask-OpenID is a Flask extension that integrates the original OpenID authentication protocol into web applications. It allows developers to add OpenID-based login flows where users authenticate through external OpenID providers rather than managing credentials directly in the application.
The package wraps the python3-openid library and provides Flask-specific decorators and utilities to simplify OpenID integration. However, the fact sheet and package description both note that this implements a very old and outdated version of OpenID—the OpenID Connect protocol is now the current standard. Most modern authentication scenarios use OAuth 2.0 or OpenID Connect instead. The package remains available for legacy systems or niche use cases where OpenID support is still required.
Use it for:
- Adding OpenID authentication to legacy Flask applications that already rely on the original OpenID protocol
- Integrating with systems or services that only support the original OpenID specification
- Maintaining backward compatibility in older web applications during gradual migration away from OpenID
- Educational or historical reference for understanding how OpenID authentication was implemented in Flask
Worth the install?
AI-flagged interpretation of the facts on this page — verify before relying
Adds OpenID authentication support to Flask web applications, integrating the legacy OpenID protocol for user login and identity verification.
No, unless you are maintaining legacy code that specifically requires the original OpenID protocol. OpenID is obsolete; modern Flask applications should use OpenID Connect, OAuth 2.0, or other current authentication standards. The package is dormant (last release 810 days ago) and implements a protocol almost no one uses anymore. Install only if you have an explicit requirement to support existing OpenID infrastructure.
Install
flask-openid on PyPI
pip
pip install flask-openiduv
uv add flask-openidpoetry
poetry add flask-openidInstalling Flask-OpenID
Before you install
Low install friction with only two runtime dependencies (Flask and python3-openid). Maintenance is dormant—last release was 810 days ago in May 2024, though the repository remains active and the package supports current Python versions.
License in practice
BSD license permits commercial and private use with minimal restrictions, making it suitable for most projects that can accept permissive licensing.
Quickstart
pip install Flask-OpenID
from flask import Flask
from flask_openid import OpenID
app = Flask(__name__)
oid = OpenID(app)
Requires Flask and python3-openid to be installed; OpenID protocol itself is obsolete and rarely used in modern applications.
Verify before relying
- Whether existing OpenID providers still operate and support this legacy protocol version
- Real-world compatibility with modern Flask versions beyond the stated Python 3 support
- Whether the underlying python3-openid dependency receives security updates
Package facts
| License | BSD (permissive) |
| Python support | supports the current Python release (>=3.0) |
| Install friction | low — pure-Python wheel |
| Runtime dependencies | 2 — Flask, python3-openid |
| Maintenance | dormant — 810 days since the last release |
| Last repo commit | |
| First released | |
| Downloads | 1,502,720/month — #3,829 on PyPI (30-day window, as of 2026-08-14) |
| Known vulnerabilities | none known (OSV.dev, checked 2026-08-14) |
Evidence: Flask_OpenID-1.3.1-py3-none-any.whl
Tags
More Python Modules packages
Converts domain names between Unicode and…
permissive · top 100 on PyPI
setuptoolsSetuptools is a Python build backend and…
permissive · top 100 on PyPI
PyYAMLPyYAML parses and emits YAML 1.1 data format,…
permissive · top 100 on PyPI
pydanticPydantic validates Python data structures…
permissive · top 100 on PyPI
annotated-typesProvides reusable metadata objects for use with…
permissive · top 100 on PyPI
typing-inspectionProvides runtime tools to inspect and…
permissive · top 100 on PyPI
flask-oidcAdds OpenID Connect authentication support to…
permissive · top 5,000 on PyPI
python-openidImplements OpenID authentication for Python…
permissive · top 15,000 on PyPI
django-oidc-providerProvides OpenID Connect and OAuth 2.0 server…
permissive · top 15,000 on PyPI
python3-openidImplements OpenID authentication protocol…
permissive · top 5,000 on PyPI
PyLTI1p3Implements the LTI 1.3 Advantage specification…
permissive · top 15,000 on PyPI
Flask-PrincipalFlask-Principal provides identity and…
permissive · top 15,000 on PyPI
oidc-provider-mockA mock OpenID Connect provider server that runs…
permissive · top 15,000 on PyPI
pyopImplements an OpenID Connect Provider (OP)…
permissive · top 15,000 on PyPI
AuthlibAuthlib provides a complete implementation of…
permissive · top 1,000 on PyPI
oicA complete Python implementation of OpenID…
permissive · top 15,000 on PyPI