Sdílet prostřednictvím


Kurz: Přístup ke službě Azure Blob Storage pomocí Azure Databricks a Azure Key Vaultu

V tomto kurzu se dozvíte, jak získat přístup ke službě Azure Blob Storage z Azure Databricks pomocí tajného kódu uloženého ve službě Azure Key Vault.

V tomto kurzu se naučíte:

  • Vytvoření účtu úložiště a kontejneru objektů blob pomocí Azure CLI
  • Vytvoření služby Key Vault a nastavení tajného kódu
  • Vytvoření pracovního prostoru Azure Databricks a přidání oboru tajných kódů služby Key Vault
  • Přístup ke kontejneru objektů blob z pracovního prostoru Azure Databricks

Požadavky

Pokud ještě nemáte předplatné Azure, vytvořte si napřed bezplatný účet.

Než začnete s tímto kurzem, nainstalujte Azure CLI.

Vytvoření účtu úložiště a kontejneru objektů blob pomocí Azure CLI

Abyste mohli používat objekty blob, musíte nejprve vytvořit účet úložiště pro obecné účely. Pokud skupinu prostředků nemáte, vytvořte ji před spuštěním příkazu. Následující příkaz vytvoří a zobrazí metadata kontejneru úložiště. Zkopírujte ID.

az storage account create --name contosoblobstorage5 --resource-group contosoResourceGroup --location eastus --sku Standard_ZRS --encryption-services blob

Výstup konzoly výše uvedeného příkazu ID je zvýrazněné zelenou barvou, aby se zobrazil koncový uživatel.

Než budete moct vytvořit kontejner pro nahrání objektu blob, musíte sami přiřadit roli Přispěvatel dat v objektech blob služby Storage. V tomto příkladu se role přiřadí k účtu úložiště, který jste vytvořili dříve.

az role assignment create --role "Storage Blob Data Contributor" --assignee t-trtr@microsoft.com --scope "/subscriptions/{subscription-id}/resourceGroups/contosoResourceGroup5/providers/Microsoft.Storage/storageAccounts/contosoblobstorage5

Teď, když jste roli přiřadili k účtu úložiště, můžete pro objekt blob vytvořit kontejner.

az storage container create --account-name contosoblobstorage5 --name contosocontainer5 --auth-mode login

Po vytvoření kontejneru můžete do tohoto kontejneru nahrát objekt blob (soubor podle vašeho výběru). V tomto příkladu se nahraje soubor .txt s helloworld.

az storage blob upload --account-name contosoblobstorage5 --container-name contosocontainer5 --name helloworld --file helloworld.txt --auth-mode login

Vypište objekty blob v kontejneru a ověřte, že ho kontejner obsahuje.

az storage blob list --account-name contosoblobstorage5 --container-name contosocontainer5 --output table --auth-mode login

Výstup konzoly výše uvedeného příkazu Zobrazí soubor, který byl právě uložen v kontejneru.

Pomocí následujícího příkazu získejte hodnotu key1 kontejneru úložiště. Zkopírujte hodnotu dolů.

az storage account keys list -g contosoResourceGroup5 -n contosoblobstorage5

Výstup konzoly výše uvedeného příkazu Hodnota klíče1 je zvýrazněná v zeleném rámečku.

Vytvoření služby Key Vault a nastavení tajného kódu

Key Vault vytvoříte pomocí následujícího příkazu. Tento příkaz zobrazí také metadata služby Key Vault. Zkopírujte ID a identifikátor URI trezoru.

az keyvault create --name contosoKeyVault10 --resource-group contosoResourceGroup5 --location eastus

ImageVýstup konzoly výše uvedeného příkazu ID i identifikátor URI trezoru jsou zvýrazněné zelenou barvou, aby se uživatel zobrazil.

K vytvoření tajného kódu použijte následující příkaz. Nastavte hodnotu tajného klíče na hodnotu klíče1 z účtu úložiště.

az keyvault secret set --vault-name contosoKeyVault10 --name storageKey --value "value of your key1"

Vytvoření pracovního prostoru Azure Databricks a přidání oboru tajných kódů služby Key Vault

Tento oddíl nejde dokončit přes příkazový řádek. Budete muset získat přístup k webu Azure Portal , abyste mohli:

  1. Vytvoření prostředku Azure Databricks
  2. Spuštění pracovního prostoru
  3. Vytvoření oboru tajných kódů založených na key Vaultu

Přístup ke kontejneru objektů blob z pracovního prostoru Azure Databricks

Tento oddíl nejde dokončit přes příkazový řádek. Pracovní prostor Azure Databricks budete muset použít k:

  1. Vytvoření nového clusteru
  2. Vytvoření nového poznámkového bloku
  3. Vyplňte odpovídající pole ve skriptu Pythonu.
  4. Spuštění skriptu Pythonu
dbutils.fs.mount(
source = "wasbs://<your-container-name>@<your-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()

Další kroky

Ujistěte se, že je služba Key Vault obnovitelná: