Megosztás a következőn keresztül:


Ügyfél által kezelt kulcsok konfigurálása Azure kezelt lemezekhez

Az Azure Databricks számítási feladatai a számítási síkban ideiglenes adatokat tárolnak az Azure által felügyelt lemezeken. Alapértelmezés szerint a kezelt lemezeken tárolt adatok titkosítása nyugalmi állapotban a Microsoft által kezelt kulcsokkal történő kiszolgálóoldali titkosítással történik. Ez a cikk azt ismerteti, hogyan konfigurálhat ügyfél által felügyelt kulcsot az Azure Key Vault-tárolókból az Azure Databricks-munkaterülethez felügyelt lemeztitkosításhoz. Az Azure Key Vault HSM-ből származó kulcsok használatára vonatkozó utasításokért lásd : HSM ügyfél által felügyelt kulcsok konfigurálása azure-beli felügyelt lemezekhez.

Fontos

  • A felügyelt lemeztároló ügyfél által felügyelt kulcsai az adatlemezekre vonatkoznak, de nem vonatkoznak az operációsrendszer-lemezekre.
  • A felügyelt lemeztároló ügyfél által felügyelt kulcsai nem vonatkoznak a kiszolgáló nélküli számítási erőforrásokra, például a kiszolgáló nélküli SQL-raktárakra és a modellszolgáltatásra. A kiszolgáló nélküli számítási erőforrásokhoz használt lemezek rövid élettartamúak, és a kiszolgáló nélküli számítási feladatok életciklusához vannak kötve. A számítási erőforrások leállítása vagy leskálázása esetén a virtuális gépek és tárolóik megsemmisülnek.

Követelmények

  • Az Azure Databricks-munkaterületnek a Prémium csomagban kell lennie.

  • Az Azure Key Vaultnak és az Azure Databricks-munkaterületnek ugyanabban a régióban és ugyanabban a Microsoft Entra-azonosítóban (korábban Azure Active Directory) kell lennie. Lehetnek különböző előfizetésekben.

  • Ha engedélyezni szeretné az automatikus elforgatást, csak a szoftverkulcsok és a 2048 bites, 3072 bites és 4096 bites HSM RSA támogatott.

  • Ez a funkció nem támogatott a FedRAMP-megfelelőséggel rendelkező munkaterületek esetén. További információért forduljon az Azure Databricks-fiók csapatához.

  • Ha az Azure CLI-t szeretné használni ezekhez a feladatokhoz, telepítse az Azure CLI-eszközt, és telepítse a Databricks bővítményt:

    az extension add --name databricks
    
  • Ha a PowerShellt szeretné használni ezekhez a feladatokhoz, telepítse az Azure PowerShellt, és telepítse a Databricks PowerShell-modult. Az alábbiakat is be kell jelentkeznie:

    Connect-AzAccount
    

    Ha felhasználóként szeretne bejelentkezni az Azure-fiókjába, tekintse meg a PowerShell-bejelentkezést egy Azure Databricks-felhasználói fiókkal. Ha szolgáltatásnévként szeretne bejelentkezni az Azure-fiókjába, olvassa el a Microsoft Entra ID szolgáltatásnévvel rendelkező PowerShell-bejelentkezést.

1. lépés: Kulcstartó létrehozása

A Key Vault számos módon létrehozható, például az Azure Portal, az Azure CLI, a PowerShell és opcionálisan ARM-sablonok használatával. A következő szakaszok az Azure CLI és a PowerShell használatára vonatkozó eljárásokat ismertetik. Egyéb megközelítésekért tekintse meg a Microsoft dokumentációját.

Az Azure parancssori felület használatával

  1. Kulcstartó létrehozása:

    az keyvault create --name <keyVaultName> --resource-group <resourceGroupName> --location <location> --sku <sku> --enable-purge-protection
    
  2. A tároló URI-jának lekérése:

    az keyvault show --name <key-vault-name>
    

    Másolja ki az vaultUri értéket a válaszból.

A PowerShell használata

Új tároló létrehozása:

$keyVault = New-AzKeyVault -Name <key-vault-name> -ResourceGroupName <resource-group-name> -Location <location> -Sku <sku> -EnablePurgeProtection

Meglévő Key Vault lekérése:

$keyVault = Get-AzKeyVault -VaultName <key-vault-name>

2. lépés: Kulcs előkészítése

