1. Inicio
  2. Documentos
  3. Administra tu cuenta
  4. Cifrado de tráfico API REST

Cifrado de tráfico API REST

Esta sección explica cómo Mmasivo maneja el cifrado del tráfico público y cómo se manejan los cambios de seguridad para evitar interrupciones en el uso de nuestra API REST.

 

Cifrado TLS del tráfico HTTP

Mmasivo utiliza Transport Layer Security (TLS), conocido como su predecesor Secure Socket Layer (SSL), para transferir datos de forma segura a través de la red.

Hemos asegurado el uso de las versiones y algoritmos criptográficos más seguros dentro del protocolo TLS, que tiene múltiples iteraciones.

La siguiente lista contiene las versiones TLS de API REST y los conjuntos de cifrado compatibles:

  • TLSv1.3 con suites en el orden preferido del servidor:
    • TLS_AES_256_GCM_SHA384
    • TLS_CHACHA20_POLY1305_SHA256
    • TLS_AES_128_GCM_SHA256
    • TLS_AES_128_CCM_SHA256
  • TLSv1.2 con suites en el orden preferido del servidor:
    • TLS_ECDHE_RSA_WITH_AES_128_GCM_SHA256
    • TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384
    • TLS_DHE_RSA_WITH_AES_128_GCM_SHA256
    • TLS_DHE_RSA_WITH_AES_256_GCM_SHA384
    • TLS_DHE_RSA_WITH_AES_128_CCM
    • TLS_DHE_RSA_WITH_AES_256_CCM
    • TLS_DHE_RSA_WITH_AES_128_CCM_8
    • TLS_DHE_RSA_WITH_AES_256_CCM_8
    • TLS_ECDHE_RSA_WITH_AES_128_CBC_SHA256
    • TLS_ECDHE_RSA_WITH_AES_256_CBC_SHA384
    • TLS_DHE_RSA_WITH_AES_128_CBC_SHA256
    • TLS_DHE_RSA_WITH_AES_256_CBC_SHA256

Cambios TLS/SSL

Para brindar la mejor experiencia transparente a nuestros clientes, cumplimos con la siguiente política de cambios de TLS:

  • Para cambios en la versión TLS o en el conjunto de cifrado, se notificará a los clientes con al menos 6 meses de anticipación.
  • Para los cambios en el conjunto de cifrado TLS, se notificará a los clientes con al menos 60 días de anticipación.
  • Para cambios de certificado SSL, se enviará una notificación al menos 60 días antes del cambio de certificado SSL que incluirá información sobre cualquier cambio en la cadena de confianza. Antes de emitir cualquier notificación, el certificado se instalará en nuestro punto final de prueba TLS.

Todos los cambios se publicarán en nuestra  página de Estado con tres estados:

  1. Programado : se anuncia el cambio de certificado y hay un nuevo certificado disponible en el punto final de prueba.
  2. En curso : la renovación está en curso.
  3. Completado : se completó el reemplazo del certificado.

Tenga en cuenta que en caso de una emergencia de seguridad, como el descubrimiento de una vulnerabilidad del protocolo TLS, se implementarán ajustes esenciales a TLS de inmediato para mantener la seguridad del producto. Posteriormente, los clientes serán notificados de inmediato sobre estos cambios.

Para cualquier pregunta adicional, comuníquese con  Soporte Mmasivo.

Cambios de certificado TLS/SSL

Para el cifrado TLS, utilizamos certificados SSL firmados por DigiCert como una de las autoridades de certificación (CA) más utilizadas.

Los puntos finales de la API REST pública tienen un certificado válido por 1 año y se renuevan en consecuencia. Los clientes que no fijen el certificado y tengan habilitadas las actualizaciones automáticas del almacén de confianza no se verán afectados por estos cambios.

Casos impactados por los cambios

Fijación de certificado de hoja

Esta práctica tiene altos costes de agilidad y limitaciones por lo que  no la recomendamos . Sin embargo, si decide utilizar esta práctica, asegúrese de:

  • Supervise y actualice proactivamente los certificados anclados de manera oportuna.
  • Tenga presente la política de reemplazo de certificados de Mmasivo.

Como alternativa más segura, sugerimos utilizar mTLS (autenticación de certificado de cliente). Para obtener más información, comuníquese con  Soporte Mmasivo.

Almacén fiduciario operado manualmente

La mayoría de las tiendas de confianza se actualizan automáticamente, pero algunos clientes pueden optar por operar sus tiendas de confianza manualmente. Confiamos en la PKI de DigiCert: todas las CA se pueden descargar desde el  sitio web de su CA raíz .

Si no está obligado a confiar en una sola CA, le recomendamos instalar CA en las que  Mozilla confíe  en formato PEM.

NOTA

 

Antes de los cambios en la cadena de confianza, agregaremos información sobre el nuevo nombre común (CN) de CA con al menos 60 días de anticipación, lo que permitirá la importación de nuevas CA además de las existentes.

 

Puntos finales de prueba TLS

