Configuración de Seguridad
La sección de Seguridad de la Consola proporciona controles para proteger tu tenant de Auris contra el acceso no autorizado, el relleno de credenciales, los ataques de fuerza bruta y el abuso automatizado. Todas las protecciones de seguridad operan a nivel de plataforma y se aplican a todas las aplicaciones de tu tenant.
Accede a la Configuración de Seguridad en Consola → Configuración → Seguridad.
Listas de IPs Permitidas / Bloqueadas
Las reglas de IP permiten permitir o denegar explícitamente los intentos de inicio de sesión desde direcciones IP o rangos CIDR específicos. Las reglas se evalúan antes de la autenticación, lo que significa que una IP bloqueada es rechazada antes de que se comprueben las credenciales.
Cómo Funcionan las Reglas
Auris evalúa las reglas de IP en el siguiente orden:
- Las reglas de bloqueo se comprueban primero. Si la IP entrante coincide con alguna regla de bloqueo, la solicitud es rechazada inmediatamente.
- Las reglas de permiso se comprueban a continuación. Si el tenant tiene alguna regla de permiso configurada y la IP entrante no coincide con ninguna regla de permiso, la solicitud es rechazada.
Esto significa:
- Si no tienes reglas de IP, todas las IPs están permitidas
- Si solo tienes reglas de bloqueo, todas las IPs excepto las bloqueadas están permitidas
- Si tienes alguna regla de permiso, solo están permitidas las IPs que coincidan con esas reglas (y las reglas de bloqueo explícitas tienen prioridad sobre las de permiso)
Alcance de las Reglas
| Alcance | Comportamiento |
|---|---|
| Todo el tenant | Se aplica a todos los intentos de inicio de sesión en todas las aplicaciones |
| Por aplicación | Se aplica solo al iniciar sesión en una aplicación registrada específica |
Añadir una Regla de IP
Abrir Reglas de IP
Ve a Configuración → Seguridad → Listas de IPs Permitidas / Bloqueadas.
Hacer clic en Añadir Regla
Haz clic en el botón Añadir Regla.
Rellenar los detalles de la regla
| Campo | Requerido | Descripción |
|---|---|---|
| Rango CIDR | Sí | Dirección IP o bloque CIDR (por ejemplo, 192.168.1.0/24 o 203.0.113.42/32) |
| Tipo de Regla | Sí | Permitir o Bloquear |
| Alcance | Sí | Todo el tenant o una aplicación específica |
| Etiqueta | No | Un nombre corto para referencia administrativa (por ejemplo, “Red Oficina”) |
| Nota | No | Detalles adicionales sobre por qué existe esta regla |
| Temporal | No | Si esta regla expira automáticamente |
| Expira el | Si es temporal | La fecha y hora en que esta regla se elimina automáticamente |
Guardar
Haz clic en Guardar. La regla tiene efecto inmediato.
Casos de Uso Comunes
- Bloquear el rango de IP de un actor malicioso conocido: Añade una regla de bloqueo para el rango CIDR del atacante
- Restringir una aplicación de administración a las IPs de la oficina: Añade reglas de permiso para los rangos de IP de tu oficina y establece el alcance a la aplicación de administración
- Acceso temporal para un contratista: Añade una regla de permiso temporal que expire cuando termine su contrato
Ten cuidado al añadir reglas de permiso para todo el tenant. Si añades una regla de permiso sin tener también reglas que cubran todos los rangos de IP de los usuarios legítimos, podrías bloquear a los usuarios. Prueba siempre con un alcance de aplicación específica antes de aplicar reglas de permiso en todo el tenant.
Protección contra Fuerza Bruta
La protección contra fuerza bruta bloquea automáticamente las cuentas de usuario después de un número configurado de intentos de inicio de sesión fallidos consecutivos. Esto defiende contra el adivino de contraseñas y los ataques de relleno de credenciales.
Configuración
Ve a Configuración → Seguridad → Protección contra Fuerza Bruta.
| Configuración | Descripción | Predeterminado |
|---|---|---|
| Umbral de Intentos Fallidos | Número de fallos consecutivos antes del bloqueo | 10 |
| Duración del Bloqueo | Cuánto tiempo está bloqueada la cuenta (minutos) | 15 |
| Multiplicador de Duración del Bloqueo | Multiplicador aplicado a la duración del bloqueo para bloqueos repetidos | 1 (sin escalada) |
| Alcance del Bloqueo | Bloquear por IP, por cuenta, o ambos | Por cuenta |
Multiplicador de Duración del Bloqueo
Cuando se establece por encima de 1, cada bloqueo posterior de la misma cuenta aumenta la duración del bloqueo:
- Primer bloqueo: 15 minutos
- Segundo bloqueo (multiplicador = 2): 30 minutos
- Tercer bloqueo: 60 minutos
- Y así sucesivamente
Esta política de escalada hace que los ataques automatizados repetidos sean progresivamente más costosos.
Gestionar Cuentas Bloqueadas
La tabla de Cuentas Bloqueadas en la página de Protección contra Fuerza Bruta muestra todas las cuentas actualmente bloqueadas:
| Columna | Descripción |
|---|---|
| Usuario | Email y nombre |
| Bloqueado Desde | Cuándo se bloqueó la cuenta |
| Se Desbloquea el | Cuándo expira automáticamente el bloqueo |
| Motivo | Qué nivel de protección activó el bloqueo |
Desbloqueo Manual
Haz clic en Desbloquear junto a cualquier cuenta para liberar el bloqueo inmediatamente sin esperar al temporizador. Úsalo cuando un usuario legítimo contacta con soporte después de ser bloqueado.
Detección de Inicio de Sesión Sospechoso
La detección de inicio de sesión sospechoso analiza cada inicio de sesión exitoso en busca de señales de comportamiento que puedan indicar el compromiso de la cuenta. A diferencia de la protección contra fuerza bruta (que se activa con fallos), la detección de inicio de sesión sospechoso se ejecuta después de que la autenticación tiene éxito.
Métodos de Detección
Habilita o deshabilita cada detector de forma independiente:
| Detector | Descripción | Recomendado |
|---|---|---|
| Nuevo Dispositivo | Inicio de sesión desde una huella de dispositivo no vista anteriormente para este usuario | Sí |
| Nueva Dirección IP | Inicio de sesión desde una IP no usada anteriormente por este usuario | Opcional (alto volumen en móvil) |
| Nuevo País | Inicio de sesión desde un país no visto anteriormente para este usuario | Sí |
| Viaje Imposible | La ubicación de inicio de sesión es físicamente inalcanzable desde la ubicación del inicio de sesión anterior en el tiempo transcurrido | Sí |
| VPN / Proxy | La IP de inicio de sesión se identifica como un nodo de salida VPN, servidor proxy o centro de datos | Opcional |
Acciones por Detección
Para cada tipo de detección, configura qué ocurre cuando se detecta un inicio de sesión sospechoso:
| Acción | Comportamiento |
|---|---|
| Solo Registrar | Registra el evento en los logs de auditoría. Sin impacto en el usuario. |
| Notificar al Usuario | Envía un email al usuario informándole del inicio de sesión sospechoso. |
| Bloquear Inicio de Sesión | Rechaza la autenticación, incluso después de credenciales y MFA correctos. |
| Requerir MFA | Exige un factor MFA adicional si no se ha completado ya. |
Puedes establecer diferentes acciones para diferentes tipos de detección. Una configuración inicial recomendada:
| Detector | Acción |
|---|---|
| Nuevo Dispositivo | Notificar al Usuario |
| Nuevo País | Requerir MFA |
| Viaje Imposible | Bloquear Inicio de Sesión |
| VPN / Proxy | Solo Registrar |
Configuración de Viaje Imposible
| Configuración | Descripción | Predeterminado |
|---|---|---|
| Velocidad Máxima de Viaje | Km/h máximos que el algoritmo considera físicamente posibles | 900 km/h (velocidad de avión) |
| Proveedor GeoIP | El servicio usado para el mapeo de IP a ubicación | ip-api.com (gratuito) |
Proveedores GeoIP
| Proveedor | Coste | Precisión | Notas |
|---|---|---|---|
| ip-api.com | Gratuito (1000 solicitudes/min) | Nivel ciudad | Bueno para la mayoría de casos de uso |
| MaxMind GeoIP2 | Licencia de pago | Nivel ciudad | Mayor precisión, base de datos offline |
Para usar MaxMind, introduce tu clave de licencia MaxMind en la configuración GeoIP y Auris usará la API de MaxMind para las consultas.
Revisar Eventos de Inicio de Sesión Sospechoso
Ve a Configuración → Seguridad → Inicios de Sesión Sospechosos para ver una tabla de todos los eventos detectados:
| Columna | Descripción |
|---|---|
| Usuario | Quién se autenticó |
| Marca de Tiempo | Cuándo ocurrió el inicio de sesión |
| Motivo de Detección | Qué detector fue activado |
| Severidad | Baja, Media o Alta |
| Acción Tomada | Lo que hizo Auris (registrar, notificar, bloquear, requerir MFA) |
| Revisado | Si un administrador ha revisado este evento |
Haz clic en cualquier evento para ver los detalles completos, incluyendo la IP de origen, la ubicación resuelta, la huella del dispositivo y los datos del inicio de sesión anterior que activaron la anomalía.
Marca los eventos como revisados para hacer un seguimiento de qué inicios de sesión sospechosos han sido investigados.
CAPTCHA
La integración de CAPTCHA añade un desafío anti-bots a las páginas de autenticación especificadas, reduciendo la creación automática de cuentas, el abuso de inicio de sesión y los ataques de relleno de credenciales.
Proveedores Soportados
| Proveedor | Tipo | Notas |
|---|---|---|
| Cloudflare Turnstile | Sin desafío / invisible | Recomendado. No se requiere interacción del usuario en la mayoría de los casos. |
| hCaptcha | Desafío de imágenes | Alternativa centrada en la privacidad a reCAPTCHA |
| reCAPTCHA v3 | Basado en puntuación / invisible | Basado en puntuación, no se muestra ningún desafío explícito a los usuarios |
Configuración
Seleccionar un proveedor de CAPTCHA
Ve a Configuración → Seguridad → CAPTCHA y elige tu proveedor en el menú desplegable.
Obtener credenciales del proveedor
- Cloudflare Turnstile: Crea un sitio en dash.cloudflare.com en Turnstile. Copia la Clave del Sitio y la Clave Secreta.
- hCaptcha: Regístrate en hcaptcha.com y crea un sitio. Copia la Clave del Sitio y la Clave Secreta.
- reCAPTCHA v3: Regístrate en google.com/recaptcha . Copia la Clave del Sitio y la Clave Secreta.
Introducir las credenciales en la Consola
Introduce la Clave del Sitio (pública, usada en el navegador) y la Clave Secreta (usada en el lado del servidor para la verificación) en el formulario de configuración de CAPTCHA.
Configurar el activador
| Activador | Comportamiento |
|---|---|
| Siempre | Desafío CAPTCHA en cada carga de página, para cada usuario |
| En Sospechoso | CAPTCHA activado solo cuando la IP o el agente de usuario parecen sospechosos |
| Tras Fallos | CAPTCHA activado después de un número configurable de intentos de inicio de sesión fallidos |
Elegir qué páginas muestran CAPTCHA
Activa las páginas de autenticación que deben incluir el desafío CAPTCHA:
- Página de inicio de sesión
- Página de registro
- Página de restablecimiento de contraseña
Establecer umbral de puntuación (solo reCAPTCHA v3 y Turnstile)
Para los proveedores basados en puntuación, establece la puntuación mínima para aceptar. Las solicitudes que puntúen por debajo del umbral se rechazan como probables bots. Valor inicial recomendado: 0.5.
Cloudflare Turnstile es el proveedor recomendado porque preserva la privacidad, funciona sin interacción del usuario en la mayoría de los casos (sin puzzles de imágenes) y es gratuito para la mayoría de los volúmenes de tráfico. Si tu aplicación se sirve detrás de Cloudflare, el rendimiento de Turnstile mejora significativamente.
Limitación de Velocidad
Auris aplica limitación de velocidad de ventana deslizante a todos los endpoints de la API para prevenir el abuso y proteger contra condiciones de denegación de servicio. La limitación de velocidad se configura a nivel de plataforma y no es totalmente personalizable desde la Consola, pero los límites actuales son visibles en la Consola.
Niveles de Limitación de Velocidad
Ve a Configuración → Seguridad → Limitación de Velocidad para ver la configuración actual:
| Nivel | Aplica a | Límite Predeterminado | Ventana |
|---|---|---|---|
| Auth | Inicio de sesión, intercambio de tokens, restablecimiento de contraseña, solicitud de magic link | 10 solicitudes | 1 minuto |
| Sensible | Verificación MFA, cambios de configuración de cuenta, cambios de email | 5 solicitudes | 1 minuto |
| API | Todas las solicitudes de API autenticadas | 100 solicitudes | 1 minuto |
| Público | Endpoints no autenticados (descubrimiento OIDC, JWKS, health) | 30 solicitudes | 1 minuto |
Cabeceras de Respuesta de Limitación de Velocidad
Cuando se aplica un límite de velocidad, la API devuelve HTTP 429 Too Many Requests con cabeceras estándar:
X-RateLimit-Limit: 10
X-RateLimit-Remaining: 0
X-RateLimit-Reset: 1736000000
Retry-After: 60Nota: Los umbrales de limitación de velocidad son configurables a nivel de infraestructura en
apps/api/.env. La página de la Consola es de solo lectura y muestra la configuración activa actualmente.
Panel de Control de Protección contra Ataques
Ve a Configuración → Protección contra Ataques para obtener un panel de control general que muestra la actividad de seguridad en todas las capas de protección:
- Intentos Bloqueados Recientes: Gráfico de línea de tiempo de solicitudes bloqueadas por IP en los últimos 7 días
- Bloqueos por Fuerza Bruta: Recuento de bloqueos de cuentas, cuentas más atacadas
- Eventos de Inicio de Sesión Sospechoso: Recuento por severidad, acciones tomadas
- Fallos de CAPTCHA: Tasa de solicitudes rechazadas por el umbral de puntuación de CAPTCHA
Usa este panel de control durante un ataque sospechado para monitorear la efectividad de la protección en tiempo real.
Guías Relacionadas
- Detección de Inicio de Sesión Sospechoso — Referencia Técnica — Cómo funcionan la búsqueda GeoIP y la detección de viaje imposible
- MFA Adaptativo — Aplicación de MFA basada en puntuación de riesgo
- API de Reglas de IP — Gestionar reglas de IP de forma programática a través de la API REST
- Integración de CAPTCHA — Guía para desarrolladores sobre integración CAPTCHA personalizada