Létrehozhat egy kulcsot, vagy lekérheti az Azure Key Vaultban tárolt meglévő kulcsot az Azure Portal, az Azure CLI, a PowerShell és opcionálisan ARM-sablonok használatával. Ez a szakasz az Azure CLI és a PowerShell eljárásait ismerteti. Egyéb módokért tekintse meg az Azure-kulcsok dokumentációját.

Az Azure parancssori felület használatával

Létrehozhat egy kulcsot, vagy lekérhet egy meglévő kulcsot.

Kulcs létrehozása:

  1. Futtassa az alábbi parancsot:

    az keyvault key create \
    --name <key-name> \
    --vault-name <key-vault-name> \
    --protection software
    
  2. Jegyezze fel a következő értékeket a kimenetből:

    • Key Vault neve: A Key Vault neve
    • Kulcs neve: A kulcs neve
    • Kulcsverzió: A kulcs verziója
    • Key Vault-erőforráscsoport: A Key Vault erőforráscsoportja
  3. Kulcsadatok lekérése:

    az keyvault key show --vault-name <keyVaultName> --name <keyName>
    

    Másolja ki a kid mező értékét, amely a kulcsazonosító.

    A teljes kulcsazonosító általában rendelkezik az űrlappal https://<key-vault-name>.vault.azure.net/keys/<key-name>/<key-version>. A nem nyilvános felhőben lévő Azure Key Vault-kulcsok eltérő formában érhetők el.

Meglévő kulcs lekérése:

  1. Futtassa az alábbi parancsot:

    az keyvault key show --name <key-name> --vault-name <key-vault-name>
    
  2. Jegyezze fel a meglévő kulcs alábbi adatait:

    • Kulcstartó neve: A Key Vault neve.
    • Kulcs neve: A kulcs neve.
    • Kulcsverzió: A kulcs verziója.
    • Key Vault-erőforráscsoport: A Key Vault erőforráscsoportja.
  3. Kulcsadatok lekérése:

    az keyvault key show --vault-name <keyVaultName> --name <keyName>
    

    Másolja ki a kid mező értékét, amely a kulcsazonosító.

    A teljes kulcsazonosító általában rendelkezik az űrlappal https://<key-vault-name>.vault.azure.net/keys/<key-name>/<key-version>. A nem nyilvános felhőben lévő Azure Key Vault-kulcsok eltérő formában érhetők el.

  4. Ellenőrizze, hogy a meglévő kulcs engedélyezve van-e, mielőtt újra fut az keyvault key show --name <key name> . A kimenet megjelenik "enabled": true.

A PowerShell használata

  1. Ha kulcs létrehozását tervezi, előfordulhat, hogy be kell állítania a hozzáférési szabályzatot a létrehozás módjától és időpontjától függően. Ha például nemrég hozta létre a Key Vaultot a PowerShell használatával, előfordulhat, hogy az új Key Vault nem rendelkezik a kulcs létrehozásához szükséges hozzáférési szabályzattal. Az alábbi példa a paramétert EmailAddress használja a szabályzat beállításához. A kapcsolódó részletekért tekintse meg a Set-AzKeyVaultAccessPolicy microsoftos cikkét.

    Állítsa be a hozzáférési szabályzatot egy új Key Vaulton:

    Set-AzKeyVaultAccessPolicy \
    -VaultName $keyVault.VaultName \
    -PermissionsToKeys all \
    -EmailAddress <email-address>
    
  2. Létrehozhat egy kulcsot, vagy lekérhet egy meglévő kulcsot:

    • Kulcs létrehozása:

      $key = Add-AzKeyVaultKey \
      -VaultName $keyVault.VaultName \
      -Name <key-name> \
      -Destination 'Software'
      
    • Meglévő kulcs lekérése:

      $key = Get-AzKeyVaultKey \
      -VaultName $keyVault.VaultName \
      -Name <key-name>
      

3. lépés: Az összes számítási erőforrás leállítása, ha egy munkaterületet frissít egy kulcs kezdeti hozzáadásához

Ha ügyfél által felügyelt kulcsot ad hozzá a felügyelt lemezekhez kezdetben egy meglévő munkaterületen, a frissítés előtt állítsa le az összes számítási erőforrást (fürtöket, készleteket, klasszikus vagy pro SQL-raktárakat).

A frissítés befejezése után elindíthatja a leállított számítási erőforrásokat. Azon munkaterületek esetében, amelyek már rendelkezik ügyfél által felügyelt kulccsal a felügyelt lemezekhez, a számítási erőforrások leállása nélkül elforgathatja a kulcsot.

4. lépés: Munkaterület létrehozása vagy frissítése

