次の方法で共有


Azure CLI を使用して DBFS 用のカスタマー マネージド キーを構成する

注意

この機能は、Premium プランでのみ使用できます。

Azure CLI を使用して独自の暗号化キーを構成し、ワークスペース ストレージ アカウントを暗号化することができます。 この記事では、Azure Key Vault コンテナーから独自のキーを構成する方法について説明します。 Azure Key Vault マネージド HSM からのキーの使用手順については、「Azure CLI を使用して DBFS 用の HSM カスタマー マネージド キーを構成する」をご覧ください。

DBFS のカスタマー マネージド キーの詳細については、「DBFS ルート用のカスタマー マネージド キー」 をご覧ください。

Azure Databricks CLI 拡張機能をインストールします。

  1. Azure CLI のインストールを実行します。

  2. Azure Databricks CLI 拡張機能をインストールします。

    az extension add --name databricks
    

新規または既存の Azure Databricks ワークスペースを暗号化用に準備する

かっこ内のプレースホルダー値は独自の値に置き換えてください。 <workspace-name> は、Azure portal に表示されるリソース名です。

az login
az account set --subscription <subscription-id>

ワークスペースの作成時に暗号化を準備する:

az databricks workspace create --name <workspace-name> --location <workspace-location> --resource-group <resource-group> --sku premium --prepare-encryption

暗号化用に既存のワークスペースを準備する:

az databricks workspace update --name <workspace-name> --resource-group <resource-group> --prepare-encryption

コマンドの出力の storageAccountIdentity セクションの principalId フィールドに注意してください。 キー コンテナーを構成するときに、管理対象 ID の値として指定します。

Azure Databricks ワークスペースの Azure CLI コマンドの詳細については、「az Databricksワークスペース コマンドのリファレンス」を参照してください。

新しいキー コンテナーを作成する

DBFS ルートのカスタマー マネージド キーの保存に使用する Key Vault では、2 つのキー保護設定 ([論理的な削除][消去保護]) を有効にする必要があります。 これらの設定を有効にして新しいキー コンテナーを作成するには、次のコマンドを実行します。

重要

Key Vault は、Azure Databricks ワークスペースと同じ Azure テナント内にある必要があります。

かっこ内のプレースホルダー値は独自の値に置き換えてください。

az keyvault create \
        --name <key-vault> \
        --resource-group <resource-group> \
        --location <region> \
        --enable-soft-delete \
        --enable-purge-protection

Azure CLI を使用した論理的な削除と消去による保護の有効化の詳細については、「CLI でキー コンテナーの論理的な削除を使用する方法」を参照してください。

キー コンテナーのアクセス ポリシーを構成する

az keyvault set-policy コマンドを使用して、Azure Databricks ワークスペースがアクセス許可を持つキー コンテナーのアクセス ポリシーを設定します。

かっこ内のプレースホルダー値は独自の値に置き換えてください。

az keyvault set-policy \
        --name <key-vault> \
        --resource-group <resource-group> \
        --object-id <managed-identity>  \
        --key-permissions get unwrapKey wrapKey

<managed-identity> を、ワークスペースを暗号化用に準備したときにメモした principalId 値に置き換えます。

新しいキーを作成する

az keyvault key create コマンドを使用して、キー コンテナーにキーを作成します。

かっこ内のプレースホルダー値は独自の値に置き換えてください。

az keyvault key create \
       --name <key> \
       --vault-name <key-vault>

DBFS ルート ストレージでは、2048、3072、および 4096 のサイズの RSA キーと RSA-HSM キーがサポートされています。 キーの詳細については、「Key Vault のキーについて」を参照してください。

カスタマー マネージド キーによる DEFS 暗号化を構成する

Azure Databricks ワークスペースを構成して、Azure Key Vault で作成したキーを使用します。

かっこ内のプレースホルダー値は独自の値に置き換えてください。

key_vault_uri=$(az keyvault show \
 --name <key-vault> \
 --resource-group <resource-group> \
 --query properties.vaultUri \
--output tsv)
key_version=$(az keyvault key list-versions \
 --name <key> \ --vault-name <key-vault> \
 --query [-1].kid \
--output tsv | cut -d '/' -f 6)
az databricks workspace update --name <workspace-name> --resource-group <resource-group> --key-source Microsoft.KeyVault --key-name <key> --key-vault $key_vault_uri --key-version $key_version

カスタマー マネージド キーを無効にする

カスタマー マネージド キーを無効にすると、ストレージ アカウントは、Microsoft が管理するキーを使用して再び暗号化されます。

かっこ内のプレースホルダー値を独自の値に置き換え、前の手順で定義した変数を使用してください。

az databricks workspace update --name <workspace-name> --resource-group <resource-group> --key-source Default