Métricas del lado de la nube - AWS IoT Device Defender

Métricas del lado de la nube

Al crear un perfil de seguridad, puede especificar el comportamiento esperado de su dispositivo IoT configurando comportamientos y umbrales para las métricas generadas por los dispositivos IoT. Las siguientes son métricas del lado de la nube, que son métricas de AWS IoT.

Tamaño del mensaje (aws:message-byte-size)

El número de bytes de un mensaje. Utilice esta métrica para especificar el tamaño máximo o mínimo (en bytes) de cada mensaje transmitido desde un dispositivo a AWS IoT.

Compatible con: Rules Detect | ML Detect

Operadores: less-than | less-than-equals | greater-than | greater-than-equals

Valor: un entero no negativo

Unidades: bytes

ejemplo
{ "name": "Max Message Size", "metric": "aws:message-byte-size", "criteria": { "comparisonOperator": "less-than-equals", "value": { "count": 1024 }, "consecutiveDatapointsToAlarm": 1, "consecutiveDatapointsToClear": 1 }, "suppressAlerts": true }
ejemplo Ejemplo en el que se utiliza statisticalThreshold:
{ "name": "Large Message Size", "metric": "aws:message-byte-size", "criteria": { "comparisonOperator": "less-than-equals", "statisticalThreshold": { "statistic": "p90" }, "durationSeconds": 300, "consecutiveDatapointsToAlarm": 1, "consecutiveDatapointsToClear": 1 }, "suppressAlerts": true }
ejemplo Ejemplo de uso de ML Detect
{ "name": "Message size ML behavior", "metric": "aws:message-byte-size", "criteria": { "consecutiveDatapointsToAlarm": 1, "consecutiveDatapointsToClear": 1, "mlDetectionConfig": { "confidenceLevel": "HIGH" } }, "suppressAlerts": true }

Se genera una alarma para un dispositivo si, durante tres períodos consecutivos de cinco minutos, transmite mensajes cuyo tamaño acumulado es mayor que el medido para el 90 por ciento de todos los demás dispositivos que informan sobre este comportamiento de perfil de seguridad.

Mensajes enviados (aws:num-messages-sent)

El número de mensajes enviados por un dispositivo durante un período de tiempo determinado.

Utilice esta métrica para especificar el número máximo o mínimo de mensajes que pueden enviarse entre AWS IoT y cada dispositivo en un período de tiempo determinado.

Compatible con: Rules Detect | ML Detect

Operadores: less-than | less-than-equals | greater-than | greater-than-equals

Valor: un entero no negativo

Unidades: mensajes

Duración: un entero no negativo. Los valores válidos son 300, 600, 900, 1800 o 3600 segundos.

ejemplo
{ "name": "Out bound message count", "metric": "aws:num-messages-sent", "criteria": { "comparisonOperator": "less-than-equals", "value": { "count": 50 }, "durationSeconds": 300, "consecutiveDatapointsToAlarm": 1, "consecutiveDatapointsToClear": 1 }, "suppressAlerts": true }
ejemplo Ejemplo en el que se utiliza statisticalThreshold:
{ "name": "Out bound message rate", "metric": "aws:num-messages-sent", "criteria": { "comparisonOperator": "less-than-equals", "statisticalThreshold": { "statistic": "p99" }, "durationSeconds": 300, "consecutiveDatapointsToAlarm": 1, "consecutiveDatapointsToClear": 1 }, "suppressAlerts": true }
ejemplo Ejemplo de uso de ML Detect
{ "name": "Messages sent ML behavior", "metric": "aws:num-messages-sent", "criteria": { "consecutiveDatapointsToAlarm": 1, "consecutiveDatapointsToClear": 1, "mlDetectionConfig": { "confidenceLevel": "HIGH" } }, "suppressAlerts": true }

Mensajes recibidos (aws:num-messages-received)

El número de mensajes recibidos por un dispositivo durante un período de tiempo determinado.

Utilice esta métrica para especificar el número máximo o mínimo de mensajes que pueden recibirse entre AWS IoT y cada dispositivo en un período de tiempo determinado.