Ha a felügyelt lemezekhez ügyfél által felügyelt kulccsal szeretne munkaterületet létrehozni vagy frissíteni, válasszon az alábbi üzembehelyezési stratégiák közül:

Az Azure Portal használata (sablon nélkül)

Ez a szakasz azt ismerteti, hogyan hozhat létre vagy frissíthet munkaterületet az Azure Portal használatával a felügyelt lemezek ügyfél által felügyelt kulcsaival sablon használata nélkül.

  1. Munkaterület létrehozása vagy frissítése:

    Új munkaterület létrehozása kulccsal:

    1. Nyissa meg az Azure Portal kezdőlapját , és kattintson az Erőforrás létrehozása elemre a lap bal felső sarkában.
    2. A keresősávon belül írja be Azure Databricks és kattintson az Azure Databricksre.
    3. Válassza a Létrehozás lehetőséget az Azure Databricks widgeten belül.
    4. Az Alapszintű és hálózatkezelés lap űrlapmezőibe írjon be értékeket.
    5. A Titkosítás lapon jelölje be a Saját kulcs használata jelölőnégyzetet a Felügyelt lemezek szakaszban.

    Először adjon hozzá egy kulcsot egy meglévő munkaterülethez:

    1. Állítsa le a számítási erőforrásokat (fürtöket, készleteket).
    2. Nyissa meg az Azure Portal Azure Databrickshez készült kezdőlapját.
    3. Lépjen a meglévő Azure Databricks-munkaterületre.
    4. Nyissa meg a Titkosítás lapot a bal oldali panelen.
    5. Az Ügyfél által felügyelt kulcsok szakaszban engedélyezze a felügyelt lemezeket.
  2. Adja meg a titkosítási mezőket.

    Show fields in the Managed Disks section of the Azure Databricks blade

    • A Kulcsazonosító mezőbe illessze be az Azure Key Vault-kulcs kulcsazonosítóját.
    • Az Előfizetés legördülő listában adja meg az Azure Key Vault-kulcs előfizetésének nevét.
    • A kulcs automatikus elforgatásának engedélyezéséhez engedélyezze a kulcs automatikus elforgatását.
  3. Töltse ki a fennmaradó lapokat, és kattintson a Véleményezés + Létrehozás (új munkaterület esetén) vagy a Mentés (munkaterület frissítéséhez) elemre.

  4. A munkaterület üzembe helyezése után lépjen az új Azure Databricks-munkaterületre.

  5. Az Azure Databricks-munkaterület Áttekintés lapján kattintson a Felügyelt erőforráscsoport elemre.

  6. A felügyelt erőforráscsoport Áttekintés lapján keresse meg az ebben az erőforráscsoportban létrehozott Lemeztitkosítási készlet típusú objektumot. Másolja ki a lemeztitkosítási csoport nevét.

  7. Az Azure Portalon nyissa meg az Azure Key Vaultot, amellyel konfigurálhatja a funkcióhoz használt kulcsot.

  8. Nyissa meg a bal oldali panelen a Hozzáférési szabályzatok lapot. A lap megnyitása után kattintson a Lap tetején található Létrehozás gombra.

  9. A Kulcsengedélyek szakasz Engedélyek lapján engedélyezze a Beolvasás, a Kulcs kibontása és a Wrap billentyűt.

  10. Kattintson a Tovább gombra.

  11. Az Egyszerű lapon adja meg a lemeztitkosítási csoport nevét az Azure Databricks-munkaterület felügyelt erőforráscsoportjában a keresősávon. Jelölje ki az eredményt, és kattintson a Tovább gombra.

    Enter the name of disk encryption set and select the result

  12. Kattintson a Véleményezés + létrehozás fülre, majd a Létrehozás gombra.

Az Azure CLI használata (sablon nélkül)

Új és frissített munkaterületek esetén is adja hozzá ezeket a paramétereket a parancshoz:

  • disk-key-name: A kulcs neve
  • disk-key-vault: A tároló neve
  • disk-key-version: Kulcsverzió
  • disk-key-auto-rotation: A kulcs automatikus elforgatásának engedélyezése (true vagy false). Ez egy nem kötelező mező. Az alapértelmezett érték false.

