Buenas prácticas de seguridad
Guía para integrar de forma segura la API de NU Signal Partners.
Proteja los secretos
- Los secretos de claves y sales de ID solo se muestran o conocen una vez. Guárdelos en un gestor; nunca en control de código, bundles de cliente, registros ni informes de error.
- Si se expone un secreto, revóquelo o rótelo de inmediato (Claves de API).
Use las claves solo en el servidor
- Llame a la API desde el backend. Nunca incluya claves
nsp_test_onsp_live_en navegadores, apps móviles ni clientes distribuidos. - Pase por su servidor todo flujo iniciado por el cliente, como pedir tokens, para mantener privados la clave y la sal del espectador.
Rote las claves con regularidad
- Rote periódicamente y ante sospecha de exposición con overlap-and-revoke: cree, despliegue, verifique y revoque la clave anterior. Revocar no cancela tokens ni sesiones ya emitidos; caducan por su TTL, así que manténgalo corto.
Aplique hash al ID del espectador: sin PII
viewer_id_hashdebe serSHA-256(stable_viewer_id + salt), calculado por usted. Production acepta exactamente 64 caracteres hexadecimales en minúscula. Nunca envíe emails, teléfonos ni ID de dispositivo sin tratar. NU no recibe ni guarda PII original (API de reproducción).- La misma regla se aplica a
preferences: envíe solo preferencias sin PII. Los valores con@o espacios se rechazan con422 validation_failed.
Restrinja orígenes e IP
- Configure
allowed_originspara emitir tokens solo a sus dominios yallowed_ipspara limitar las solicitudes a sus servidores (Claves de API).
Use ámbitos de privilegio mínimo
- Conceda a cada clave solo lo necesario; por ejemplo, la ingesta necesita
events:write, nosettlement:dispute. Separe cargas masivas y sensibles (Autenticación). - Mantenga
api_keys:writesolo en una clave operativa de bóveda. No conceda gestión de claves a claves de reproducción o eventos.
No exponga las URL de reproducción
webview_urly los manifests HLS/DASH firmados duran poco (1.800 segundos por defecto, máximo 7.200; tope predeterminado de Production 1.800) e incluyen tokens. Trátelos como secretos: no los registre, almacene ni comparta trasexpires_at, ni incluyawebview_urlen enlaces compartibles. Reemita y abrawebview_urlsolo en el WebView o iframe del espectador.