From a37cb64a19ef74773bba44327c6d9ca2029f9029 Mon Sep 17 00:00:00 2001 From: JavMB Date: Thu, 14 May 2026 20:48:01 +0200 Subject: [PATCH] Add Reveal.js presentation and architecture diagram --- presentacion/arquitectura.png | Bin 0 -> 192529 bytes presentacion/index.html | 487 ++++++++++++++++++++++++++++++++++ 2 files changed, 487 insertions(+) create mode 100644 presentacion/arquitectura.png create mode 100644 presentacion/index.html diff --git a/presentacion/arquitectura.png b/presentacion/arquitectura.png new file mode 100644 index 0000000000000000000000000000000000000000..e1d44981ff6b0c73bfc1027e8ff1f3948c225485 GIT binary patch literal 192529 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 + + + + + DoliMiddlewareApi - BFF para Dolibarr + + + + + + +
+ +
+

DoliMiddlewareApi

+

Backend for Frontend para Dolibarr ERP

+

Trabajo Fin de Grado — JavierMB — 2026

+
+ .NET 10 LTS + ASP.NET Core + Docker + JWT Auth +
+
+ +
+

Agenda

+
    +
  1. El problema
  2. Patron BFF y arquitectura
  3. +
  4. .NET 10 y por que LTS
  5. Stack tecnologico
  6. +
  7. Autenticacion dual
  8. API y endpoints
  9. +
  10. DTOs, Mappers y CQRS-lite
  11. Testabilidad: IDolibarrApiClient
  12. +
  13. Seguridad: Rate Limiting y mas
  14. Errores RFC 7807
  15. +
  16. Docker y despliegue
  17. Lecciones y futuro
  18. +
+
+ +
+

El problema

+
+

+ ❌ Dolibarr devuelve todo como string (ids, fechas, decimales, estados)
+ ❌ API REST inconsistente (snake_case, unix timestamps, codigos numericos)
+ ❌ Exponer el ERP directamente al navegador = riesgo de seguridad
+ ❌ El frontend tendria que parsear y transformar todo manualmente +

+
+
+

+ ✅ El BFF transforma, valida y cachea — frontend recibe datos limpios
+ ✅ JWT propio — credenciales Dolibarr nunca llegan al navegador
+ ✅ Contratos tipados con DataAnnotations y mappers +

+
+
+ +
+

Patron BFF y arquitectura

+

Un BFF es una API disenada exclusivamente para un tipo de cliente frontend.

+
+
+
JS Frontend
JavaScript
+
+ ↔ +
+
BFF
.NET 10
+
+ ↔ +
+
Dolibarr
ERP
+
+
+
    +
  • Abstrae la API legacy detras de endpoints limpios y RESTful
  • +
  • Transforma tipos (strings a int/decimal/DateOnly, estados numericos a texto)
  • +
  • Aplica reglas de negocio y validacion
  • +
  • Centraliza autenticacion: el frontend solo maneja JWT
  • +
+
+ +
+

Arquitectura general

+ Arquitectura +
+ +
+

.NET 10 LTS — por que esta eleccion

+

Elegimos .NET 10 LTS (soporte hasta noviembre 2028). Ventajas clave:

+
+
+

PERFORMANCE

+

JIT inlining, escape analysis, NativeAOT mas rapido y ligero

+
+
+

C# 14

+

Field-backed properties, extension types, ?=

+
+
+

ASP.NET CORE 10

+

OpenAPI 3.1 por defecto, validacion built-in, rate limiting nativo

+
+
+

LTS = Long Term Support — parches de seguridad y soporte durante 3 anos. La eleccion correcta para un TFG.

+
+ +
+

Stack tecnologico

+
+
+

Backend

+

.NET 10 LTS
ASP.NET Core Web API
JWT Bearer Auth
Rate Limiting nativo
Health Checks

+
+
+

Patrones

+