Compatible con: Rules Detect | ML Detect

Operadores: less-than | less-than-equals | greater-than | greater-than-equals

Valor: un entero no negativo

Unidades: mensajes

Duración: un entero no negativo. Los valores válidos son 300, 600, 900, 1800 o 3600 segundos.

ejemplo
{ "name": "In bound message count", "metric": "aws:num-messages-received", "criteria": { "comparisonOperator": "less-than-equals", "value": { "count": 50 }, "durationSeconds": 300, "consecutiveDatapointsToAlarm": 1, "consecutiveDatapointsToClear": 1 }, "suppressAlerts": true }
ejemplo Ejemplo en el que se utiliza statisticalThreshold:
{ "name": "In bound message rate", "metric": "aws:num-messages-received", "criteria": { "comparisonOperator": "less-than-equals", "statisticalThreshold": { "statistic": "p99" }, "durationSeconds": 300, "consecutiveDatapointsToAlarm": 1, "consecutiveDatapointsToClear": 1 }, "suppressAlerts": true }
ejemplo Ejemplo de uso de ML Detect
{ "name": "Messages received ML behavior", "metric": "aws:num-messages-received", "criteria": { "consecutiveDatapointsToAlarm": 1, "consecutiveDatapointsToClear": 1, "mlDetectionConfig": { "confidenceLevel": "HIGH" } }, "suppressAlerts": true }

Fallos de autorización (aws:num-authorization-failures)

Utilice esta métrica para especificar la cantidad máxima de errores de autorización permitidos para cada dispositivo en un período de tiempo determinado. Se produce un error de autorización cuando se deniega una solicitud desde un dispositivo a AWS IoT (por ejemplo, si un dispositivo intenta publicar en un tema para el que no tiene suficientes permisos).

Compatible con: Rules Detect | ML Detect

Unidad: errores

Operadores: less-than | less-than-equals | greater-than | greater-than-equals

Valor: un entero no negativo

Duración: un entero no negativo. Los valores válidos son 300, 600, 900, 1800 o 3600 segundos.

ejemplo
{ "name": "Authorization Failures", "metric": "aws:num-authorization-failures", "criteria": { "comparisonOperator": "less-than", "value": { "count": 5 }, "durationSeconds": 300, "consecutiveDatapointsToAlarm": 1, "consecutiveDatapointsToClear": 1 }, "suppressAlerts": true }
ejemplo Ejemplo en el que se utiliza statisticalThreshold:
{ "name": "Authorization Failures", "metric": "aws:num-authorization-failures", "criteria": { "comparisonOperator": "less-than-equals", "statisticalThreshold": { "statistic": "p50" }, "durationSeconds": 300, "consecutiveDatapointsToAlarm": 1, "consecutiveDatapointsToClear": 1 }, "suppressAlerts": true }
ejemplo Ejemplo de uso de ML Detect
{ "name": "Authorization failures ML behavior", "metric": "aws:num-authorization-failures", "criteria": { "consecutiveDatapointsToAlarm": 1, "consecutiveDatapointsToClear": 1, "mlDetectionConfig": { "confidenceLevel": "HIGH" } }, "suppressAlerts": true }

IP de origen (aws:source-ip-address)

La dirección IP desde la que se ha conectado un dispositivo a AWS IoT.

Utilice esta métrica para especificar un conjunto de enrutamientos entre dominios sin clases (CIDR) permitidos (previamente denominado lista blanca) y denegados (previamente denominado lista negra) desde los que cada dispositivo debe o no conectarse a AWS IoT.

Compatible con: Rules Detect

Operadores: in-cidr-set | not-in-cidr-set

Valores: una lista de CIDR

Unidades: n/a

ejemplo
{ "name": "Denied source IPs", "metric": "aws:source-ip-address", "criteria": { "comparisonOperator": "not-in-cidr-set", "value": { "cidrs": [ "12.8.0.0/16", "15.102.16.0/24" ] } }, "suppressAlerts": true }

