Сбор данных веб-запроса: различия между версиями
(Создана пустая страница) |
ENetrebin (обсуждение | вклад) |
||
(не показана 1 промежуточная версия 1 участника) | |||
Строка 1: | Строка 1: | ||
'''''[[Применение Ключ-АСТРОМ]] / [[Применение Ключ-АСТРОМ#.D0.90.D1.82.D1.80.D0.B8.D0.B1.D1.83.D1.82.D1.8B%20.D0.B7.D0.B0.D0.BF.D1.80.D0.BE.D1.81.D0.B0|Атрибуты запроса]] / Сбор данных веб-запроса''''' | |||
Чтобы определить атрибут запроса на основе данных веб-запроса: | |||
# В меню Ключ-АСТРОМ выберите '''Настройки > Мониторинг серверных сервисов > Атрибуты запроса.''' | |||
# Нажмите кнопку '''Определить новый атрибут запроса''' . | |||
# Укажите '''Имя атрибута запроса''' . Вы можете переименовать атрибут в любой момент в будущем. | |||
# Выберите '''Тип данных''' . Вы не можете изменить тип данных после настройки атрибута запроса. | |||
# Если в одном запросе существует несколько значений, укажите, что должно храниться в атрибуте запроса для каждого запроса, и выберите способ нормализации текста. | |||
# Проверьте, должно ли это правило иметь доступ к немаскированным данным и содержит ли атрибут запроса конфиденциальные данные . Это потенциально приведет к доступу к личным данным. | |||
# Добавьте источник данных. Вы можете определить одно или несколько правил, чтобы указать, как следует получать атрибут. Каждому правилу нужен источник. Системе Ключ-АСТРОМ необходимо знать, где можно получить атрибут запроса. Вы можете определить правило, сначала выбрав, где правило должно применяться (на основе группы процессов, группы хостов, технологии обслуживания или тега группы), а затем указав, где можно найти фактический параметр. | |||
# Добавив все источники данных, нажмите на кнопку '''Сохранить''', чтобы сохранить правило атрибута запроса. | |||
== Запросить правила атрибутов == | |||
Взгляните на пример правила атрибута запроса ниже. Обратите внимание, что атрибут запроса <code>destination</code>может получить свое значение из двух разных источников: либо <code>HTTP Post</code>параметра (<code>iceform:destination</code>), либо <code>HTTP GET</code>параметра (<code>destination</code>). Правила выполняются по порядку. Если запрос соответствует критериям обоих правил, его значение будет взято из первого правила. | |||
Каждому правилу нужен источник. В приведенном ниже примере источником атрибута запроса является <code>HTTP GET</code>параметр веб-запроса (<code>destination</code>). | |||
[[Файл:Image123124.png|граница]] | |||
Этот <code>GET</code>параметр будет фиксироваться во всех отслеживаемых процессах, поддерживающих анализ на уровне кода, и будет сообщаться обо всех запросах, отслеживаемых системой Ключ-АСТРОМ. | |||
Хоть это и удобно, но не всегда то, что нужно. Вот почему вы можете ограничить правила подмножеством групп процессов и служб. Для этого выберите имена групп процессов и служб из четырех раскрывающихся списков выше, чтобы уменьшить количество групп процессов и служб, к которым применяется правило. | |||
Возможно, нет необходимости в сборе всех значений. В других случаях значение может содержать префикс, по которому вы хотите выполнить проверку. Для этого укажите, что назначенный параметр следует использовать только в том случае, если его значение соответствует определенному значению. Вы также можете отказаться от использования всего значения, а вместо этого извлечь часть значения. В приведенном ниже примере учитываются только <code>iceform:destination</code> <code>HTTP POST</code>параметры, начинающиеся со строки <code>Journey :</code>. Этот подход извлечет все, что следует за строкой <code>Journey:</code>, и сохранит его в атрибуте запроса. | |||
[[Файл:Image21111.png|граница]] | |||
Запросы могут иметь столько атрибутов, сколько вы хотите. | |||
== Источники атрибутов запроса для веб-запросов == | |||
Источники данных атрибутов запроса для веб-запросов включают: | |||
* Технологически независимые источники, такие как: | |||
** Параметры HTTP POST | |||
** IP-адреса клиентов Сообщается значение первого соответствующего заголовка. | |||
** Заголовки HTTP-запроса и ответа | |||
** URL-адрес веб-запроса или один из его компонентов, например путь или параметр запроса. В последних двух случаях вы также можете выбрать сторону веб-запроса, на которой будет захватываться и храниться атрибут. | |||
{| class="wikitable" | |||
!Вариант | |||
!Тип запроса | |||
!Захват стороны | |||
!Сторона магазина | |||
|- | |||
|Захват на стороне клиента службы веб-запросов и сохранение в вызывающей службе. | |||
|Вызов полного обслуживания<sup>1</sup> | |||
|Клиент | |||
|Сервер | |||
|- | |||
|Захват на стороне сервера службы веб-запросов | |||
|Вызов полного обслуживания | |||
|Сервер | |||
|Сервер | |||
|- | |||
|Захват на стороне клиента службы веб-запросов | |||
|Вызов внешней службы<sup>2</sup> | |||
|Клиент | |||
|Клиент | |||
|- | |||
| rowspan="2" |Захватывайте как со стороны клиента, так и со стороны сервера и сохраняйте там, где найдено. | |||
|Вызов полного обслуживания | |||
|Сервер | |||
|Сервер | |||
|- | |||
|Вызов внешней службы | |||
|Клиент | |||
|Клиент | |||
|} | |||
<sup>1</sup> Вызов полного обслуживания: запрос, который полностью контролируется Ключ-АСТРОМ. | |||
<sup>2</sup> Вызов внешней службы: запрос, который поступает к внешним ресурсам. | |||
* Технологические источники. | |||
** Приложение может хранить сложный объект в атрибуте, а ЕдиныйАгент преобразует его в строку при захвате (например, в атрибуте сеанса Java servlet и переменная состояния сеанса ASP.NET). Это может иметь побочные эффекты, поэтому будьте осторожны с тем, что вы передаете. | |||
** ASP.NET - Если несколько параметров имеют одно и то же имя, вы увидите только первое полученное значение. | |||
** Java servlet - Атрибуты запроса Java servlet и атрибуты сеанса фиксируются только после ввода servlet или фильтра. | |||
== Постобработка == | |||
В большинстве случаев полученное значение будет содержать то, что вы ищете. Однако вам может не потребоваться полное значение или даже все значения. С помощью постобработки вы можете манипулировать полученным значением. | |||
Разверните параметр '''Дальнейшее ограничение или обработка захваченных параметров''', чтобы увидеть этапы обработки. Шаги выполняются в представленном порядке — каждый шаг применяется к результату предыдущего шага. | |||
Вам не обязательно применять все шаги. Каждый шаг становится активным, как только вы укажете для него значение или выберете флажок. | |||
[[Файл:Imageывафы.png|граница]] | |||
Шаг 1 позволяет вам извлечь что-то из полученной строки на основе символов-разделителей. | |||
Шаг 2 позволяет разделить захваченное значение на несколько значений на основе символа-разделителя. | |||
Шаг 3 удаляет пробелы. | |||
Шаг 4 позволяет отфильтровать полученные значения, которые не соответствуют заданному критерию. | |||
Шаг 5 позволяет вам извлечь что-то из полученной строки на основе регулярного выражения. |
Текущая версия на 14:38, 12 сентября 2024
Применение Ключ-АСТРОМ / Атрибуты запроса / Сбор данных веб-запроса
Чтобы определить атрибут запроса на основе данных веб-запроса:
- В меню Ключ-АСТРОМ выберите Настройки > Мониторинг серверных сервисов > Атрибуты запроса.
- Нажмите кнопку Определить новый атрибут запроса .
- Укажите Имя атрибута запроса . Вы можете переименовать атрибут в любой момент в будущем.
- Выберите Тип данных . Вы не можете изменить тип данных после настройки атрибута запроса.
- Если в одном запросе существует несколько значений, укажите, что должно храниться в атрибуте запроса для каждого запроса, и выберите способ нормализации текста.
- Проверьте, должно ли это правило иметь доступ к немаскированным данным и содержит ли атрибут запроса конфиденциальные данные . Это потенциально приведет к доступу к личным данным.
- Добавьте источник данных. Вы можете определить одно или несколько правил, чтобы указать, как следует получать атрибут. Каждому правилу нужен источник. Системе Ключ-АСТРОМ необходимо знать, где можно получить атрибут запроса. Вы можете определить правило, сначала выбрав, где правило должно применяться (на основе группы процессов, группы хостов, технологии обслуживания или тега группы), а затем указав, где можно найти фактический параметр.
- Добавив все источники данных, нажмите на кнопку Сохранить, чтобы сохранить правило атрибута запроса.
Запросить правила атрибутов
Взгляните на пример правила атрибута запроса ниже. Обратите внимание, что атрибут запроса destination
может получить свое значение из двух разных источников: либо HTTP Post
параметра (iceform:destination
), либо HTTP GET
параметра (destination
). Правила выполняются по порядку. Если запрос соответствует критериям обоих правил, его значение будет взято из первого правила.
Каждому правилу нужен источник. В приведенном ниже примере источником атрибута запроса является HTTP GET
параметр веб-запроса (destination
).
Этот GET
параметр будет фиксироваться во всех отслеживаемых процессах, поддерживающих анализ на уровне кода, и будет сообщаться обо всех запросах, отслеживаемых системой Ключ-АСТРОМ.
Хоть это и удобно, но не всегда то, что нужно. Вот почему вы можете ограничить правила подмножеством групп процессов и служб. Для этого выберите имена групп процессов и служб из четырех раскрывающихся списков выше, чтобы уменьшить количество групп процессов и служб, к которым применяется правило.
Возможно, нет необходимости в сборе всех значений. В других случаях значение может содержать префикс, по которому вы хотите выполнить проверку. Для этого укажите, что назначенный параметр следует использовать только в том случае, если его значение соответствует определенному значению. Вы также можете отказаться от использования всего значения, а вместо этого извлечь часть значения. В приведенном ниже примере учитываются только iceform:destination
HTTP POST
параметры, начинающиеся со строки Journey :
. Этот подход извлечет все, что следует за строкой Journey:
, и сохранит его в атрибуте запроса.
Запросы могут иметь столько атрибутов, сколько вы хотите.
Источники атрибутов запроса для веб-запросов
Источники данных атрибутов запроса для веб-запросов включают:
- Технологически независимые источники, такие как:
- Параметры HTTP POST
- IP-адреса клиентов Сообщается значение первого соответствующего заголовка.
- Заголовки HTTP-запроса и ответа
- URL-адрес веб-запроса или один из его компонентов, например путь или параметр запроса. В последних двух случаях вы также можете выбрать сторону веб-запроса, на которой будет захватываться и храниться атрибут.
Вариант | Тип запроса | Захват стороны | Сторона магазина |
---|---|---|---|
Захват на стороне клиента службы веб-запросов и сохранение в вызывающей службе. | Вызов полного обслуживания1 | Клиент | Сервер |
Захват на стороне сервера службы веб-запросов | Вызов полного обслуживания | Сервер | Сервер |
Захват на стороне клиента службы веб-запросов | Вызов внешней службы2 | Клиент | Клиент |
Захватывайте как со стороны клиента, так и со стороны сервера и сохраняйте там, где найдено. | Вызов полного обслуживания | Сервер | Сервер |
Вызов внешней службы | Клиент | Клиент |
1 Вызов полного обслуживания: запрос, который полностью контролируется Ключ-АСТРОМ.
2 Вызов внешней службы: запрос, который поступает к внешним ресурсам.
- Технологические источники.
- Приложение может хранить сложный объект в атрибуте, а ЕдиныйАгент преобразует его в строку при захвате (например, в атрибуте сеанса Java servlet и переменная состояния сеанса ASP.NET). Это может иметь побочные эффекты, поэтому будьте осторожны с тем, что вы передаете.
- ASP.NET - Если несколько параметров имеют одно и то же имя, вы увидите только первое полученное значение.
- Java servlet - Атрибуты запроса Java servlet и атрибуты сеанса фиксируются только после ввода servlet или фильтра.
Постобработка
В большинстве случаев полученное значение будет содержать то, что вы ищете. Однако вам может не потребоваться полное значение или даже все значения. С помощью постобработки вы можете манипулировать полученным значением.
Разверните параметр Дальнейшее ограничение или обработка захваченных параметров, чтобы увидеть этапы обработки. Шаги выполняются в представленном порядке — каждый шаг применяется к результату предыдущего шага.
Вам не обязательно применять все шаги. Каждый шаг становится активным, как только вы укажете для него значение или выберете флажок.
Шаг 1 позволяет вам извлечь что-то из полученной строки на основе символов-разделителей.
Шаг 2 позволяет разделить захваченное значение на несколько значений на основе символа-разделителя.
Шаг 3 удаляет пробелы.
Шаг 4 позволяет отфильтровать полученные значения, которые не соответствуют заданному критерию.
Шаг 5 позволяет вам извлечь что-то из полученной строки на основе регулярного выражения.