Skapa en hanterad privat slutpunkt för Azure Data Explorer
Hanterade privata slutpunkter krävs för att ansluta till Azure-resurser som är starkt skyddade. De är envägs privata anslutningar som gör att Azure Data Explorer kan ansluta till andra skyddade tjänster. I den här artikeln får du lära dig hur du skapar en hanterad privat slutpunkt och ansluter den till din datakälla.
Not
Vi rekommenderar att du använder Managed Identity för att koppla till Azure Storage och Azure Event Hubs i stället för hanterade privata slutpunkter. Om du vill ansluta med hanterade identiteter konfigurerar du Azure Storage- eller Event Hubs-resurserna för att identifiera Azure Data Explorer som en betrodd tjänst. Använd sedan Managed Identity för att bevilja åtkomst genom att skapa ett undantag för nätverksregeln för betrodda Azure-tjänster.
Förutsättningar
- Prenumeration på Azure. Skapa ett kostnadsfritt Azure-konto.
- Ett Azure Data Explorer-kluster som inte matas in i ett virtuellt nätverk.
- En händelsehubb eller en Azure Storage- blob i en prenumeration som är registrerad på Microsoft.Network-resursprovidern. Mer information finns i Registrera prenumeration på resursprovidern.
Skapa en hanterad privat slutpunkt med hjälp av Azure-portalen
Du kan skapa en hanterad privat slutpunkt med hjälp av portalen som klustret ska använda vid åtkomst till lagringen.
I Azure-portalen navigerar du till klustret och väljer sedan Nätverk.
Välj hanterade privata slutpunkteroch välj sedan Lägg till.
I fönstret Ny hanterad privat slutpunkt fyller du i resursinformationen nedan och klicka sedan på Nästa.
inställning Föreslaget värde Fältbeskrivning Namn mpeToStorage Namnet på den hanterade privata slutpunkten Abonnemang Din prenumeration Välj den Azure-prenumeration som du vill använda för klustret Resurstyp Microsoft.Storage/storageAccounts Välj den relevanta resurstyp som du vill använda för datakällan. Resursnamn dela Välj det kluster som ska användas som mål för den nya privata Azure-slutpunkten Underresurs till målresurs blob Välj det relevanta målet för din datakälla. välj Skapa för att skapa den hanterade privata slutpunktsresursen.
Skapa en hanterad privat slutpunkt med hjälp av REST-API:et
För att skapa en hanterad privat slutpunkt krävs ett enda API-anrop till resursprovidern Kusto. Du kan upprätta en hanterad privat slutpunkt till följande resurstyper:
- Microsoft.Storage/storageAccounts (underresurs kan vara "blob" eller "dfs")
- Microsoft.EventHub/namespaces (underresursen "namnområde")
- Microsoft.Devices/IoTHubs (underresursen "iotHub")
- Microsoft.KeyVault/vaults (underresurs "valv")
- Microsoft.Sql/servers (underresursen "sqlServer")
- Microsoft.Kusto/clusters (underresursen "kluster")
- Microsoft.DigitalTwins/digitalTwinsInstance (underresursen "digitaltwinsinstance")
I följande exempel använder du ARMclient- i PowerShell för att skapa en hanterad privat slutpunkt med hjälp av REST-API:et.
Notera
För att ansluta till ett lagringskonto kräver en "dfs"-resurs ytterligare en hanterad privat slutpunkt till underresursen "blob".
Förutsättningar för att använda REST-API:et
Installera choco
Installera ARMClient
choco install armclient
Logga in med ARMClient
armclient login
Skapa en hanterad privat slutpunkt till Azure Event Hubs
Använd följande REST API-anrop för att aktivera den hanterade privata slutpunkten till en Event Hubs-tjänst:
Kör följande kommando för att skapa en hanterad privat slutpunkt till en Event Hubs-tjänst:
# Replace the <...> placeholders with the correct values armclient PUT /subscriptions/<subscriptionIdADX>/resourceGroups/<resourceGroupNameADX>/providers/Microsoft.Kusto/clusters/<clusterName>/managedPrivateEndpoints/<newMpeName>?api-version=2022-02-01 @" { 'properties': { 'privateLinkResourceId':'/subscriptions/<subscriptionIdEventHub>/resourceGroups/<resourceGroupNameEventHub>/providers/Microsoft.EventHub/namespaces/<EventHubNamespace>', 'groupId':'namespace', 'requestMessage':'Please Approve.' } } "@
Kontrollera svaret.
{ "id": "/subscriptions/<subscriptionIdADX>/resourceGroups/<resourceGroupNameADX>/providers/Microsoft.Kusto/Clusters/<clusterName>/ManagedPrivateEndpoints/<newMpeName>", "name": "<clusterName>/<newMpeName>", "type": "Microsoft.Kusto/Clusters/ManagedPrivateEndpoints", "location": "DummyLocation", "properties": { "privateLinkResourceId": "/subscriptions/<subscriptionIdEventHub>/resourceGroups/<resourceGroupNameEventHub>/providers/Microsoft.EventHub/namespaces/<EventHubNamespace>", "groupId": "namespace", "requestMessage": "Please Approve.", "provisioningState": "Creating" } }
Skapa en hanterad privat slutpunkt till ett Azure Storage-konto
Använd följande REST API-anrop för att aktivera den hanterade privata slutpunkten till en Azure Storage-blob:
Kör följande kommando för att skapa en hanterad privat slutpunkt till Event Hubs:
#replace the <...> placeholders with the correct values armclient PUT /subscriptions/<subscriptionIdADX>/resourceGroups/<resourceGroupNameADX>/providers/Microsoft.Kusto/clusters/<clusterName>/managedPrivateEndpoints/<newMpeName>?api-version=2022-02-01 @" { 'properties': { 'privateLinkResourceId':'/subscriptions/<subscriptionIdStorage>/resourceGroups/<resourceGroupNameStorage>/providers/Microsoft.Storage/storageAccounts/<storageAccountName>', 'groupId':'blob', 'requestMessage':'Please Approve.' } } "@
Kontrollera svaret.
{ "id": "/subscriptions/<subscriptionIdADX>/resourceGroups/<resourceGroupNameADX>/providers/Microsoft.Kusto/Clusters/<clusterName>/ManagedPrivateEndpoints/<newMpeName>", "name": "<clusterName>/<newMpeName>", "type": "Microsoft.Kusto/Clusters/ManagedPrivateEndpoints", "location": "DummyLocation", "properties": { "privateLinkResourceId": "/subscriptions/<subscriptionIdStorage>/resourceGroups/<resourceGroupNameStorage>/providers/Microsoft.Storage/storageAccounts/<storageAccountName>", "groupId": "blob", "requestMessage": "Please Approve.", "provisioningState": "Creating" } }
Så här kontrollerar du förloppet
Om du vill kontrollera förloppet för migreringen av den hanterade privata slutpunkten använder du följande kommando:
Kör följande kommando:
#replace the <...> placeholders with the correct values armclient GET /subscriptions/<subscriptionIdADX>/resourceGroups/<resourceGroupNameADX>/providers/Microsoft.Kusto/clusters/<clusterName>/managedPrivateEndpoints/<newMpeName>?api-version=2022-02-01
Kontrollera svaret.
{ "id": "/subscriptions/<subscriptionIdADX>/resourceGroups/<resourceGroupNameADX>/providers/Microsoft.Kusto/Clusters/<clusterName>/ManagedPrivateEndpoints/<newMpeName>", "name": "<clusterName>/<newMpeName>", "type": "Microsoft.Kusto/Clusters/ManagedPrivateEndpoints", "location": "DummyLocation", "properties": { "privateLinkResourceId": "/subscriptions/02de0e00-8c52-405c-9088-1342de78293d/resourceGroups/<resourceGroupNameADX>/providers/Microsoft.<service>/<...>/<name>", "groupId": "<groupId>", "requestMessage": "Please Approve.", "provisioningState": "Succeeded" }, "systemData": { "createdBy": "<UserName>", "createdByType": "User", "createdAt": "2022-02-05T08:29:54.2912851Z", "lastModifiedBy": "chrisqpublic@contoso.com", "lastModifiedByType": "User", "lastModifiedAt": "2022-02-05T08:29:54.2912851Z" } }
Godkänn den hanterade privata slutpunkten
Oavsett vilken metod du använde för att skapa den hanterade privata slutpunkten måste du godkänna att den skapas på målresursen. För att godkänna en hanterad privat slutpunkt för en Event Hubs-tjänst:
I Azure-portalen går du till din Event Hubs-tjänst och väljer sedan Nätverk.
Välj Privata slutpunktsanslutningar, välj den hanterade privata slutpunkten som du skapade och välj sedan Godkänn.
I kolumnen Anslutningstillstånd kontrollerar du att den hanterade privata slutpunkten har godkänts.
Klustret kan nu ansluta till resursen med hjälp av den hanterade privata slutpunktsanslutningen.
Skapa flera hanterade privata slutpunkter
Du kan skapa flera hanterade privata slutpunkter med ARM-mallar och Terraform. I följande exempel ser du till att den hanterade privata slutpunkten till Event Hubs-namnområdet skapas före den till lagringskontot.
I följande exempel används en ARM-mall för att skapa två hanterade privata slutpunkter i ett Azure Data Explorer-kluster. Den första slutpunkten ansluter till ett Event Hubs-namnområde. Den andra slutpunkten ansluter till ett lagringskonto med ett beroende som säkerställer att Event Hubs-slutpunkten skapas först.
{
"$schema": "https://schema.management.azure.com/schemas/2019-04-01/deploymentTemplate.json#",
"contentVersion": "1.0.0.0",
"parameters": {
"cluster_name": {
"defaultValue": "<ADX cluster name>",
"type": "String"
},
"eventhub_resource_id": {
"defaultValue": "<Eventhub resource id>",
"type": "String"
},
"storage_resource_id": {
"defaultValue": "<Storage resource id>",
"type": "String"
},
"managed_pe_eventhub_name": {
"defaultValue": "<name of the managed private endpoint to Event Hub>",
"type": "String"
},
"managed_pe_storage_name": {
"defaultValue": "<name of the managed private endpoint to Storage>",
"type": "String"
}
},
"variables": {},
"resources": [
{
"type": "Microsoft.Kusto/Clusters",
"apiVersion": "2023-08-15",
"name": "[parameters('cluster_name')]",
"location": "<region of the cluster>",
"sku": {...},
"zones": {...}
"properties": {...}
},
{
"type": "Microsoft.Kusto/Clusters/ManagedPrivateEndpoints",
"apiVersion": "2023-08-15",
"name": "[concat(parameters('cluster_name'), '/', parameters('managed_pe_eventhub_name'))]",
"dependsOn": [
"[resourceId('Microsoft.Kusto/Clusters', parameters('cluster_name'))]"
],
"properties": {
"privateLinkResourceId": "[parameters('eventhub_resource_id')]",
"groupId": "namespace",
"requestMessage": "Please approve"
}
},
{
"type": "Microsoft.Kusto/Clusters/ManagedPrivateEndpoints",
"apiVersion": "2023-08-15",
"name": "[concat(parameters('cluster_name'), '/', parameters('managed_pe_storage_name'))]",
"dependsOn": [
"[resourceId('Microsoft.Kusto/Clusters', parameters('cluster_name'))]",
"[resourceId('Microsoft.Kusto/Clusters/ManagedPrivateEndpoints', parameters('cluster_name'), parameters('managed_pe_eventhub_name'))]"
],
"properties": {
"privateLinkResourceId": "[parameters('storage_resource_id')]",
"groupId": "blob",
"requestMessage": "Please approve"
}
}
]
}
Automatiskt godkännande
Du kan automatiskt godkänna en hanterad privat slutpunkt om den begärande identiteten har Microsoft.<Provider>/<ResourceType>/privateEndpointConnectionsApproval/action behörighet på målresursen för den hanterade privata slutpunkten.