馃О Validaci贸n y seguridad en APIs

馃О Validaci贸n y seguridad en APIs

Proteger tus endpoints y validar los datos de entrada

La validaci贸n de datos y la seguridad son esenciales al desarrollar una API. Laravel ofrece herramientas poderosas como Form Request Validation, middleware y tokens para proteger tus endpoints contra entradas no v谩lidas o accesos no autorizados.

馃搵 Validaci贸n b谩sica en controladores API

Puedes validar los datos directamente en el m茅todo del controlador usando $request->validate().

app/Http/Controllers/Api/ProductController.php
public function store(Request $request) {
    $validated = $request->validate([
        'name' => 'required|string|max:100',
        'price' => 'required|numeric|min:0',
        'description' => 'nullable|string',
    ]);

    $product = Product::create($validated);
    return response()->json($product, 201);
}
      

Si los datos no son v谩lidos, Laravel devolver谩 autom谩ticamente una respuesta JSON con los errores y c贸digo 422.

馃И Simulador de validaci贸n

Introduce un producto y observa si la API lo acepta o rechaza:

馃攼 Seguridad: Autenticaci贸n con Tokens

Laravel ofrece varias formas de proteger tus APIs:

  • Sanctum: ideal para APIs personales o SPAs (Single Page Applications).
  • Passport: soluci贸n completa basada en OAuth2 para autenticaci贸n robusta.

Con Laravel Sanctum puedes proteger tus rutas f谩cilmente:

routes/api.php
use Illuminate\Support\Facades\Route;

Route::middleware('auth:sanctum')->group(function () {
    Route::get('/user', function (Request $request) {
        return $request->user();
    });
    Route::get('/products', [ProductController::class, 'index']);
});
      

Para acceder a estas rutas, el cliente debe enviar un token v谩lido en la cabecera HTTP:

Authorization: Bearer TU_TOKEN_AQUI
    

✅ Buenas pr谩cticas

  • Valida **todos** los datos que ingresen a la API.
  • Usa Form Requests para mantener la l贸gica de validaci贸n separada del controlador.
  • Protege tus rutas sensibles con middleware como auth:sanctum.
  • Evita exponer datos sensibles en respuestas JSON.

Publicar un comentario

0 Comentarios