Watch-IP

Seguridad de Watch-IP y manejo de claves de API

Esta página describe los controles de acceso realmente implementados hoy en la API de Watch-IP: cómo funcionan los dos tipos de clave, cómo se aplican los orígenes, cómo se pueden rotar o revocar las claves, y cómo reportar un problema de seguridad. No afirma una certificación de cumplimiento ni una auditoría de seguridad independiente — ninguna se ha completado al momento de escribir esto.

Dos tipos de clave, dos controles distintos

Las claves publicables (usadas para GET /v1/geo y POST /v1/email/validate) están diseñadas para ejecutarse en código de navegador y no son secretas — el control es la lista de orígenes permitidos configurada para la clave, verificada contra el encabezado Origin/Referer de la solicitud. Las claves secretas (usadas para GET/POST /v1/lookup y POST /v1/risk/check) son credenciales de servidor a servidor sin ninguna verificación de origen, ya que no hay un encabezado Origin de navegador en una llamada de backend; trata una clave secreta como la contraseña de una base de datos, no como un identificador público. Consulta autenticación para conocer el formato de solicitud que espera cada tipo de clave.

Cómo se aplica la restricción por origen

Una solicitud con clave publicable desde un origen que no está en la lista permitida de la clave recibe un 403 sin ningún encabezado Access-Control-Allow-Origin configurado. Que el navegador bloquee esa respuesta antes de que el JavaScript de tu página pueda leerla es la aplicación real del control — el cuerpo del error JSON es secundario. La restricción por origen no hace que la clave en sí sea secreta, y no impide que un cliente que no sea un navegador envíe un encabezado Origin falsificado; protege específicamente la superficie de llamadas desde el navegador.

Transporte y almacenamiento

El tráfico hacia la API y el panel está cifrado en tránsito (TLS/HTTPS); la API no acepta HTTP en texto plano para solicitudes autenticadas con clave. Las claves de API se almacenan con hash (SHA-256), no en texto plano, de modo que un compromiso de la base de datos por sí solo no expondría valores de clave utilizables.

Rotación y revocación

Puedes revocar o rotar una clave desde el panel. La revocación no es instantánea en todas partes: la validez de la clave se almacena en caché hasta por 5 minutos después de una consulta, así que una clave revocada puede seguir siendo aceptada hasta 5 minutos después de que la revoques — ten esto en cuenta al calcular qué tan rápido puedes cortar el acceso ante un posible compromiso, y rota de forma proactiva en lugar de depender solo de la revocación para un incidente urgente.

Limitación de tasa

Cada clave tiene un límite de tasa por cuenta de cliente en una ventana fija de un minuto, compartida entre los endpoints que llames — no un presupuesto por ruta. Esto limita el daño que una sola clave filtrada o mal utilizada puede causar en una ventana corta, aunque no sustituye por sí solo la rotación de una clave comprometida.

Cómo reportar un problema de seguridad

Escribe a security@watch-ip.com si crees que una clave ha sido comprometida o si encontraste un problema de seguridad en la API o el panel. Actualmente no operamos un programa público de recompensas por errores (bug bounty) ni contamos con una certificación de seguridad de terceros — si esto cambia, esta página lo indicará con una fecha, no con una insignia.

Páginas relacionadas