AWS Security ChangesHomeSearch

AWS guidance documentation change

Service: guidance · 2026-04-04 · Documentation medium

File: guidance/latest/connected-mobility-on-aws/simulation-platform.md

Summary

Updated simulation architecture to use isolated virtual CAN interfaces per vehicle and clarified EC2-backed tasks for FleetWise Edge mode.

Security assessment

The change introduces isolation of virtual CAN interfaces (vcan0, vcan1, etc.) per vehicle to prevent cross-contamination, which is a security best practice for multi-tenant simulations. However, there's no evidence this addresses a specific security incident. The documentation now explicitly mentions isolation as a security feature.

Diff

diff --git a/guidance/latest/connected-mobility-on-aws/simulation-platform.md b/guidance/latest/connected-mobility-on-aws/simulation-platform.md
index ae3164541..91b639a95 100644
--- a//guidance/latest/connected-mobility-on-aws/simulation-platform.md
+++ b//guidance/latest/connected-mobility-on-aws/simulation-platform.md
@@ -45 +45 @@ The local simulation service is a Python Flask application (`services/simulation
-    2. Creates a virtual CAN bus interface (`vcan0`) inside the container.
+    2. Creates virtual CAN bus interfaces (`vcan0`, `vcan1`, etc.) — one per vehicle for isolation.
@@ -64 +64 @@ The cloud simulation service runs on AWS infrastructure, eliminating the need fo
-  * **ECS Cluster** — An ECS cluster with Fargate capacity runs simulation worker tasks.
+  * **ECS Cluster** — An ECS cluster runs simulation tasks using Fargate (MQTT Direct) or EC2-backed capacity (FleetWise Edge). EC2 instances are t4g.small ARM64 with Amazon Linux 2023 ECS-optimized AMI.
@@ -66 +66 @@ The cloud simulation service runs on AWS infrastructure, eliminating the need fo
-  * **Worker Tasks** — Each simulation spawns a Fargate task running the same `realtime_telemetry_simulator.py` container image used locally.
+  * **Worker Tasks** — In MQTT Direct mode, a single Fargate task runs the simulator. In FleetWise Edge mode, two separate EC2-backed tasks run on the same host: `fwe-agent` (FleetWise Edge Agent) and `fwe-simulator` (Python simulator with python-can). Both share virtual CAN interfaces (vcan0, vcan1…​) via HOST network mode for per-vehicle isolation.
@@ -79 +79 @@ The cloud simulation service runs on AWS infrastructure, eliminating the need fo
-  3. The Lambda calls `ecs:RunTask` to launch a Fargate task:
+  3. The Lambda calls `ecs:RunTask` to launch ECS tasks:
@@ -81 +81 @@ The cloud simulation service runs on AWS infrastructure, eliminating the need fo
-    1. In **MQTT Direct** mode: a single container (`worker`) runs the simulator with network access to IoT Core.
+    1. In **MQTT Direct** mode: a single Fargate task (`sim-worker`) runs the simulator with network access to IoT Core.
@@ -83 +83 @@ The cloud simulation service runs on AWS infrastructure, eliminating the need fo
-    2. In **FleetWise Edge** mode: a task with two containers — `fwe-simulator` (generates CAN signals) and `fwe-agent` (collects and uploads). The Lambda retrieves the vehicle’s IoT certificate from DynamoDB and passes it to the FWE agent container as an environment variable.
+    2. In **FleetWise Edge** mode: two separate EC2-backed tasks — `fwe-agent` (long-lived, runs the FleetWise Edge Agent binary) and `fwe-simulator` (per-trip, generates CAN signals on the assigned vcan interface). The Lambda retrieves the vehicle’s IoT certificate from DynamoDB and passes it to the FWE agent container. Each vehicle gets a unique vcan interface (vcan0, vcan1, vcan2…​) to prevent cross-contamination.