Este documento proporciona una guía de inicio rápido para integrar la seguridad de la API Approov en su backend ASP.Net. Approov verifica que las solicitudes se originen en versiones confiables de aplicaciones móviles, lo que mejora la seguridad de su API. Esta guía cubre la configuración de la CLI de Approov, el registro de su dominio API, la configuración de claves (simétricas y asimétricas), la adición de dependencias y la implementación del middleware del token de Approov en su aplicación ASP.Net. Más detalles y solución de problemas están vinculados dentro.
Inicio rápido de aprobación: verificación de tokens ASP.Net
Approov es una solución de seguridad API que se utiliza para verificar que las solicitudes recibidas por sus servicios backend se originen en versiones confiables de sus aplicaciones móviles.
Este repositorio implementa el código de verificación de solicitud del lado del servidor Approov para el marco ASP.Net, que realiza la verificación antes de permitir que el punto final API procese el tráfico válido.
Inicio rápido de integración de Approov
El inicio rápido se probó con los siguientes sistemas operativos:
Primero, configure la CLI de Approov.
Ahora, registre el dominio API para el cual Approov emitirá tokens:
NOTA: De forma predeterminada, se utiliza una clave simétrica (HS256) para firmar el token de Approov en una certificación válida de la aplicación móvil para cada dominio de API que se agrega con la CLI de Approov, de modo que todas las API compartirán el mismo secreto y el backend debe tenga cuidado de mantener este secreto seguro.
Una alternativa más segura es utilizar claves asimétricas (RS256 u otras) que permiten utilizar un conjunto de claves diferente en cada dominio API y verificar el token de Approov con una clave pública que solo puede verificar, pero no firmar, los tokens de Approov. .
Para implementar la clave asimétrica, debe pasar del uso del algoritmo HS256 simétrico a un algoritmo asimétrico, por ejemplo RS256, que requiere que primero agregue una nueva clave y luego la especifique al agregar cada dominio API. Visite Gestión de conjuntos de claves en la documentación de Approov para obtener más detalles.
A continuación, habilite su función de administrador de Approov con:
Para PowerShell de Windows:
Ahora, obtenga su Approov Secret con Approov CLI:
A continuación, agregue el secreto de Approov al archivo .env de su proyecto:
Ahora, agregue a su archivo appname.csproj las dependencias:
A continuación, en Program.cs cargue los secretos del archivo .env e inyéctelos en AppSettiongs:
Ahora, agreguemos la clase para cargar la configuración de la aplicación:
A continuación, agregue la clase ApproovTokenMiddleware a su proyecto:
NOTA: Cuando falla la validación del token Approov, devolvemos un 401 con un cuerpo vacío, porque no queremos darle pistas a un atacante sobre el motivo por el que falló la solicitud, y puedes ir aún más lejos devolviendo un 400.
¿No hay suficientes detalles en el inicio rápido básico? No se preocupe, consulte los inicios rápidos detallados que contienen un conjunto de instrucciones más completo, incluido cómo probar la integración de Approov.
Más información
Reloj del sistema
Para verificar correctamente los tiempos de vencimiento de los tokens Approov, es muy importante que el servidor backend sincronice automáticamente el reloj del sistema a través de la red con una fuente horaria autorizada. En Linux esto normalmente se hace con un servidor NTP.
Asuntos
Si encuentra algún problema mientras sigue nuestras instrucciones, simplemente infórmenos aquí, con los pasos para reproducirlo, y lo solucionaremos y/o lo guiaremos a la ruta correcta.
TOC
Enlaces útiles
Si desea explorar la solución Approov con más profundidad, ¿por qué no prueba uno de los siguientes enlaces como punto de partida?
TOC