Cuando se programe un cambio de certificado, pondremos a disposición un nuevo certificado en los puntos finales de prueba. Los puntos finales de prueba TLS deben usarse desde entornos de producción desde donde se accede a los servicios de Mmasivo y usar el mismo almacén de confianza que el servicio que los integra.

  • RIZO
tls-test.api-<location>.mmasivo.com

como probar

Los certificados que no sean comodines se instalarán en el mismo punto final y se podrán probar con el comando curl . Por ejemplo, con api.mmasivo.com , 172.201.176.225 es la IP de nuestro punto final de prueba TLS:

  • RIZO
curl -vi --resolve api.mmasivo.com:443:172.201.176.225 https://api.mmasivo.com

En el siguiente ejemplo, se utiliza una ubicación de EE. UU. para probar certificados comodín:

  • RIZO
curl https://tls-test.api-us.mmasivo.com

A continuación se muestra un ejemplo de una respuesta JSON de punto final de prueba TLS exitosa:

  • JSON
{
  "certificate": {
    "fingerprintSHA256hex": "D0B356D14E8C9BCD48AF9BE3AA38014DE95012FB2A19363E63474D0476BF3E98",
    "tlsVersion": "TLSv1.3",
    "usedCipher": "TLS_AES_256_GCM_SHA384",
    "commonName": "*.api.mmasivo.com",
    "sni": "tls-test.api.mmasivo.com",
    "issuedBy": "RapidSSL TLS RSA CA G1",
    "expire": "240711235959Z"
  }
}

Para comprender mejor la respuesta , consulte los siguientes elementos:

  • huellas dactilaresSHA256hex: huella digital SHA256 en formato hexadecimal del certificado SSL del servidor.
  • tlsVersion: versión TLS utilizada para el cifrado https .
  • usedCipher: algoritmo de cifrado utilizado para el protocolo de enlace SSL.
  • commonName: CN que se encuentra en el certificado del servidor.
  • sni: SNI (indicación de nombre de servidor) utilizado para elegir el certificado SSL correcto.
  • Emitido por: CN de la CA que firmó el certificado hoja.
  • expirar: fecha de vencimiento del certificado SSL como una cadena formateada AAMMDDhhmmss[Z].

Para los clientes que operan manualmente el almacén de confianza y/o anhelan nuestros certificados hoja o intermedios, recomendamos encarecidamente :

  1. Esté atento a los cambios : suscríbase a la página de estado .
  2. Prueba : cuando se anuncie un cambio, utilice los puntos finales de prueba proporcionados para probar las conexiones TLS con cualquier cliente http .
  3. Actualizar configuración : si la conexión TLS falla, actualice la configuración SSL local.
  4. Verificar : después de cada cambio de configuración local, verifique si el punto final Conectar para probar TLS funciona.

Nota : Si los preparativos no se completan a tiempo, los cambios no se pospondrán ni revertirán. Sin embargo, estamos más que dispuestos a brindar soporte técnico para adoptar los nuevos cambios lo más rápido posible. Para obtener más información, comuníquese con  Soporte Mmasivo.

Posibles errores de TLS/SSL y cómo resolverlos

Hay muchos errores comunes de TLS/SSL para los cuales intentamos brindar el mejor soporte para resolverlos lo antes posible. Puede detectar posibles problemas comprobando nuestros puntos finales de prueba antes del reemplazo programado.

Para ser más eficiente, verifique los siguientes problemas comunes y proporciónenos información útil.

Errores de cadena TLS

El error de cadena TLS indica que el sistema local o cliente no tiene la CA de Mmasivo configurada como se esperaba:

Ejemplo de error de CA desconocida de Curl :

  • RIZO
curl: (60) SSL certificate problem: self signed certificate in certificate chain
More details here: https://curl.haxx.se/docs/sslcerts.html
 
curl failed to verify the legitimacy of the server and therefore could not
establish a secure connection to it. To learn more about this situation and
how to fix it, please visit the web page mentioned above.

Soluciones posibles :

  1. Verifique qué certificados de CA están presentes en el sistema del cliente, descargue e instale las CA en las que  Mozilla confía  en el formato PEM.
  2. Verifique que el cliente cargue el certificado de CA desde el directorio correcto.

Errores de protocolo de enlace SSL

Los errores de protocolo de enlace SSL también se manifiestan comúnmente como errores de protocolo o errores de cifrado. Ocurren cuando el cliente no admite versiones TLS o cifrados.

Ejemplo de error de protocolo curl :

  • RIZO
curl: (35) error:1425F102:SSL routines:ssl_choose_client_version:unsupported protocol

Ejemplo de error de protocolo de enlace de curl debido a cifrados de cliente no admitidos :

  • RIZO
curl: (35) error:14094410:SSL routines:ssl3_read_bytes:sslv3 alert handshake failure

Soluciones posibles :

  1. Si el cliente está detrás de un firewall, inspección SSL o VPN, verifique si admite TLS y cifrados que admite Mmasivo.
  2. Compruebe si el cliente admite cifrados y versiones TLS disponibles.
  3. Configure explícitamente el cliente para utilizar la última versión de TLS si es posible.

¿Cómo podemos ayudarte?