Az alábbi parancsokban használja a tároló URI-értékét a válaszból az előző lépés helyett <key-vault-uri>. Emellett a kulcsnév és a kulcsverzió értékei is megtalálhatók az kid előző lépés válaszában szereplő értéken belül.

  1. Munkaterület létrehozása vagy frissítése:

    • Példa munkaterület létrehozására az alábbi felügyelt lemezparaméterek használatával:

      az databricks workspace create --name <workspace-name> \
      --resource-group <resource-group-name> \
      --location <location> \
      --sku premium --disk-key-name <key-name> \
      --disk-key-vault <key-vault-uri> \
      --disk-key-version <key-version> \
      --disk-key-auto-rotation <true-or-false>
      
    • Példa egy munkaterület frissítésére az alábbi felügyelt lemezparaméterek használatával:

      az databricks workspace update \
      --name <workspace-name> \
      --resource-group <resource-group-name> \
      --disk-key-name <key-name> \
      --disk-key-vault <key-vault-uri> \
      --disk-key-version <key-version> \
      --disk-key-auto-rotation <true-or-false>
      

    A parancsok bármelyikének kimenetében van egy managedDiskIdentity objektum. Mentse a tulajdonság értékét az principalId objektumon belül. Ezt a rendszer egy későbbi lépésben használja főazonosítóként.

  2. Adjon hozzá egy hozzáférési szabályzatot kulcsengedélyekkel a Key Vaulthoz. Használja az előző lépések tárolónevét és egyszerű azonosítóját:

    az keyvault set-policy \
    --name <key-vault-name> \
    --object-id <principal-id> \
    --key-permissions get wrapKey unwrapKey
    

A PowerShell használata (sablon nélkül)

Új és frissített munkaterületek esetén is adja hozzá ezeket a paramétereket a parancshoz:

  • location: Munkaterület helye
  • ManagedDiskKeyVaultPropertiesKeyName: Kulcs neve
  • ManagedDiskKeyVaultPropertiesKeyVaultUri: Key Vault URI
  • ManagedDiskKeyVaultPropertiesKeyVersion: Kulcsverzió
  • ManagedDiskRotationToLatestKeyVersionEnabled: A kulcs automatikus elforgatásának engedélyezése (true vagy false). Ez egy nem kötelező mező. Az alapértelmezett érték hamis.
  1. Munkaterület létrehozása vagy frissítése:

    • Példa munkaterület felügyelt lemezparaméterek használatával történő létrehozására:

      $workspace = New-AzDatabricksWorkspace -Name <workspace-name> \
      -ResourceGroupName <resource-group-name> \
      -location $keyVault.Location \
      -Sku premium \
      -ManagedDiskKeyVaultPropertiesKeyName $key.Name \
      -ManagedDiskKeyVaultPropertiesKeyVaultUri $keyVault.VaultUri \
      -ManagedDiskKeyVaultPropertiesKeyVersion $key.Version -ManagedDiskRotationToLatestKeyVersionEnabled
      
    • Példa egy munkaterület felügyelt lemezparaméterek használatával történő frissítésére:

      $workspace = Update-AzDatabricksworkspace -Name <workspace-name> \
      -ResourceGroupName <resource-group-name> \
      -ManagedDiskKeyVaultPropertiesKeyName $key.Name \
      -ManagedDiskKeyVaultPropertiesKeyVaultUri $keyVault.VaultUri \
      -ManagedDiskKeyVaultPropertiesKeyVersion $key.Version -ManagedDiskRotationToLatestKeyVersionEnabled
      
  2. Adjon hozzá egy hozzáférési szabályzatot kulcsengedélyekkel a Key Vaulthoz:

    Set-AzKeyVaultAccessPolicy -VaultName $keyVault.VaultName \
    -ObjectId $workspace.ManagedDiskIdentityPrincipalId \
    -PermissionsToKeys wrapkey,unwrapkey,get
    

ARM-sablon használata (Azure Portal vagy CLI)

Az Azure-beli rövid útmutatósablonokat az Azure dokumentációjában ismerheti meg. Az ARM-sablon üzembe helyezési lehetőségeinek listáját az ARM-sablon dokumentációjában találja.

Munkaterület létrehozásakor egy lemeztitkosítási csoport erőforrása is létrejön a munkaterület felügyelt erőforráscsoportja alatt. Rendszer által hozzárendelt felügyelt identitással rendelkezik, amely a Key Vault elérésére szolgál. Mielőtt az Azure Databricks Compute ezt a kulcsot használhatja az adatok titkosításához, le kell kérnie a lemeztitkosítási csoport egyszerű azonosítóját, majd meg kell adnia az identitásnak a GETKulcstartóhoz tartozó , WRAPés UNWRAP kulcsengedélyeket.