CQRS-lite (command/query)
Service Layer
Static Mappers
ProblemDetails (RFC 7807)
IMemoryCache
Interface segregation

+
+
+

Infra

+

Docker + Compose
MySQL 8.0
Dolibarr (container)
xUnit + Moq
Swagger / OpenAPI

+
+
+
+ +
+

Estructura del proyecto

+
+
+

Controllers/

+

AuthController
ClientsController
InvoicesController
DocumentController
✓ [ProducesResponseType]

+
+
+

Services/

+

Auth/ AuthService, TokenCache, JwtProvider
Clients/ IDolibarrApiClient interfaz
InvoiceService, ClientService, DocumentService

+
+
+

Dtos/

+

command/ CreateInvoice...
query/ InvoiceDto...
Dolibarr/ *Response...

+
+
+

Otros

+

Mappers/
Exceptions/
Program.cs

+
+
+

clave IDolibarrApiClient es una interfaz — facilita mocking y testing

+
+ +
+

Autenticacion dual

+

Dos capas de autenticacion transparentes para el frontend:

+
+
+

FRONTEND ↔ BFF

+

JWT HMAC-SHA256
Claims: sessionId + username
Expiracion: 30 min
ASP.NET Core valida

+
+
+

BFF ↔ DOLIBARR

+

DOLAPIKEY por sesion
Cacheada en IMemoryCache
Clave: sessionId del JWT
Inyectada como header

+
+
+

✅ La API key de Dolibarr nunca sale del servidor

+
+ +
+

Flujo de login

+
    +
  1. Frontend envia credenciales → POST /api/Auth/login
  2. +
  3. BFF autentica contra Dolibarr y recibe DOLAPIKEY
  4. +
  5. BFF genera sessionId (GUID) y cachea { sessionId → DOLAPIKEY }
  6. +
  7. BFF genera JWT con claims { sessionId, username } (30 min)
  8. +
  9. Frontend usa JWT en Authorization: Bearer para cada request
  10. +
+

Cada request: JWT → sessionId → DOLAPIKEY en cache → header inyectado

+

✓ JWT secreto via variable de entorno (nunca hardcodeado)

+
+ +
+

Seguridad: Rate Limiting

+ +

ASP.NET Core 10 incluye rate limiting nativo. Lo usamos para proteger el login:

+
builder.Services.AddRateLimiter(options =>
+{
+    options.RejectionStatusCode = 429;
+    options.GlobalLimiter = PartitionedRateLimiter
+        .Create<HttpContext, string>(context =>
+    {
+        if (context.Request.Path.StartsWith("/api/Auth/login"))
+            return RateLimitPartition.GetSlidingWindowLimiter(
+                "login", _ => new SlidingWindowRateLimiterOptions
+                {
+                    PermitLimit = 5, Window = TimeSpan.FromMinutes(1)
+                });
+        return RateLimitPartition.GetNoLimiter("default");
+    });
+});
+

Maximo 5 intentos de login por minuto. Exceso → 429 Too Many Requests.

+
+ +
+

Seguridad: Health Checks + Authorize

+ +
+
+

HEALTH CHECKS

+

Endpoint /health que verifica el estado del BFF. Ideal para Docker y Kubernetes.

+
builder.Services.AddHealthChecks();
+app.MapHealthChecks("/health");
+
+
+

AUTHORIZE + SWAGGER DOCS

+

Todos los controllers con [Authorize]. Todos los endpoints documentados con [ProducesResponseType] — OpenAPI生成 automático.

+
[ProducesResponseType(typeof(InvoiceDetailDto),
+    StatusCodes.Status200OK)]
+[ProducesResponseType(typeof(ProblemDetails),
+    StatusCodes.Status404NotFound)]
+
+
+
+ +
+

API — Endpoints

