NSG-stroomlogboeken beheren met REST API
Belangrijk
Op 30 september 2027 worden stroomlogboeken voor netwerkbeveiligingsgroepen (NSG) buiten gebruik gesteld. Als onderdeel van deze buitengebruikstelling kunt u vanaf 30 juni 2025 geen nieuwe NSG-stroomlogboeken meer maken. U wordt aangeraden te migreren naar stroomlogboeken van virtuele netwerken, waardoor de beperkingen van NSG-stroomlogboeken worden opgelost. Na de buitengebruikstellingsdatum worden verkeersanalyses die zijn ingeschakeld met NSG-stroomlogboeken niet meer ondersteund en worden bestaande resources voor NSG-stroomlogboeken in uw abonnementen verwijderd. NSG-stroomlogboekrecords worden echter niet verwijderd en blijven hun respectieve bewaarbeleid volgen. Zie de officiƫle aankondiging voor meer informatie.
Logboekregistratie van netwerkbeveiligingsgroepen is een functie van Azure Network Watcher waarmee u informatie kunt vastleggen over IP-verkeer dat via een netwerkbeveiligingsgroep stroomt. Zie het overzicht van NSG-stroomlogboeken voor meer informatie over logboekregistratie van netwerkbeveiligingsgroepen.
In dit artikel leest u hoe u de REST API kunt gebruiken om logboeken voor stromen in te schakelen, uit te schakelen en er query's op uit te voeren met behulp van de REST API. U kunt leren hoe u een NSG-stroomlogboek beheert met behulp van de Azure-portal, PowerShell, Azure CLI of ARM-sjabloon.
In dit artikel leert u hoe u het volgende kunt doen:
- Stroomlogboeken inschakelen (versie 2)
- Stroomlogboeken uitschakelen
- Status van querystroomlogboeken
Vereisten
- Een Azure-account met een actief abonnement. Gratis een account maken
- ARMClient. ARMClient is een eenvoudig opdrachtregelprogramma om de Azure Resource Manager-API aan te roepen. Als u het hulpprogramma wilt installeren, raadpleegt u ARMClient. Zie Stroomlogboeken - REST API voor gedetailleerde specificaties van NSG-stroomlogboeken
Belangrijk
Wanneer u REST API-aanroepen naar Network Watcher uitvoert, verwijst de naam van de resourcegroep in de aanvraag-URI naar de resourcegroep die network Watcher bevat, niet naar de resources waarop u de diagnostische acties uitvoert.
Aanmelden met ARMClient
Meld u aan bij armclient met uw Azure-referenties.
armclient login
Insights-provider registreren
De Microsoft.Insights-provider moet zijn geregistreerd om verkeer dat via een netwerkbeveiligingsgroep stroomt, te kunnen registreren. Als u niet zeker weet of de Microsoft.Insights-provider is geregistreerd, gebruikt u Providers - REST API registreren om deze te registreren.
$subscriptionId = "aaaa0a0a-bb1b-cc2c-dd3d-eeeeee4e4e4e"
armclient post "https://management.azure.com//subscriptions/${subscriptionId}/providers/Microsoft.Insights/register?api-version=2021-04-01"
NSG-stroomlogboeken inschakelen
De opdracht voor het inschakelen van stroomlogboeken versie 2 wordt weergegeven in het volgende voorbeeld. Vervang voor versie 1 het veld Versie door '1':
$subscriptionId = "aaaa0a0a-bb1b-cc2c-dd3d-eeeeee4e4e4e"
$targetUri = "" # example /subscriptions/aaaa0a0a-bb1b-cc2c-dd3d-eeeeee4e4e4e/resourceGroups/{resourceGroupName/providers/Microsoft.Network/networkSecurityGroups/{nsgName}"
$storageId = "/subscriptions/aaaa0a0a-bb1b-cc2c-dd3d-eeeeee4e4e4e/{resourceGroupName/providers/Microsoft.Storage/storageAccounts/{saName}"
$resourceGroupName = "NetworkWatcherRG"
$networkWatcherName = "NetworkWatcher_westcentralus"
$requestBody = @"
{
'targetResourceId': '${targetUri}',
'properties': {
'storageId': '${storageId}',
'enabled': 'true',
'retentionPolicy' : {
days: 5,
enabled: true
},
'format': {
'type': 'JSON',
'version': 2
}
}
}
"@
armclient post "https://management.azure.com/subscriptions/${subscriptionId}/ResourceGroups/${resourceGroupName}/providers/Microsoft.Network/networkWatchers/${networkWatcherName}/configureFlowLog?api-version=2022-11-01" $requestBody
Het antwoord dat uit het voorgaande voorbeeld is geretourneerd, is als volgt:
{
"targetResourceId": "/subscriptions/aaaa0a0a-bb1b-cc2c-dd3d-eeeeee4e4e4e/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/networkSecurityGroups/{nsgName}",
"properties": {
"storageId": "/subscriptions/aaaa0a0a-bb1b-cc2c-dd3d-eeeeee4e4e4e/resourceGroups/{resourceGroupName}/providers/Microsoft.Storage/storageAccounts/{saName}",
"enabled": true,
"retentionPolicy": {
"days": 5,
"enabled": true
},
"format": {
"type": "JSON",
"version": 2
}
}
}
Notitie
- De Network Watchers - Set Flow Log Configuration REST API die in het vorige voorbeeld wordt gebruikt, is oud en is binnenkort afgeschaft.
- Het is raadzaam om de nieuwe stroomlogboeken te gebruiken: REST API maken of bijwerken om stroomlogboeken te maken of bij te werken.
NSG-stroomlogboeken uitschakelen
Gebruik het volgende voorbeeld om stroomlogboeken uit te schakelen. De aanroep is hetzelfde als het inschakelen van stroomlogboeken, behalve false is ingesteld voor de ingeschakelde eigenschap.
$subscriptionId = "aaaa0a0a-bb1b-cc2c-dd3d-eeeeee4e4e4e"
$targetUri = "" # example /subscriptions/aaaa0a0a-bb1b-cc2c-dd3d-eeeeee4e4e4e/resourceGroups/{resourceGroupName/providers/Microsoft.Network/networkSecurityGroups/{nsgName}"
$storageId = "/subscriptions/aaaa0a0a-bb1b-cc2c-dd3d-eeeeee4e4e4e/{resourceGroupName/providers/Microsoft.Storage/storageAccounts/{saName}"
$resourceGroupName = "NetworkWatcherRG"
$networkWatcherName = "NetworkWatcher_westcentralus"
$requestBody = @"
{
'targetResourceId': '${targetUri}',
'properties': {
'storageId': '${storageId}',
'enabled': 'false',
'retentionPolicy' : {
days: 5,
enabled: true
},
'format': {
'type': 'JSON',
'version': 2
}
}
}
"@
armclient post "https://management.azure.com/subscriptions/${subscriptionId}/ResourceGroups/${resourceGroupName}/providers/Microsoft.Network/networkWatchers/${networkWatcherName}/configureFlowLog?api-version=2022-11-01" $requestBody
Het antwoord dat uit het voorgaande voorbeeld is geretourneerd, is als volgt:
{
"targetResourceId": "/subscriptions/aaaa0a0a-bb1b-cc2c-dd3d-eeeeee4e4e4e/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/networkSecurityGroups/{nsgName}",
"properties": {
"storageId": "/subscriptions/aaaa0a0a-bb1b-cc2c-dd3d-eeeeee4e4e4e/resourceGroups/{resourceGroupName}/providers/Microsoft.Storage/storageAccounts/{saName}",
"enabled": false,
"retentionPolicy": {
"days": 5,
"enabled": true
},
"format": {
"type": "JSON",
"version": 2
}
}
}
Notitie
- De Network Watchers - Set Flow Log Configuration REST API die in het vorige voorbeeld wordt gebruikt, is oud en is binnenkort afgeschaft.
- Het is raadzaam om de nieuwe stroomlogboeken te gebruiken : REST API maken of bijwerken om stroomlogboeken en de Stroomlogboeken uit te schakelen - REST API verwijderen om stroomlogboekenresource te verwijderen.
Querystroomlogboeken
Met de volgende REST-aanroep wordt de status van stroomlogboeken in een netwerkbeveiligingsgroep opgevraagd.
$subscriptionId = "aaaa0a0a-bb1b-cc2c-dd3d-eeeeee4e4e4e"
$targetUri = "" # example /subscriptions/aaaa0a0a-bb1b-cc2c-dd3d-eeeeee4e4e4e/resourceGroups/{resourceGroupName/providers/Microsoft.Network/networkSecurityGroups/{nsgName}"
$resourceGroupName = "NetworkWatcherRG"
$networkWatcherName = "NetworkWatcher_westcentralus"
$requestBody = @"
{
'targetResourceId': '${targetUri}',
}
"@
armclient post "https://management.azure.com/subscriptions/${subscriptionId}/ResourceGroups/${resourceGroupName}/providers/Microsoft.Network/networkWatchers/${networkWatcherName}/queryFlowLogStatus?api-version=2022-11-01" $requestBody
In het volgende voorbeeld ziet u het geretourneerde antwoord:
{
"targetResourceId": "/subscriptions/aaaa0a0a-bb1b-cc2c-dd3d-eeeeee4e4e4e/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/networkSecurityGroups/{nsgName}",
"properties": {
"storageId": "/subscriptions/aaaa0a0a-bb1b-cc2c-dd3d-eeeeee4e4e4e/resourceGroups/{resourceGroupName}/providers/Microsoft.Storage/storageAccounts/{saName}",
"enabled": true,
"retentionPolicy": {
"days": 5,
"enabled": true
},
"format": {
"type": "JSON",
"version": 2
}
}
}
Notitie
- Voor Network Watchers: rest API voor stroomlogboekstatus ophalen die in het vorige voorbeeld wordt gebruikt, is een extra lezermachtiging vereist in de resourcegroep van de network watcher. Bovendien is deze API oud en is deze binnenkort afgeschaft.
- Het is raadzaam om de nieuwe stroomlogboeken te gebruiken : REST API ophalen om query's uit te voeren op stroomlogboeken.
Een stroomlogboek downloaden
De opslaglocatie van een stroomlogboek wordt gedefinieerd bij het maken. Een handig hulpprogramma voor toegang tot stroomlogboeken die zijn opgeslagen in een opslagaccount, is Microsoft Azure Storage Explorer. Zie Aan de slag met Storage Explorer voor meer informatie.
Als er een opslagaccount is opgegeven, worden pakketopnamebestanden opgeslagen in een opslagaccount op de volgende locatie:
https://{storageAccountName}.blob.core.windows.net/insights-logs-networksecuritygroupflowevent/resourceId=/SUBSCRIPTIONS/{subscriptionID}/RESOURCEGROUPS/{resourceGroupName}/PROVIDERS/MICROSOFT.NETWORK/NETWORKSECURITYGROUPS/{nsgName}/y={year}/m={month}/d={day}/h={hour}/m=00/macAddress={macAddress}/PT1H.json
Volgende stappen
- Zie NSG-stroomlogboeken beheren met behulp van Azure Policy voor meer informatie over het gebruik van ingebouwd Azure-beleid voor het controleren of implementeren van NSG-stroomlogboeken.
- Zie Traffic Analytics voor meer informatie over traffic analytics.