> ## Content Index
> Fetch the complete content index at: https://blog.xavigonzalez.net/llms.txt
> Use this file to discover other available public pages before exploring further.

# Simple login con Flask y SQLite
- URL: https://blog.xavigonzalez.net/simple-login-con-flask-y-sqlite/
- Published: 2023-11-03T10:09:22.000Z
- Updated: 2026-10-29T12:07:05.000Z
- Author: Xavi Gonzalez
- Tags: GNU/Linux, Python, database, flask, html5, linux, login, sql, sqlite, #wordpress, #Import 2026-10-27 20:56

En este post os comparto una manera simple de tener un login con Flask que poder utilizar en vuestros proyectos.

De esta manera podréis autenticar usuarios y limitar el acceso.

Podeis encontrar todo el codigo en mi repositorio de Github:

[https://github.com/xavigm/flask-login-example/](https://github.com/xavigm/flask-login-example/?ref=blog.xavigonzalez.net)

Aquí te explico por encima como funciona.

Para realizarlo utiliza el metodo de flask.login, y cuando comprueba si el usuario indicado a través del formulario coincide con el guardado en la base de datos, [lo llama.](https://github.com/xavigm/flask-login-example/blob/main/main.py?ref=blog.xavigonzalez.net#L72)

- En el archivo [main.py](https://github.com/xavigm/flask-login-example/blob/main/main.py?ref=blog.xavigonzalez.net) se importan las librerías necesarias, comprobamos que exista el fichero de la base de datos, y además configuramos la aplicación. Encontramos 3 rutas diferentes:
- /: cuando ya está logueado
- /login: donde te redirige si no estás logueado y te muestra el formulario. También valida el usuario y lo loguea si es correcto.
- /logout: Donde elimina la sesión y desloguea

En el archivo[ login.py](https://github.com/xavigm/flask-login-example/blob/main/login.py?ref=blog.xavigonzalez.net) están definidas las funciones que válida si el usuario existe en la base de datos.

En el fichero [database.py](https://github.com/xavigm/flask-login-example/blob/main/database.py?ref=blog.xavigonzalez.net) es donde se define la conexión con la base de datos, en este caso SQLite.  
Por defecto crea un usuario admin.

He utilizado [un template HTML5 de Creative Tim](https://github.com/xavigm/flask-login-example/tree/main/templates?ref=blog.xavigonzalez.net) para dejarlo bonito.

Puedes probar el proyecto siguiendo estos simples pasos (necesitas tener python y pip instalados):

> git clone https://github.com/xavigm/flask-login-example.git cd flask-login-example.git pip -r install requirements.txt

Una vez instalados las librerias necesarias, podemos ejecutarlo con:

> python main.py 
> 
> 2.6.0 WARNING: This is a development server. Do not use it in a production deployment. Use a production WSGI server instead. 
> 
> \* Serving Flask app ‘main’ 
> 
> \* Debug mode: off \*
> 
> Running on http://127.0.0.1:5000 (Press CTRL+C to quit)

Y ya podremos abrirlo en el navegador:

[![](https://blog.xavigonzalez.net/content/images/wordpress/2023/11/image-1024x469.png)](https://blog.xavigonzalez.net/content/images/wordpress/2023/11/image.png)

Como ves es muy simple, y a partir de aquí puedes aplicarlo en tus proyectos o partir desde aquí.  
Espero que te haya sido útil, si es así, ¡compártelo por favor!