A Databricks azt javasolja, hogy hozza létre vagy frissítse a munkaterületet, és adjon meg Key Vault-engedélyeket ugyanabban a sablontelepítésben. A Key Vault-engedélyek megadása előtt egy kivétellel létre kell hoznia vagy frissítenie kell a munkaterületet. Ha egy meglévő felügyelt lemez ügyfél által felügyelt kulcs-munkaterületét frissíti, hogy új kulcsot használjon egy új Key Vaultban, engedélyt kell adnia a meglévő lemeztitkosítási csoportnak az új Key Vault eléréséhez, majd frissítenie kell a munkaterületet az új kulcskonfigurációval.

Az ebben a szakaszban található példasablon az alábbiakat hajtja végre:

  • Munkaterület létrehozása vagy frissítése felügyelt lemez ügyfél által felügyelt kulcsbeállításainak hozzáadásához
  • Hozzáférést biztosít a lemeztitkosítási csoportnak a Key Vaulthoz

A következő ARM-példasablont használhatja, amely két dolgot hajt végre:

  • Munkaterület létrehozása vagy frissítése felügyelt lemez ügyfél által felügyelt kulccsal.
  • Hozzon létre egy kulcshozzáférés-szabályzatot.

Ha már használ ARM-sablont, egyesítheti a példasablon paramétereit, erőforrásait és kimeneteit a meglévő sablonnal.

{
   "$schema": "https://schema.management.azure.com/schemas/2019-04-01/deploymentTemplate.json#",
   "contentVersion": "1.0.0.0",
   "parameters": {
       "workspaceName": {
           "type": "string",
           "metadata": {
               "description": "The name of the Azure Databricks workspace to create"
           }
       },
       "pricingTier": {
           "type": "string",
           "defaultValue": "premium",
           "allowedValues": [
               "premium"
           ],
           "metadata": {
               "description": "The pricing tier of workspace"
           }
       },
       "apiVersion": {
           "type": "string",
           "defaultValue": "2023-02-01",
           "allowedValues": [
               "2023-02-01",
               "2022-04-01-preview"
           ],
           "metadata": {
               "description": "The API version to use to create the workspace resources"
           }
       },
       "keyVaultName": {
           "type": "string",
           "metadata": {
               "description": "The Key Vault name used for CMK"
           }
       },
       "keyName": {
           "type": "string",
           "metadata": {
               "description": "The key name used for CMK"
           }
       },
       "keyVersion": {
           "type": "string",
           "metadata": {
               "description": "The key version used for CMK"
           }
       },
       "keyVaultResourceGroupName": {
           "type": "string",
           "metadata": {
               "description": "The resource group name of the Key Vault used for CMK"
           }
       },
       "enableAutoRotation": {
           "type": "bool",
           "defaultValue": false,
           "allowedValues": [
               true,
               false
           ],
           "metadata": {
               "description": "Whether managed disk picks up new key versions automatically"
           }
       }
   },
   "variables": {
       "managedResourceGroupName": "[concat('databricks-rg-', parameters('workspaceName'), '-', uniqueString(parameters('workspaceName'), resourceGroup().id))]"
   },
   "resources": [
       {
           "type": "Microsoft.Databricks/workspaces",
           "name": "[parameters('workspaceName')]",
           "location": "[resourceGroup().location]",
           "apiVersion": "[parameters('apiVersion')]",
           "sku": {
               "name": "[parameters('pricingTier')]"
           },
           "properties": {
               "managedResourceGroupId": "[concat(subscription().id, '/resourceGroups/', variables('managedResourceGroupName'))]",
               "encryption": {
                   "entities": {
                       "managedDisk": {
                           "keySource": "Microsoft.Keyvault",
                           "keyVaultProperties": {
                               "keyVaultUri": "[concat('https://', parameters('keyVaultName'), environment().suffixes.keyvaultDns)]",
                               "keyName": "[parameters('keyName')]",
                               "keyVersion": "[parameters('keyVersion')]"
                           },
                           "rotationToLatestKeyVersionEnabled": "[parameters('enableAutoRotation')]"
                       }
                   }
               }
           }
       },
       {
           "type": "Microsoft.Resources/deployments",
           "apiVersion": "2020-06-01",
           "name": "addAccessPolicy",
           "resourceGroup": "[parameters('keyVaultResourceGroupName')]",
           "dependsOn": [
               "[resourceId('Microsoft.Databricks/workspaces', parameters('workspaceName'))]"
           ],
           "properties": {
               "mode": "Incremental",
               "template": {
                   "$schema": "https://schema.management.azure.com/schemas/2019-04-01/deploymentTemplate.json#",
                   "contentVersion": "0.9.0.0",
                   "resources": [
                       {
                           "type": "Microsoft.KeyVault/vaults/accessPolicies",
                           "apiVersion": "2019-09-01",
                           "name": "[concat(parameters('keyVaultName'), '/add')]",
                           "properties": {
                               "accessPolicies": [
                                   {
                                       "objectId": "[reference(resourceId('Microsoft.Databricks/workspaces', parameters('workspaceName')), '2023-02-01').managedDiskIdentity.principalId]",
                                       "tenantId": "[reference(resourceId('Microsoft.Databricks/workspaces', parameters('workspaceName')), '2023-02-01').managedDiskIdentity.tenantId]",
                                       "permissions": {
                                           "keys": [
                                               "get",
                                               "wrapKey",
                                               "unwrapKey"
                                           ]
                                       }
                                   }
                               ]
                           }
                       }
                   ]
               }
           }
       }
   ],
   "outputs": {
       "workspace": {
           "type": "object",
           "value": "[reference(resourceId('Microsoft.Databricks/workspaces', parameters('workspaceName')))]"
       }
   }
}

