validate-security-profile-behaviors
Описание
Проверяет спецификацию поведения профиля безопасности Device Defender.
Требуется разрешение на доступ к действию ValidateSecurityProfileBehaviors.
См. также: Документация API AWS
Синтаксис
validate-security-profile-behaviors
--behaviors <value>
[--cli-input-json | --cli-input-yaml]
[--generate-cli-skeleton <value>]
[--debug]
[--endpoint-url <value>]
[--no-verify-ssl]
[--no-paginate]
[--output <value>]
[--query <value>]
[--profile <value>]
[--region <value>]
[--version <value>]
[--color <value>]
[--no-sign-request]
[--ca-bundle <value>]
[--cli-read-timeout <value>]
[--cli-connect-timeout <value>]
[--cli-binary-format <value>]
[--no-cli-pager]
[--cli-auto-prompt]
[--no-cli-auto-prompt]
Параметры
--behaviors (список)
Указывает поведение, при нарушении которого устройством (вещью) генерируется уведомление.
(структура)
Поведение профиля безопасности Device Defender.
name -> (строка)
metric -> (строка)
metricDimension -> (структура)
Измерение параметра в вашем поведении. Например, используя измерение TOPIC_FILTER, вы можете сузить область действия параметра только до MQTT-тем, где имя соответствует заданному шаблону в измерении. Это нельзя использовать с пользовательскими метриками.
dimensionName -> (строка)
operator -> (строка)
dimensionValues измерения. Например, для типа измерения TOPIC_FILTER, оператор IN, сообщение будет учитываться только в том случае, если его тема соответствует одному из фильтров тем. С оператором NOT_IN сообщение будет учитываться только в том случае, если оно не соответствует ни одному из фильтров тем. Оператор необязателен: если он не указан (является null), он будет интерпретирован как IN.criteria -> (структура)
Критерии, определяющие, ведет ли себя устройство нормально по отношению к metric.
Примечание
В консоли IoT вы можете выбрать получение уведомления через Amazon SNS, когда IoT Device Defender обнаружит, что устройство ведет себя аномально.comparisonOperator -> (строка)
Оператор, связывающий измеряемую вещь (metric) с критериями (содержащими value или statisticalThreshold). Допустимые операторы включают:
-
string-list:in-setиnot-in-set -
number-list:in-setиnot-in-set -
ip-address-list:in-cidr-setиnot-in-cidr-set -
number:less-than,less-than-equals,greater-than, иgreater-than-equals
value -> (структура)
Значение для сравнения с metric.
count -> (целое)
comparisonOperator требует числового значения, используйте это для указания числового значения, которое необходимо сравнить с metric.cidrs -> (список)
Если comparisonOperator требует набора CIDR, используйте это для указания этого набора для сравнения с metric.
(строка)
ports -> (список)
Если comparisonOperator требует набора портов, используйте это для указания этого набора для сравнения с metric.
(целое число)
number -> (двойное)
numbers -> (список)
Числовые значения метрики.
(двойное)
strings -> (список)
Строковые значения метрики.
(строка)
durationSeconds -> (целое число)
NUM_MESSAGES_SENT). Для сравнения метрик statisticalThreshhold измерения со всех устройств накапливаются в течение этого временного интервала перед использованием для расчета перцентилей, а затем измерения с отдельного устройства также накапливаются в течение этого временного интервала перед присвоением ранга перцентиля. Не может быть использовано с типами данных метрик на основе списка.consecutiveDatapointsToAlarm -> (целое число)
consecutiveDatapointsToClear -> (целое число)
statisticalThreshold -> (структура)
Статистический ранг (перцентиль), который указывает пороговое значение, по которому поведение определяется как соответствующее или нарушающее поведение.
statistic -> (строка)
durationSeconds) со всех устройств отчётности в вашем аккаунте, и рассчитываются статистические ранги. Затем измерения с устройства собираются в течение того же периода. Если накопленные измерения с устройства превышают или не достигают (comparisonOperator) значение, связанное с указанным перцентилем, то устройство считается соответствующим поведению, в противном случае происходит нарушение.mlDetectionConfig -> (структура)
Конфигурация ML Detect
confidenceLevel -> (строка)
Low, Medium или High.suppressAlerts -> (логическое значение)
exportMetric -> (логическое значение)
Синтаксис JSON:
[
{
"name": "string",
"metric": "string",
"metricDimension": {
"dimensionName": "string",
"operator": "IN"|"NOT_IN"
},
"criteria": {
"comparisonOperator": "less-than"|"less-than-equals"|"greater-than"|"greater-than-equals"|"in-cidr-set"|"not-in-cidr-set"|"in-port-set"|"not-in-port-set"|"in-set"|"not-in-set",
"value": {
"count": long,
"cidrs": ["string", ...],
"ports": [integer, ...],
"number": double,
"numbers": [double, ...],
"strings": ["string", ...]
},
"durationSeconds": integer,
"consecutiveDatapointsToAlarm": integer,
"consecutiveDatapointsToClear": integer,
"statisticalThreshold": {
"statistic": "string"
},
"mlDetectionConfig": {
"confidenceLevel": "LOW"|"MEDIUM"|"HIGH"
}
},
"suppressAlerts": true|false,
"exportMetric": true|false
}
...
]
--cli-input-json | --cli-input-yaml (строка) Считывает аргументы из предоставленной строки JSON. Строка JSON следует формату, предоставленному --generate-cli-skeleton. Если на командной строке указаны другие аргументы, эти значения переопределят значения из JSON. Невозможно передать произвольные двоичные значения с помощью предоставленного значения JSON, поскольку строка будет взята буквально. Это не может быть указано вместе с --cli-input-yaml.
--generate-cli-skeleton (строка) Выводит каркас JSON в стандартный вывод без отправки запроса API. Если не указано значение или значение input, выводит пример входного JSON, который можно использовать в качестве аргумента для --cli-input-json. Аналогично, если указано yaml-input, будет напечатан пример входного YAML, который можно использовать с --cli-input-yaml. Если указано значение output, он проверит входные данные команды и вернет пример выходного JSON для этой команды. Сгенерированный каркас JSON не стабилен между версиями AWS CLI, и нет гарантий обратной совместимости в сгенерированном каркасе JSON.
Глобальные параметры
--debug (логическое значение)
Включает отладовую регистрацию.
--endpoint-url (строка)
Переопределяет URL по умолчанию команды указанным URL.
--no-verify-ssl (логическое значение)
По умолчанию AWS CLI использует SSL при взаимодействии с AWS-сервисами. Для каждого SSL-соединения AWS CLI будет проверять SSL-сертификаты. Этот параметр переопределяет поведение проверки SSL-сертификатов по умолчанию.
--no-paginate (логическое значение)
Отключает автоматическую постраничную навигацию. Если автоматическая постраничная навигация отключена, AWS CLI выполнит только один вызов для первой страницы результатов.
--output (строка)
Стиль форматирования вывода команды.
- json
- text
- table
- yaml
- yaml-stream
--query (строка)
Запрос JMESPath для фильтрации данных ответа.
--profile (строка)
Использование определенного профиля из вашего файла учетных данных.
--region (строка)
Используемый регион. Переопределяет параметры конфигурации/среды.
--version (строка)
Отображение версии этого инструмента.
--color (строка)
Включение/отключение цветного вывода.
- on
- off
- auto
--no-sign-request (логическое значение)
Не подписывать запросы. Учетные данные не будут загружены, если этот аргумент предоставлен.
--ca-bundle (строка)
CA-сертификат для проверки SSL-сертификатов. Переопределяет параметры конфигурации/среды.
--cli-read-timeout (целое число)
Максимальное время чтения сокета в секундах. Если значение установлено в 0, чтение сокета будет выполняться блокирующим образом без таймаута. Значение по умолчанию составляет 60 секунд.
--cli-connect-timeout (целое число)
Максимальное время подключения сокета в секундах. Если значение установлено в 0, подключение сокета будет выполняться блокирующим образом без таймаута. Значение по умолчанию составляет 60 секунд.
--cli-binary-format (строка)
Стиль форматирования, используемый для двоичных блоков. Формат по умолчанию — base64. Формат base64 ожидает, что двоичные блоки будут предоставлены как строка, закодированная в base64. Формат raw-in-base64-out сохраняет совместимость с поведением AWS CLI V1, и двоичные значения должны передаваться буквально. При предоставлении содержимого из файла, соответствующего двоичному блоку, fileb:// всегда будет обрабатываться как двоичное и будет использовать содержимое файла непосредственно независимо от параметра cli-binary-format. При использовании file:// содержимое файла должно быть правильно отформатировано для заданного cli-binary-format.
- base64
- raw-in-base64-out
--no-cli-pager (логическое значение)
Отключение пейджера CLI для вывода.
--cli-auto-prompt (логическое значение)
Автоматически запрашивать параметры ввода CLI.
--no-cli-auto-prompt (логическое значение)
Отключить автоматический запрос параметров ввода CLI.
Примеры
Примечание
Для использования следующих примеров, необходимо установить и настроить AWS CLI. Дополнительную информацию см. в руководстве по началу работы в руководстве пользователя AWS CLI.
Если не указано иное, все примеры используют правила цитирования, подобные Unix. Эти примеры необходимо адаптировать к правилам цитирования вашей терминальной оболочки. См. раздел Использование кавычек со строками в руководстве пользователя AWS CLI.
Пример 1: Проверка параметров поведения для профиля безопасности
Следующий validate-security-profile-behaviors пример проверяет набор корректных параметров поведения для профиля безопасности AWS IoT Device Defender.
aws iot validate-security-profile-behaviors \
--behaviors "[{\"name\":\"CellularBandwidth\",\"metric\":\"aws:message-byte-size\",\"criteria\":{\"comparisonOperator\":\"greater-than\",\"value\":{\"count\":128},\"consecutiveDatapointsToAlarm\":1,\"consecutiveDatapointsToClear\":1}},{\"name\":\"Authorization\",\"metric\":\"aws:num-authorization-failures\",\"criteria\":{\"comparisonOperator\":\"greater-than\",\"value\":{\"count\":12},\"durationSeconds\":300,\"consecutiveDatapointsToAlarm\":1,\"consecutiveDatapointsToClear\":1}}]"
Вывод:
{
"valid": true,
"validationErrors": []
}
Пример 2: Проверка некорректных параметров поведения для профиля безопасности
Следующий validate-security-profile-behaviors пример проверяет набор параметров поведения, содержащий ошибку, для профиля безопасности AWS IoT Device Defender.
aws iot validate-security-profile-behaviors \
--behaviors "[{\"name\":\"CellularBandwidth\",\"metric\":\"aws:message-byte-size\",\"criteria\":{\"comparisonOperator\":\"greater-than\",\"value\":{\"count\":128},\"consecutiveDatapointsToAlarm\":1,\"consecutiveDatapointsToClear\":1}},{\"name\":\"Authorization\",\"metric\":\"aws:num-authorization-failures\",\"criteria\":{\"comparisonOperator\":\"greater-than\",\"value\":{\"count\":12},\"durationSeconds\":300,\"consecutiveDatapointsToAlarm\":100000,\"consecutiveDatapointsToClear\":1}}]"
Вывод:
{
"valid": false,
"validationErrors": [
{
"errorMessage": "Behavior Authorization is malformed. consecutiveDatapointsToAlarm 100000 should be in range[1,10]"
}
]
}
Для получения дополнительной информации см. раздел Команды обнаружения в руководстве разработчика AWS IoT.
Вывод
valid -> (boolean)
validationErrors -> (список)
Список обнаруженных ошибок в поведении.
(структура)
Информация об ошибке, обнаруженной в спецификации поведения.
errorMessage -> (строка)
© Copyright 2025, Amazon Web Services. Created using Sphinx.