Nota
L'accesso a questa pagina richiede l'autorizzazione. È possibile provare ad accedere o modificare le directory.
L'accesso a questa pagina richiede l'autorizzazione. È possibile provare a modificare le directory.
In questa esercitazione si accede ad Archiviazione BLOB di Azure da Azure Databricks usando una chiave di accesso dell'account di archiviazione archiviata in Azure Key Vault.
Importante
L'accesso alla chiave dell'account di archiviazione è un modello legacy. Per i nuovi carichi di lavoro, usare l'autorizzazione di Microsoft Entra ID con Azure Databricks (tramite le credenziali di Unity Catalog o un montaggio ABFS che usa OAuth) e disabilitare l'autorizzazione con chiave condivisa nell'account di archiviazione. L'autorizzazione di Entra ID elimina la necessità di archiviare o rigenerare le chiavi dell'account di archiviazione e fornisce funzionalità di audit granulari. I passaggi descritti in questo articolo rimangono validi per gli account di archiviazione che usano ancora l'accesso con chiave condivisa.
In questa esercitazione, imparerai a:
- Creare un account di archiviazione e un contenitore BLOB con il interfaccia della riga di comando di Azure.
- Crea un Key Vault e imposta un segreto.
- Creare un'area di lavoro Azure Databricks e aggiungere un ambito segreto Key Vault.
- Accedere al contenitore BLOB dall'area di lavoro Azure Databricks.
Prerequisiti
Se non si ha una sottoscrizione di Azure, creare un account gratuito prima di iniziare.
Prima di iniziare questa esercitazione, installare la CLI di Azure.
Creare un account di archiviazione e un contenitore BLOB con l'interfaccia della riga di comando di Azure
Crea un account di archiviazione di utilizzo generico per usare i BLOB. Se non si ha un gruppo di risorse, crearne uno prima di eseguire il comando . Il comando seguente crea l'account di archiviazione e ne visualizza i metadati. Copiare il valore id .
az storage account create --name <storage-account-name> --resource-group <resource-group> --location <location> --sku Standard_ZRS --encryption-services blob
Prima di creare un contenitore in cui caricare il BLOB, assegnare il ruolo Collaboratore ai dati dei BLOB di archiviazione a sé stessi. Per questo esempio, il ruolo viene assegnato nell'account di archiviazione creato in precedenza.
az role assignment create --role "Storage Blob Data Contributor" --assignee <user-principal-name> --scope "/subscriptions/<subscription-id>/resourceGroups/<resource-group>/providers/Microsoft.Storage/storageAccounts/<storage-account-name>
Ora che hai assegnato il ruolo, crea un contenitore per il tuo blob:
az storage container create --account-name <storage-account-name> --name <container-name> --auth-mode login
Dopo aver creato il contenitore, caricarvi un BLOB (file di propria scelta). In questo esempio viene caricato un file .txt con helloworld .
az storage blob upload --account-name <storage-account-name> --container-name <container-name> --name helloworld --file helloworld.txt --auth-mode login
Elenca i blob nel contenitore per verificare:
az storage blob list --account-name <storage-account-name> --container-name <container-name> --output table --auth-mode login
Ottenere il valore key1 dell'account di archiviazione con il comando seguente. Copia il valore.
az storage account keys list -g <resource-group> -n <storage-account-name>
Creare un'istanza di insieme di credenziali delle chiavi e impostare un segreto
Creare un Key Vault con il comando seguente. Il comando visualizza anche i metadati dell'insieme di credenziali delle chiavi. Copiare i valori id e vaultUri .
az keyvault create --name <vault-name> --resource-group <resource-group> --location <location> --enable-rbac-authorization true --enable-purge-protection true
Per creare il segreto, usare il comando seguente. Imposta il valore del segreto al valore key1 del tuo account di archiviazione.
az keyvault secret set --vault-name <vault-name> --name storageKey --value "value of your key1"
Creare un'area di lavoro Azure Databricks e aggiungere un ambito segreto Key Vault
Questa sezione richiede il portale di Azure. Usarlo per:
- Crea la tua risorsa Azure Databricks.
- Avvia il tuo spazio di lavoro.
- Creare un ambito segreto basato su Key Vault.
Accedere al contenitore BLOB dall'area di lavoro Azure Databricks
Questa sezione viene completata nell'area di lavoro Azure Databricks. Nell'area di lavoro:
- Creare un nuovo cluster.
- Creare un nuovo notebook.
- Compilare i campi corrispondenti nello script di Python.
- Eseguire lo script di Python.
dbutils.fs.mount(
source = "wasbs://<container-name>@<storage-account-name>.blob.core.windows.net",
mount_point = "/mnt/<mount-name>",
extra_configs = {"<conf-key>":dbutils.secrets.get(scope = "<scope-name>", key = "<key-name>")})
df = spark.read.text("/mnt/<mount-name>/<file-name>")
df.show()
Passaggi successivi
Assicurati che il tuo Key Vault sia recuperabile.