+ + + + + + + + + + + + + + + + + + + + + + +
MetodoRutaDescripcionAuth
Auth
POST/api/Auth/loginLogin → JWTNo
Clients
GET/api/ClientsListar clientes + contactosJWT
Invoices
GET/api/InvoicesListar (pag., filtros)JWT
GET/api/Invoices/{id}Detalle con lineasJWT
POST/api/InvoicesCrear facturaJWT
PUT/api/Invoices/{id}ActualizarJWT
PATCH/api/Invoices/{id}/statusCambiar estadoJWT
POST/api/Invoices/{id}/validateValidar borradorJWT
DELETE/api/Invoices/{id}Eliminar borradorJWT
POST/api/Invoices/{id}/linesAnadir lineaJWT
DELETE/api/Invoices/{id}/lines/{lineId}Eliminar lineaJWT
GET/api/Invoices/{id}/paymentsListar pagosJWT
POST/api/Invoices/{id}/paymentsRegistrar pagoJWT
Document
GET/api/Document/invoice/{ref}/pdfGenerar PDFJWT
Health
GET/healthEstado del servicioNo
+
+ +
+

Logica en el BFF

+

El BFF no es solo un proxy — anade valor:

+
+
+

VALIDACION

+

[Required], [Range], [StringLength]
Paginacion 1-based con validacion

+
+
+

REGLAS DE NEGOCIO

+

Solo drafts se pueden eliminar, validar o anadir lineas
Estados limitados: draft/unpaid/paid

+
+
+

TRANSFORMACION

+

Strings → int/decimal/DateOnly
"1" → "unpaid"
Enriquecer con nombres de cliente

+
+
+
public async Task ValidateInvoiceAsync(int id)
+{
+    var invoice = await GetRawInvoiceAsync(id);
+    if (invoice.Statut != "0")
+        throw new ForbiddenException("Solo se pueden validar facturas en borrador");
+    await _apiClient.PostAsync($"invoices/{id}/validate", null);
+}
+
+ +
+

CQRS-lite: Command y Query DTOs

+
+
+

Command (entrada)

+
  • CreateTokenDto
  • CreateInvoiceDto
  • CreateInvoiceLineDto
  • CreateInvoicePaymentDto
  • UpdateInvoiceDto
  • UpdateInvoiceStatusDto
+
+
+

Query (salida)

+
  • InvoiceDto / InvoiceDetailDto
  • InvoiceLineDto
  • InvoicePaymentDto
  • ClientDto
  • LoginResponse
+
+
+

Tambien Dolibarr DTOs modelan la respuesta cruda del ERP — todo como string.

+
+ +
+

Testabilidad: IDolibarrApiClient

+

La comunicacion con Dolibarr se abstrae en una interfaz, permitiendo mocking en tests:

+
public interface IDolibarrApiClient
+{
+    Task<T> GetResourceAsync<T>(string endpoint) where T : class;
+    Task<List<T>> GetCollectionAsync<T>(string endpoint) where T : class;
+    Task<string> PostAsync(string endpoint, object requestBody);
+    Task<string> PutAsync(string endpoint, object requestBody);
+    Task DeleteAsync(string endpoint);
+}
+
+
+

PRODUCCION

+

DolibarrApiClient — inyecta DOLAPIKEY desde cache y llama al ERP real

+
+
+

TESTS

+

Mock<IDolibarrApiClient> — tests unitarios sin depender de Dolibarr

+
+
+
+ +
+

Mappers: Antes vs Despues

+
+
+

Dolibarr (crudo)

+
{
+  "statut": "1",
+  "total_ttc": "150.50",
+  "date": "1715673600",
+  "socid": "3",
+  "note_public": null
+}
+
+
+

BFF (limpio)

+
{
+  "status": "unpaid",
+  "total": 150.50,
+  "date": "2024-05-14",
+  "clientId": 3,
+  "notePublic": null
+}
+
+
+

Resultado El frontend recibe datos limpios, tipados y en camelCase

+
+ +
+

Gestion de errores — RFC 7807