A sablont bármilyen eszközzel használhatja, beleértve az Azure Portalt, a parancssori felületet vagy más eszközöket. A sablon üzembe helyezési stratégiáinak részletei:

ARM-sablon alkalmazása az Azure Portalon

Ha ARM-sablonnal szeretne munkaterületet létrehozni vagy frissíteni az Azure Portalon, tegye a következőket:

  1. Csak akkor állítsa le a számítási erőforrásokat (fürtöket, készleteket), ha először hozzáad egy kulcsot egy meglévő munkaterülethez. Ha ezt a lépést nem hajtja végre, a frissítés során az erőforrások automatikusan leállnak, ami problémákat okozhat bizonyos típusú számítási feladatok esetében. Tervezze meg az állásidőt az összes számítási erőforrás leállításához a kulcs hozzáadása előtt. A frissítés befejezése után elindítja a leállított számítási erőforrásokat. Azon munkaterületek esetében, amelyek már rendelkezik ügyfél által felügyelt kulccsal a felügyelt lemezekhez, a számítási erőforrások leállása nélkül elforgathatja a kulcsot.

  2. Jelentkezzen be az Azure Portalra.

  3. Kattintson az Erőforrás létrehozása, majd a Sablontelepítés (üzembe helyezés egyéni sablonok használatával) elemre.

  4. Az Egyéni üzembe helyezés lapon kattintson a Saját sablon létrehozása elemre a szerkesztőben.

  5. Illessze be a példasablon tartalmát a szerkesztőbe.

    Edit deployment page of the Azure custom deployment portal

  6. Kattintson a Mentés gombra.

  7. Adja meg a paraméterek értékeit.

    Meglévő munkaterület frissítéséhez használja ugyanazokat a paramétereket, amelyeket a munkaterület létrehozásához használt. Ügyfél által felügyelt kulcs első hozzáadásához adja hozzá a kulcshoz kapcsolódó paramétereket resources.properties.encryption.entities.managedDisk a fenti sablonban látható módon. A kulcs elforgatásához módosítsa a kulcshoz kapcsolódó paraméterek egy részét vagy mindegyikét.

    Fontos

    Ha módosít egy munkaterületet, az erőforráscsoport nevének és a sablonban lévő munkaterület nevének meg kell egyeznie a meglévő munkaterület erőforráscsoport nevével és munkaterületnevével.

    Project details page of the Azure custom deployment portal

  8. Kattintson a Felülvizsgálat + létrehozás elemre.

  9. Oldja meg az érvényesítési problémákat, majd kattintson a Létrehozás gombra.

Fontos

Ha elforgat egy kulcsot, ne törölje a régi kulcsot, amíg a munkaterület frissítése befejeződött.

ARM-sablon alkalmazása az Azure CLI használatával

