Historia de Usuario: Acceso SFTP seguro para proveedores - EDI
Versión: 1.0
Fecha: 2025-05-25
Autor: Arquitectura TI
🎯 Historia de Usuario
Como proveedor autorizado del sistema EDI
Quiero contar con acceso seguro a una conexión SFTP en la nube de GCP
Para que pueda depositar archivos EDI en una carpeta llamada incoming sin comprometer la seguridad del sistema.
✅ Criterios de Aceptación
- El sistema debe provisionar automáticamente una cuenta SFTP individual por proveedor o usuario.
- La autenticación debe realizarse mediante clave pública SSH (no debe permitirse autenticación por contraseña).
- La cuenta debe tener acceso restringido únicamente a su carpeta raíz
/incoming, usandochrooto configuración equivalente. - La carpeta
/incomingdebe estar precreada al momento de habilitar el acceso. - El usuario SFTP no debe tener acceso a otras carpetas del sistema ni al sistema operativo subyacente.
- La solución debe ser desplegada en GCP usando recursos como Compute Engine o Cloud Transfer Appliance si aplica.
- El sistema debe registrar en logs centralizados:
- Fecha y hora de conexión
- Archivos subidos o modificados
- Dirección IP del cliente
- Solo se deben aceptar archivos con extensión
.edi,.txto.csv. - El acceso debe estar disponible 24/7 y monitoreado con alertas ante errores de conexión o uso indebido.
- Debe poder revocarse el acceso de un proveedor de forma inmediata desde consola de administración o script automatizado.
🧪 Definition of Done (DoD)
- Al menos un proveedor fue configurado con acceso SFTP bajo estas condiciones
- El acceso se verifica con clave pública desde cliente externo
- La carpeta
incomingexiste y está protegida - El acceso a otros directorios está bloqueado
- Los logs se almacenan en Stackdriver o sistema equivalente
- Se disparan alertas al detectar comportamiento anómalo
- Se valida el rechazo de archivos con extensiones no permitidas
- Se documenta el proceso de alta, baja y cambio de claves
- El equipo de operaciones cuenta con script o Terraform para automatizar provisión
📦 Infraestructura recomendada (Terraform)
La configuración puede automatizarse mediante Terraform para:
- Crear la instancia GCE (Compute Engine)
- Crear el usuario Linux/SFTP
- Asociar claves SSH
- Montar el directorio
/incoming - Configurar
sshd_configpara chroot - Agregar reglas de firewall solo para puerto 22
Puedes documentar esto en un archivo separado como
infra/sftp-instance.tf.