Volver a recursos del Bloque 5

CÁPSULA DE BASE

Seguridad y documentación

Protege costos y datos; deja un camino reproducible para la siguiente persona.

Objetivo técnico

Al terminar podrás revisar una API RAG antes de compartirla: validarás input, protegerás secretos y documentarás cómo reproducir el proyecto. Seguridad y documentación se encuentran en la misma pregunta: ¿otra persona puede usarlo sin acceder a información que no le corresponde?

Antes de empezar

Necesitas un repositorio de práctica con .gitignore, .env.example, una ruta HTTP y README. Usa claves falsas. Si sospechas que una clave real estuvo en Git, debes rotarla antes de continuar.

Paso a paso

  1. Define un inventario de datos: preguntas del usuario, documentos, embeddings, logs y credenciales.
  2. Para cada dato, escribe quién puede leerlo y cuánto tiempo debe conservarse.
  3. Verifica que la ruta valide antes de llamar al proveedor:
if (typeof message !== 'string' || message.trim().length < 3) {
  return reply.code(400).send({ code: 'VALIDATION_ERROR' });
}
  1. Confirma auth y rate limit en el endpoint costoso, no solo en la interfaz.
  2. Busca secretos antes de publicar con git diff --cached y una revisión de patrones como API_KEY=. No imprimas el valor encontrado.
  3. Completa el README: objetivo, instalación, .env.example, comandos, contrato, corpus permitido, reindexación y límites conocidos.
  4. Pide a otra persona que siga el README en una carpeta limpia.

Verificación

Una petición inválida debe fallar antes de gastar tokens. Una persona nueva debe ejecutar tests y una consulta de ejemplo sin pedirte instrucciones privadas. Los logs no deben contener claves, preguntas completas ni chunks sensibles.

Errores frecuentes

  • Confiar en que ocultar un botón protege el endpoint.
  • Guardar documentos personales en logs para “debuggear”.
  • Documentar solo el camino feliz y omitir corpus, costos o reindexación.

Práctica

Escribe una tabla de amenazas con tres filas: abuso de costo, acceso a documentos ajenos y prompt con datos sensibles. Para cada una define prevención, señal observable y respuesta.

Puente al RAG

El proyecto final del Bloque 5 debe declarar qué sabe, qué no sabe y cómo actualiza su corpus. Este gate evita que una demo funcional se presente como un sistema seguro.

Fuente primaria

OWASP API Security Top 10