Dela via


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

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.

  1. I Azure-portalen navigerar du till klustret och väljer sedan Nätverk.

  2. Välj hanterade privata slutpunkteroch välj sedan Lägg till.

    Skärmbild av nätverkssidan som visar det första steget i skapandet av en hanterad privat slutpunkt.

  3. I fönstret Ny hanterad privat slutpunkt fyller du i resursinformationen nedan och klicka sedan på Nästa.

    Skärmbild av nätverkssidan som visar det andra steget i skapandet av en hanterad privat slutpunkt.

    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.
  4. 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

  1. Installera choco

  2. Installera ARMClient

    choco install armclient
    
  3. 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:

  1. 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.'
        }
    }
    "@
    
  2. 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:

  1. 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.'
        }
    }
    "@
    
  2. 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:

  1. 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
    
  2. 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:

  1. I Azure-portalen går du till din Event Hubs-tjänst och väljer sedan Nätverk.

  2. Välj Privata slutpunktsanslutningar, välj den hanterade privata slutpunkten som du skapade och välj sedan Godkänn.

    Skärmbild av nätverkssidan som visar godkännandet av den hanterade privata slutpunkten till Event Hubs-tjänsten.

  3. I kolumnen Anslutningstillstånd kontrollerar du att den hanterade privata slutpunkten har godkänts.

    Skärmbild av nätverkssidan som visar den godkända hanterade privata slutpunkten för Event Hubs-tjänsten.

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.