Files
math2-platform/docker/init-scripts/02-create-monitoring-user.sh
Renato bc43c9e772
Some checks failed
Test Suite / test-backend (push) Has been cancelled
Test Suite / test-frontend (push) Has been cancelled
Test Suite / e2e-tests (push) Has been cancelled
Test Suite / coverage-check (push) Has been cancelled
🎓 Initial commit: Math2 Platform - Plataforma de Álgebra Lineal PRO
 Características:
- 45 ejercicios universitarios (Basic → Advanced)
- Renderizado LaTeX profesional
- IA generativa (Z.ai/DashScope)
- Docker 9 servicios
- Tests 123/123 pasando
- Seguridad enterprise (JWT, XSS, Rate limiting)

🐳 Infraestructura:
- Next.js 14 + Node.js 20
- PostgreSQL 15 + Redis 7
- Docker Compose completo
- Nginx + SSL ready

📚 Documentación:
- 5 informes técnicos completos
- README profesional
- Scripts de deployment automatizados

Estado: Producción lista 
2026-03-31 11:27:11 -03:00

38 lines
1.2 KiB
Bash
Executable File

#!/bin/bash
# ==================================================
# CREATE MONITORING USER (Secure Version)
# Usuario para monitoreo de la base de datos
# ==================================================
set -e
echo "==> Creating monitoring user..."
# Usar variable de entorno para la contraseña
if [ -z "$MONITOR_DB_PASSWORD" ]; then
echo "ERROR: MONITOR_DB_PASSWORD no está configurada"
echo "Por favor, configure MONITOR_DB_PASSWORD en las variables de entorno"
exit 1
fi
psql -v ON_ERROR_STOP=1 --username "$POSTGRES_USER" --dbname "$POSTGRES_DB" <<-EOSQL
-- Crear usuario de monitoreo (solo lectura)
DO \$\$
BEGIN
IF NOT EXISTS (SELECT FROM pg_catalog.pg_roles WHERE rolname = 'monitor') THEN
CREATE ROLE monitor WITH LOGIN PASSWORD '${MONITOR_DB_PASSWORD}';
END IF;
END
\$\$;
-- Otorgar permisos de lectura
GRANT CONNECT ON DATABASE $POSTGRES_DB TO monitor;
GRANT USAGE ON SCHEMA public TO monitor;
GRANT SELECT ON ALL TABLES IN SCHEMA public TO monitor;
-- Configurar para futuras tablas
ALTER DEFAULT PRIVILEGES IN SCHEMA public GRANT SELECT ON TABLES TO monitor;
EOSQL
echo "==> Monitoring user created!"