Intentos de conexión (aws:num-connection-attempts)

Número de veces que un dispositivo intenta realizar una conexión durante un periodo determinado.

Utilice esta métrica para especificar el número máximo o mínimo de intentos de conexión para cada dispositivo. Se cuentan los intentos correctos y los no correctos.

Compatible con: Rules Detect | ML Detect

Operadores: less-than | less-than-equals | greater-than | greater-than-equals

Valor: un entero no negativo

Unidades: intentos de conexión

Duración: un entero no negativo. Los valores válidos son 300, 600, 900, 1800 o 3600 segundos.

ejemplo
{ "name": "Connection Attempts", "metric": "aws:num-connection-attempts", "criteria": { "comparisonOperator": "less-than-equals", "value": { "count": 5 }, "durationSeconds": 600, "consecutiveDatapointsToAlarm": 1, "consecutiveDatapointsToClear": 1 }, "suppressAlerts": true }
ejemplo Ejemplo en el que se utiliza statisticalThreshold:
{ "name": "Connection Attempts", "metric": "aws:num-connection-attempts", "criteria": { "comparisonOperator": "less-than-equals", "statisticalThreshold": { "statistic": "p10" }, "durationSeconds": 300, "consecutiveDatapointsToAlarm": 1, "consecutiveDatapointsToClear": 1 }, "suppressAlerts": true }
ejemplo Ejemplo de uso de ML Detect
{ "name": "Connection attempts ML behavior", "metric": "aws:num-connection-attempts", "criteria": { "consecutiveDatapointsToAlarm": 1, "consecutiveDatapointsToClear": 1, "mlDetectionConfig": { "confidenceLevel": "HIGH" } }, "suppressAlerts": false }

Desconexiones (aws:num-disconnects)

Número de veces que un dispositivo se desconecta de AWS IoT durante un periodo de tiempo determinado.

Utilice esta métrica para especificar el número máximo o mínimo de veces que un dispositivo se ha desconectado de AWS IoT durante un periodo de tiempo determinado.

Compatible con: Rules Detect | ML Detect

Operadores: less-than | less-than-equals | greater-than | greater-than-equals

Valor: un entero no negativo

Unidades: desconexiones

Duración: un entero no negativo. Los valores válidos son 300, 600, 900, 1800 o 3600 segundos.

ejemplo
{ "name": "Disconnections", "metric": "aws:num-disconnects", "criteria": { "comparisonOperator": "less-than-equals", "value": { "count": 5 }, "durationSeconds": 600, "consecutiveDatapointsToAlarm": 1, "consecutiveDatapointsToClear": 1 }, "suppressAlerts": true }
ejemplo Ejemplo en el que se utiliza statisticalThreshold:
{ "name": "Disconnections", "metric": "aws:num-disconnects", "criteria": { "comparisonOperator": "less-than-equals", "statisticalThreshold": { "statistic": "p10" }, "durationSeconds": 300, "consecutiveDatapointsToAlarm": 1, "consecutiveDatapointsToClear": 1 }, "suppressAlerts": true }
ejemplo Ejemplo de uso de ML Detect
{ "name": "Disconnects ML behavior", "metric": "aws:num-disconnects", "criteria": { "consecutiveDatapointsToAlarm": 1, "consecutiveDatapointsToClear": 1, "mlDetectionConfig": { "confidenceLevel": "HIGH" } }, "suppressAlerts": true }

Duración de la desconexión (aws:disconnect-duration)

El tiempo durante el que un dispositivo permanece desconectado de AWS IoT.

Usa esta métrica para especificar el tiempo máximo durante el que un dispositivo permanece desconectado de AWS IoT.

Compatible con: Rules Detect

Operadores: menores que | menores que iguales

Valor: un entero no negativo (en minutos)

ejemplo
{ "name": "DisconnectDuration", "metric": "aws:disconnect-duration", "criteria": { "comparisonOperator": "less-than-equals", "value": { "count": 5 } }, "suppressAlerts": true }