Descripción general de seguridad

En este documento, se explica cómo Fleet Engine protege el intercambio de información entre las tres entornos principales del sistema de Fleet Engine: tu servidor de backend, el servidor de Fleet Engine y los sitios web y las aplicaciones cliente.

Fleet Engine administra la seguridad de dos formas fundamentales, mediante el principio de privilegio mínimo:

  • Credenciales predeterminadas de la aplicación (ADC): Para entornos de alto privilegio, como las comunicaciones de servidor a servidor. Se usa cuando tu servidor de backend crea vehículos y viajes, y los administra en Fleet Engine. Para obtener más detalles, consulta Credenciales predeterminadas de la aplicación.

  • Tokens web JSON (JWT): para entornos de baja confianza, como el aplicaciones que se ejecutan en smartphones y navegadores. Se usa para lograr operaciones con menos privilegios, como la actualización del vehículo en Fleet Engine.

    Los JWT requeridos por los entornos de baja confianza son generados y emitidos por de backend para proteger las claves secretas de las cuentas de servicio y, además, incluir reclamos adicionales específicos de Fleet Engine. Para obtener más detalles, consulta Tokens web JSON.

    Por ejemplo, si tienes una app de controlador, los conductores accederán a los datos de Fleet Engine. a través de la aplicación. La aplicación se autentica mediante los JWT que obtiene de tu de backend. Los reclamos de JWT incluidos, junto con el rol de la cuenta de servicio, determinan a qué partes del sistema tiene acceso la app del conductor y qué puede hacer. Este enfoque limita el acceso solo a los datos necesarios para completar sus tareas de conducción.

Fleet Engine usa estos enfoques de seguridad para proporcionar lo siguiente:

  • La autenticación verifica la identidad de la entidad que realiza la solicitud. Fleet Engine usa ADC para entornos de alta confianza y JWT para entornos de baja confianza.

  • La autorización especifica a qué recursos tiene acceso una entidad autenticada. Fleet Engine usa cuentas de servicio con roles de Google Cloud IAM, además de JWT que garantizan que las entidades autenticadas tengan permisos para ver o cambiar los datos que solicitan.

Configuración de seguridad de los servidores y clientes

Para habilitar la seguridad con Fleet Engine, configura las cuentas y la seguridad necesarias en tu servidor de backend, en tus aplicaciones cliente y en tus sitios web.

En el siguiente diagrama, se muestra una descripción general de los pasos para configurar la seguridad de tu del servidor de backend y las aplicaciones cliente.

Diagrama del flujo de seguridad durante la configuración del servidor y la app cliente
autenticación

Para obtener más detalles, consulta las siguientes secciones.

Configuración de seguridad del servidor de backend

Un administrador de la flota debe seguir estos pasos:

  1. Crea y configura cuentas de servicio:

    1. En la consola de Google Cloud, crea cuentas de servicio.

    2. Asignar roles específicos de IAM a las cuentas de servicio

    3. Configura tu servidor de backend con las cuentas de servicio creadas. Para consulta Roles de cuenta de servicio.

  2. Configura la comunicación segura con Fleet Engine (ADC): Configura tu backend para que se comunique con tu instancia de Fleet Engine con las credenciales predeterminadas de la aplicación con la cuenta de servicio de administrador * adecuada. Para más detallados, consulta Credenciales predeterminadas de la aplicación.

  3. Configura una comunicación segura con apps cliente (JWT): Crea un generador de tokens web JSON para crear JWT con los reclamos adecuados para aplicaciones cliente y sitios web de supervisión. Para obtener más información, consulta Cómo emitir tokens web JSON.

Configuración de seguridad para aplicaciones

Los desarrolladores de aplicaciones deben incluir una forma de recuperar los tokens web JSON generados por el servidor de backend en las apps o sitios web cliente y usarlos para comunicarse con Fleet Engine. Para obtener detalles, consulta las instrucciones de configuración en la Driver Experience o consumidor de Google Experience para el aplicaciones que necesitas.

Flujo de seguridad de la app cliente y del servidor

En el siguiente diagrama de secuencias, se muestran el servidor y la app cliente de autenticación y autorización con Fleet Engine a través de ADC con el el servidor de backend y los JWT con las aplicaciones y los sitios web del cliente.

Diagrama del flujo de seguridad durante la operación de autenticación de la app del cliente y del servidor

  • Tu servidor de backend crea vehículos y viajes o tareas en Fleet Engine.

  • El servidor de backend envía un viaje o una tarea a un vehículo: Cuando está activa, la app del controlador recupera la asignación.

  • Tu servidor de backend: Firma y emite un JWT para la cuenta de servicio correspondiente con el rol de IAM adecuado para la tarea o el viaje asignados.

  • La app cliente: La app cliente usa el JWT recibido para enviar actualizaciones de ubicación del vehículo a Fleet Engine.

¿Qué sigue?