Поделиться через


Обработка геолокации и IP-адресов

В этой статье объясняется, как работает поиск геолокации и обработка IP-адресов в Application Insights.

Поведение по умолчанию

По умолчанию IP-адреса временно собираются, но не хранятся.

При отправке телеметрии в Azure IP-адрес используется в поиске географического расположения. Результат используется для заполнения полей client_Cityи client_StateOrProvinceclient_CountryOrRegion. Затем адрес удаляется, а 0.0.0.0 записывается в поле client_IP.

Типы данных телеметрии

  • Данные телеметрии браузера: Application Insights собирает IP-адрес отправителя. Конечная точка приема вычисляет IP-адрес.
  • Данные телеметрии сервера. Модуль телеметрии Application Insights временно собирает IP-адрес клиента, если X-Forwarded-For заголовок не задан. Если входящий список IP-адресов содержит несколько элементов, последний IP-адрес используется для заполнения полей географического расположения.

Это поведение позволяет избежать ненужных сбор данных персональных данных и сведений о расположении IP-адресов.

Если IP-адреса не собираются, город и другие атрибуты географического расположения также не собираются.

Хранение данных IP-адресов

Предупреждение

По умолчанию и нашим рекомендациям не требуется собирать IP-адреса. Если вы переопределите это поведение, убедитесь, что коллекция не нарушает какие-либо требования соответствия или локальные правила.

Дополнительные сведения об обработке персональных данных см. в руководстве по персональным данным.

Примечание.

IP-адреса, связанные с приемом телеметрии до включения свойства DisableIpMasking, продолжают отображаться как 0.0.0.0. Только данные телеметрии, которые передаются после этого изменения, отражают фактические сведения об IP-адресе.

Чтобы включить сбор и хранение IP-адресов, свойству DisableIpMasking компонента Application Insights необходимо присвоить значение true.

Отключение маскирования IP-адресов

Подсказка

Если необходимо изменить поведение только для одного ресурса Application Insights, используйте портал Azure.

  1. Перейдите к ресурсу Application Insights и выберите >

  2. Выберите Развернуть.

    Снимок экрана с кнопкой

  3. Выберите Редактировать шаблон.

    Снимок экрана: кнопка

    Примечание.

    При возникновении ошибки, показанной на предыдущем снимке экрана, ее можно устранить. В нем указано: "Группа ресурсов находится в расположении, которое не поддерживается одним или несколькими ресурсами в шаблоне. Выберите другую группу ресурсов". Временно выберите другую группу ресурсов из раскрывающегося списка, а затем повторно выберите исходную группу ресурсов.

  4. В шаблоне JSON найдите properties внутри resources. Добавьте запятую в последнее поле JSON, а затем добавьте следующую новую строку: "DisableIpMasking": true Затем выберите Сохранить.

    Снимок экрана: добавление запятой и новой строки после свойства для источника запроса

  5. Выберите Просмотреть и создать>Создать.

    Примечание.

    При появлении окна "Сбой развертывания" просмотрите сведения о развертывании, относящиеся к типу microsoft.insights/components, и проверьте состояние. Если эта операция выполнена успешно, значит, изменения, внесенные в DisableIpMasking, были развернуты.

  6. После завершения развертывания будут записаны новые данные телеметрии.

    При повторном выборе и изменении шаблона только шаблон по умолчанию без только что добавленного свойства. Если вы не видите данные IP-адреса и хотите убедиться, что свойство "DisableIpMasking": true задано, выполните следующие команды PowerShell.

    # Replace <application-insights-resource-name> and <resource-group-name> with the appropriate resource and resource group name.
    
    # If you aren't using Azure Cloud Shell, you need to connect to your Azure account
    # Connect-AzAccount
    
    $AppInsights = Get-AzResource -Name '<application-insights-resource-name>' -ResourceType 'microsoft.insights/components' -ResourceGroupName '<resource-group-name>'
    $AppInsights.Properties
    

    В результате будет возвращен список свойств. Одним из свойств должно быть DisableIpMasking: true. Если перед развертыванием нового свойства с помощью Azure Resource Manager выполните команды PowerShell, это свойство не существует.

Следующие шаги

  • Дополнительные сведения о сборе персональных данных в Azure Monitor.
  • Узнайте, как задать IP-адрес пользователя с помощью OpenTelemetry.