+
// Excepciones de dominio
+public class NotFoundException : Exception { }
+public class UnauthorizedException : Exception { }
+public class ForbiddenException : Exception { }
+public class BadRequestException : Exception { }
+public class ApiException : Exception { }
+
+// Handler global (Program.cs)
+app.UseExceptionHandler(options =>
+{
+    options.Map<NotFoundException>(ex => Results.Problem(
+        statusCode: 404, title: "Recurso no encontrado", detail: ex.Message));
+    options.Map<UnauthorizedException>(ex => Results.Problem(
+        statusCode: 401, title: "No autorizado", detail: ex.Message));
+    // Forbidden -> 403, BadRequest -> 400, Api -> 500
+});
+

Todas las respuestas siguen ProblemDetails RFC 7807: {"type":"...", "title":"...", "status":404}

+
+ +
+

Pipeline de middleware

+
    +
  1. ExceptionHandler — ProblemDetails RFC 7807
  2. +
  3. RateLimiter (🔒 5 req/min en login)
  4. +
  5. Swagger (solo Development)
  6. +
  7. HTTPS Redirection
  8. +
  9. CORS (localhost:3000, 3001, 5173)
  10. +
  11. Authentication (JWT Bearer)
  12. +
  13. Authorization
  14. +
  15. MapControllers
  16. +
  17. HealthChecks (/health)
  18. +
+
+ +
+

Despliegue con Docker

+
# compose.yaml
+services:
+  mysql:
+    image: mysql:8.0
+    environment:
+      MYSQL_ROOT_PASSWORD: dolibarr
+      MYSQL_DATABASE: dolibarr
+    volumes: [mysql_data:/var/lib/mysql]
+
+  dolibarr:
+    image: dolibarr/dolibarr:latest
+    depends_on: [mysql]
+    ports: ["80:80"]
+
+  dolimiddlewareapi:
+    build: ./DoliMiddlewareApi
+    ports: ["5000:8080"]
+    depends_on: [dolibarr]
+
+  # redis:  # Cache distribuida (planificado)
+  #   image: redis:7-alpine
+
+ +
+

Dockerfile

+
FROM mcr.microsoft.com/dotnet/sdk:10.0 AS build
+WORKDIR /src
+COPY *.csproj .
+RUN dotnet restore
+COPY . .
+RUN dotnet publish -c Release -o /app
+
+FROM mcr.microsoft.com/dotnet/aspnet:10.0
+WORKDIR /app
+COPY --from=build /app .
+USER $APP_UID              # No-root por seguridad
+EXPOSE 8080 8081
+ENTRYPOINT ["dotnet", "DoliMiddlewareApi.dll"]
+

.NET 10 Multi-stage build — runtime ligero, usuario no-root por defecto

+
+ +
+

Lecciones aprendidas

+
+

✓ BFF justificado — el frontend no deberia lidiar con APIs inconsistentes

+

✓ Doble token — credenciales Dolibarr nunca salen del servidor

+

✓ Contratos tipados — DTOs con validacion evitan datos incorrectos

+

✓ Seguridad nativa — Rate limiting, health checks y [Authorize]

+

✓ Errores centralizados — RFC 7807 ProblemDetails consistentes

+

✓ Abstraccion para testing — IDolibarrApiClient permite mocking completo

+
+
+ +
+

Mejoras pendientes

+
+

☐ Tests unitarios (proyecto xUnit + Moq preparado, IDolibarrApiClient facilita mocking)

+

☐ Redis para cache distribuida

+

☐ Response caching

+

☐ Metadatos de paginacion (X-Total-Count)

+

☐ CI/CD

+

☐ Mas endpoints: productos, pedidos, terceros...

+
+
+ +
+

🙏 Gracias!

+

DoliMiddlewareApi — BFF para Dolibarr

+

.NET 10 LTS • JWT • Rate Limiting • Health Checks • Docker

+

Preguntas →

+
+ +
+ + + + + + \ No newline at end of file