Ez a szakasz azt ismerteti, hogyan hozhat létre vagy frissíthet munkaterületet a kulccsal ARM-sablon használatával az Azure CLI-vel.

  1. Csak akkor állítsa le a számítási erőforrásokat (fürtöket, készleteket), ha először hozzáad egy kulcsot egy meglévő munkaterülethez. Ha ezt a lépést nem hajtja végre, a frissítés során az erőforrások automatikusan leállnak, ami problémákat okozhat bizonyos típusú számítási feladatok esetében. Érdemes lehet ütemezni ezt a frissítést, és megtervezni az állásidőt. Ez a lépés nem szükséges, ha csak a kulcsot forgatja .

  2. Ellenőrizze, hogy a sablon tartalmazza-e a szakaszt resources.properties.encryption.entities.managedDisk és annak kapcsolódó paramétereit keyvaultName, keyNamekeyVersionés keyVaultResourceGroupName. Ha nincsenek ott, tekintse meg a jelen szakasz korábbi szakaszában egy példasablont, és egyesítse az adott szakaszban és a paramétereket a sablonban.

  3. Futtassa a következő parancsot: az deployment group create. Ha az erőforráscsoport neve és a munkaterület neve megegyezik egy meglévő munkaterület erőforráscsoport-nevével és munkaterületnevével, ez a parancs új munkaterület létrehozása helyett frissíti a meglévő munkaterületet. Ha egy meglévő üzembe helyezést frissít, mindenképpen ugyanazt az erőforráscsoportot és munkaterületnevet használja, mint korábban.

    az deployment group create --resource-group <existing-resource-group-name>  \
                               --template-file <file-name>.json \
                               --parameters workspaceName=<workspace-name> \
                                            keyvaultName=<key-vault-name> \
                                            keyName=<key-name> keyVersion=<key-version> \
                                            keyVaultResourceGroupName=<key-vault-resource-group>
    

    Fontos

    Ha elforgat egy kulcsot, csak a munkaterület frissítése után törölheti a régi kulcsot.

5. lépés: Ellenőrizze, hogy a számítási erőforrások használják-e a kulcsot (nem kötelező)

