Geolocation und Verarbeitung von IP-Adressen
In diesem Artikel wird erläutert, wie Geolocation-Lookup und IP-Adressbehandlung in Application Insights funktionieren.
Standardverhalten
Standardmäßig werden IP-Adressen temporär gesammelt, aber nicht gespeichert.
Wenn Telemetriedaten an Azure gesendet werden, wird die IP-Adresse in einem Geolocation-Lookup verwendet. Das Ergebnis wird verwendet, um die Felder client_City
, client_StateOrProvince
und client_CountryOrRegion
aufzufüllen. Die Adresse wird dann verworfen, und in das client_IP
-Feld wird 0.0.0.0
geschrieben.
Die Telemetrietypen sind die folgenden:
- Browsertelemetrie: Application Insights erfasst die IP-Adresse des Absenders. Der Erfassungsendpunkt berechnet die IP-Adresse.
- Servertelemetriedaten: Das Application Insights-Telemetriemodul sammelt temporär die Client-IP-Adresse, wenn der
X-Forwarded-For
-Header nicht festgelegt ist. Wenn die eingehende IP-Adressliste mehr als ein Element enthält, wird die letzte IP-Adresse zum Auffüllen von Geolocationfeldern verwendet.
Dieses Verhalten ist beabsichtigt, um eine unnötige Erfassung von personenbezogenen Daten und Informationen zum Standort der IP-Adresse zu verhindern.
Wenn IP-Adressen nicht gesammelt werden, werden Orts- und andere Geolocation-Attribute ebenfalls nicht gesammelt.
Speichern von IP-Adressdaten
Warnung
Der Standard und unsere Empfehlung ist, keine IP-Adressen zu sammeln. Wenn Sie dieses Verhalten überschreiben, überprüfen Sie, ob die Sammlung keine Complianceanforderungen oder lokalen Vorschriften verletzt.
Weitere Informationen zum Umgang mit personenbezogenen Daten finden Sie unter Leitfaden für personenbezogene Daten.
Die Eigenschaft DisableIpMasking
der Application Insights-Komponente muss auf true
festgelegt werden, um das Erfassen und Speichern von IP-Adressen zu aktivieren.
Zu den Optionen zum Festlegen dieser Eigenschaft gehören:
ARM-Vorlage
{
"id": "/subscriptions/<subscription-id>/resourceGroups/<resource-group-name>/providers/microsoft.insights/components/<resource-name>",
"name": "<resource-name>",
"type": "microsoft.insights/components",
"location": "westcentralus",
"tags": {
},
"kind": "web",
"properties": {
"Application_Type": "web",
"Flow_Type": "Redfield",
"Request_Source": "IbizaAIExtension",
// ...
"DisableIpMasking": true
}
}
Portal
Wenn Sie das Verhalten nur für eine einzelne Application Insights-Ressource ändern müssen, verwenden Sie das Azure-Portal.
Navigieren Sie zu Ihrer Application Insights-Ressource, und wählen Sie Automatisierung>Vorlage exportieren aus.
Klicken Sie auf Bereitstellen.
Wählen Sie Vorlage bearbeiten aus.
Hinweis
Falls bei Ihnen der im vorherigen Screenshot gezeigte Fehler auftritt, können Sie ihn beheben. Die Fehlermeldung lautet: „Die Ressourcengruppe befindet sich an einem Standort, der von mindestens einer Ressource in der Vorlage nicht unterstützt wird. Wählen Sie eine andere Ressourcengruppe.“ Wählen Sie vorübergehend eine andere Ressourcengruppe aus der Dropdownliste aus, und wählen Sie dann erneut die ursprüngliche Ressourcengruppe aus.
Suchen Sie in der JSON-Vorlage innerhalb von
resources
nachproperties
. Fügen Sie dem letzten JSON-Feld ein Komma und anschließend die folgende neue Zeile hinzu:"DisableIpMasking": true
. Klicken Sie dann auf Speichern.Wählen Sie Bewerten + erstellen>Erstellen aus.
Hinweis
Wenn „Fehler bei der Bereitstellung“ angezeigt wird, suchen Sie in den Bereitstellungsdetails nach dem Eintrag mit dem Typ
microsoft.insights/components
, und überprüfen Sie den Status. Wenn dieser als erfolgreich angegeben ist, wurden die anDisableIpMasking
vorgenommenen Änderungen bereitgestellt.Sobald die Bereitstellung abgeschlossen ist, werden neue Telemetriedaten aufgezeichnet.
Wenn Sie die Vorlage noch einmal auswählen und bearbeiten, wird nur die Standardvorlage ohne die neu hinzugefügten Eigenschaft angezeigt. Wenn die IP-Adressdaten nicht angezeigt werden und Sie bestätigen möchten, dass
"DisableIpMasking": true
festgelegt ist, führen Sie den folgenden PowerShell-Befehl aus:# Replace `Fabrikam-dev` 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 'Fabrikam-dev' -ResourceType 'microsoft.insights/components' -ResourceGroupName 'Fabrikam-dev' $AppInsights.Properties
Daraufhin wird eine Liste mit den Eigenschaften zurückgegeben. Eine der Eigenschaften sollte
DisableIpMasking: true
beinhalten. Wenn Sie die PowerShell-Befehle ausführen, bevor Sie die neue Eigenschaft über Azure Resource Manager bereitstellen, ist die Eigenschaft nicht vorhanden.
REST-API
Die folgenden Nutzdaten der REST-API bewirken die gleichen Änderungen:
PATCH https://management.azure.com/subscriptions/<sub-id>/resourceGroups/<rg-name>/providers/microsoft.insights/components/<resource-name>?api-version=2018-05-01-preview HTTP/1.1
Host: management.azure.com
Authorization: AUTH_TOKEN
Content-Type: application/json
Content-Length: 54
{
"location": "<resource location>",
"kind": "web",
"properties": {
"Application_Type": "web",
"DisableIpMasking": true
}
}
PowerShell
Das PowerShell-Cmdlet Update-AzApplicationInsights
kann die IP-Maskierung mit dem DisableIPMasking
-Parameter deaktivieren.
Update-AzApplicationInsights -Name "aiName" -ResourceGroupName "rgName" -DisableIPMasking:$true
Weitere Informationen zum Cmdlet Update-AzApplicationInsights
finden Sie unter Update-AzApplicationInsights
Nächste Schritte
- Erfahren Sie mehr über die Sammlung personenbezogener Daten in Azure Monitor.
- Erfahren Sie, wie Sie mithilfe von OpenTelemetry die Benutzer-IP festlegen.