Annak ellenőrzéséhez, hogy a felügyelt lemez ügyfél által felügyelt kulcs funkciója engedélyezve van-e a munkaterületen:

  1. Kérje le az Azure Databricks-munkaterület adatait az alábbiak egyikével:

    • Azure Portal

      1. Az Azure Portalon kattintson a Munkaterületek elemre, majd a munkaterület nevére.
      2. A munkaterület lapján kattintson a JSON-nézetre.
      3. Kattintson az API-verzióval 2022-04-01-preview egyenlő vagy annál nagyobb API-verzióra.
    • Azure CLI

      Futtassa az alábbi parancsot:

      az databricks workspace show --resource-group <resource group name> --name <workspace name>
      

      A felügyelt lemeztitkosítási paraméterek a következő alatt propertiesvannak: . Példa:

      "properties": {
           "encryption": {
               "entities": {
                   "managedDisk": {
                     "keySource": "Microsoft.Keyvault",
                     "keyVaultProperties": {
                         "keyVaultUri": "<key-vault-uri>",
                         "keyName": "<key-name>",
                         "keyVersion": "<key-version>"
                     },
                     "rotationToLatestKeyVersionEnabled": "<rotation-enabled>"
                 }
            }
        }
      
    • PowerShell

      Get-AzDatabricksWorkspace -Name <workspace-name> -ResourceGroupName <resource-group-name> |
        Select-Object -Property ManagedDiskKeySource,
         ManagedDiskKeyVaultPropertiesKeyVaultUri,
         ManagedServicesKeyVaultPropertiesKeyName,
         ManagedServicesKeyVaultPropertiesKeyVersion,
         ManagedDiskRotationToLatestKeyVersionEnabled
      

      Tekintse át a kimenetben visszaadott tulajdonságok értékeit:

      ManagedDiskKeySource                           : Microsoft.Keyvault
      ManagedDiskKeyVaultPropertiesKeyVaultUri       : <key-vault-uri>
      ManagedServicesKeyVaultPropertiesKeyName       : <key-name>
      ManagedServicesKeyVaultPropertiesKeyVersion    : <key-version>
      ManagedDiskRotationToLatestKeyVersionEnabled   : <rotation-enabled>
      
  2. Hozzon létre bármilyen számítási erőforrást a munkaterülethez teszteléshez:

  3. Az Azure Portalon kattintson a Munkaterületek elemre, majd a munkaterület nevére.

  4. A munkaterület lapján kattintson annak a felügyelt erőforráscsoportnak a nevére, amelyben a munkaterület található.

  5. Az erőforráscsoport lap Erőforrások csoportjában kattintson egy virtuális gép nevére.

  6. A virtuális gép lapjának bal oldalán, a Gépház alatt kattintson a Lemezek elemre.

    A Lemezek lap Adatlemezek területén ellenőrizze, hogy a lemez titkosítási mezője rendelkezik-e az értékkelSSE with CMK.

6. lépés: Korábban leállított számítási erőforrások indítása

Erre a lépésre csak akkor van szükség, ha frissített egy munkaterületet, hogy első alkalommal adjon hozzá kulcsot, ebben az esetben az előző lépésben leállított minden futó számítási erőforrást. Ha új munkaterületet hozott létre, vagy csak a kulcsot forgatja, a számítási erőforrások nem lettek leállva az előző lépésekben, ebben az esetben kihagyhatja ezt a lépést.

  1. Győződjön meg arról, hogy a munkaterület frissítése befejeződött. Ha a sablon egyetlen módosítása a kulcs volt, ez általában kevesebb mint öt perc alatt fejeződik be, különben több időt vehet igénybe.
  2. Manuálisan indítsa el a korábban leállított számítási erőforrásokat.

Ha bármely számítási erőforrás nem indul el sikeresen, az általában azért van, mert engedélyt kell adnia a lemeztitkosítási csoportnak a Key Vault eléréséhez.

A kulcs elforgatása későbbi időpontban

Egy meglévő munkaterületen két típusú kulcsváltás van, amelyek már rendelkezik kulccsal:

  • Automatikus elforgatás: Ha rotationToLatestKeyVersionEnabled a munkaterülethez tartozik true , a lemeztitkosítási csoport észleli a kulcsverzió módosítását, és a legújabb kulcsverzióra mutat.
  • Manuális elforgatás: Egy meglévő felügyelt lemez ügyfél által felügyelt kulcs munkaterületét frissítheti egy új kulccsal. Kövesse a fenti utasításokat, mintha először hozzáadta volna a kulcsot a meglévő munkaterülethez, és a fontos különbség az, hogy nem kell leállítja a futó számítási erőforrásokat.

Mindkét rotációs típus esetében az Azure Virtual Machine Storage szolgáltatás automatikusan felveszi az új kulcsot, és titkosítja az adattitkosítási kulcsot. Az Azure Databricks számítási erőforrásaira nincs hatással. További információ: Ügyfél által felügyelt kulcsok az Azure dokumentációjában.

A kulcs elforgatása előtt nem kell leállítja a számítási erőforrásokat.

Hibaelhárítás

A fürt meghiúsul a KeyVaultAccessForbidden

A probléma az, hogy egy fürt nem indul el a következő hibával:

Cloud Provider Launch Failure: KeyVaultAccessForbidden

Adjon engedélyt a munkaterület kezelt erőforráscsoportjában létrehozott lemeztitkosító készletnek a kulcspáncélteremhez való hozzáférésre. Szükséges engedélyek: GET, WRAPKEY, UNWRAPKEY.

Olvassa el újra a 4. lépés: Munkatér létrehozása vagy frissítése alfejezetét a telepítési típushoz, és fordítson különös figyelmet a Key Vault hozzáférési házirend frissítésére meghatározott jogosultságokkal.

A probléma az, hogy a felügyelt lemez ügyfél által felügyelt kulcsparaméterei hiányoznak.

Ellenőrizze, hogy az ARM-sablon a megfelelő API-verziót használja a Microsoft.Databricks/workspaces erőforráshoz. A menedzselt lemez ügyfél által kezelt kulcs funkciója csak a 2022-04-01-previewvagy annál magasabb API-verzióval érhető el. Ha más API-verziókat használ, a munkaterület létrejön vagy frissül, de a kezelt lemez paraméterei figyelmen kívül maradnak.

A munkaterület frissítése meghiúsul a ApplicationUpdateFail

A probléma az, hogy egy felügyelt lemezen engedélyezett munkaterületen a munkaterület frissítése vagy javítása meghiúsul, és a következő hiba lép fel:

Failed to update application: `<workspace name>`, because patch resource group failure. (Code: ApplicationUpdateFail)

Adjon hozzáférést a lemeztitkosítási csoportnak a Key Vaulthoz, majd végezze el a munkaterület frissítési műveleteit, például címkék hozzáadását.

Hiányzó hozzáférési szabályzat

A probléma a következő hiba:

ERROR CODE: BadRequest MESSAGE: Invalid value found at accessPolicies[14].ObjectId: <objectId>

A fenti objektumazonosítóval rendelkező hozzáférési szabályzat érvénytelen a Key Vaultban. El kell távolítania, hogy új hozzáférési szabályzatokat adjon hozzá a Key Vaulthoz.

Az elveszett kulcsok nem helyreállíthatók

Az elveszett kulcsok nem állíthatóak helyre. Ha elveszíti vagy visszavonja a kulcsát, és nem tudja azt helyreállítani, az Azure Databricks számítási erőforrásai többé nem működnek. Ez a munkaterület többi funkcióját nem befolyásolja.

Erőforrások