Enhanced Security and Compliance 設定を構成する
Enhanced Security and Compliance は、コンプライアンスのニーズに合わせて強化されたセキュリティと制御を提供するプラットフォーム アドオンです。 価格に関するページを参照してください。 この記事では、強化されたセキュリティおよびコンプライアンス設定を Azure Databricks ワークスペースで構成する方法について説明します。 Azure Databricks ワークスペースは Premium プランである必要があります。
Azure portal を使用してセキュリティとコンプライアンスの強化機能を有効にする
Azure portal で、既存の Azure Databricks ワークスペースまたは Azure Databricks ワークスペースの作成ページで、[セキュリティとコンプライアンス] タブをクリックします。
コンプライアンス セキュリティ プロファイルを有効にするには、[コンプライアンス セキュリティ プロファイルを有効にする] の横にあるチェック ボックスをオンにします。 ドロップダウンで、1 つ以上のコンプライアンス基準を選択するか、[なし] を選択します。
コンプライアンス セキュリティ プロファイルを有効にした場合、またはコンプライアンス標準を追加した場合、それらの選択はそのワークスペースに対して永続的に適用されます。
拡張セキュリティ監視を有効にするには、[拡張セキュリティ監視を有効にする] チェック ボックスをオンにします。
クラスターの自動更新を有効にするには、[クラスターの自動更新を有効にする] チェック ボックスをオンにします。
メンテナンス期間とその頻度を構成するには、「自動クラスター更新」を参照してください
ARM テンプレートを使用してセキュリティとコンプライアンスの強化機能を有効にする
Enhanced Security and Compliance アドオン機能は、Databricks が提供する ARM テンプレートを使用して構成できます。 これには、Enabled
または Disabled
に設定できる追加のパラメーターが含まれています。 これらを既存のテンプレートに追加してワークスペースを更新したい場合は、そうすることができます。 次に示す場合を除き、機能を個別に設定できます。
complianceSecurityProfile
: コンプライアンス セキュリティ プロファイルを有効にする この機能を有効にすると、ワークスペース上で永続的に有効になります。complianceStandards
: コンプライアンス セキュリティ プロファイルで使う一連のコンプライアンス標準を構成します。complianceSecurityProfile
がDisabled
に設定されている場合は、空の配列を渡します。complianceSecurityProfile
がEnabled
に設定されている場合は、ワークスペースに必要なコンプライアンス標準 (存在する場合) を指定する 1 つ以上の文字列の配列を渡す必要があります。 有効な選択肢はHIPAA
、PCI_DSS
、またはNONE
です。 コンプライアンス セキュリティ プロファイルをセキュリティ上の利点のみを目的として使い、規制されたデータを処理するためには使わない場合は、1 つの配列要素NONE
を追加します。
enhancedSecurityMonitoring
- 拡張セキュリティ監視を有効にします。 コンプライアンス セキュリティ プロファイルが有効になっている場合は、テンプレートでこの機能を明示的にEnabled
にする必要があります。automaticClusterUpdate
- 自動クラスター更新を有効にします。 コンプライアンス セキュリティ プロファイルが有効になっている場合は、テンプレートでこの機能を明示的にEnabled
にする必要があります。 メンテナンス期間とその頻度を構成するには、「自動クラスター更新」を参照してください。
これらの機能の 1 つ以上でワークスペースを更新するには、テンプレートを使って新しいワークスペースを作成する場合と同じ手順に従って、カスタム テンプレートをデプロイします。 ただし、元のテンプレートを使っていることを確認してから、用意されているサンプル テンプレートのフィールドを既存のワークスペース テンプレートにコピーしてください。
セキュリティとコンプライアンス機能が強化されたワークスペース テンプレート
{
"$schema": "https://schema.management.azure.com/schemas/2019-04-01/deploymentTemplate.json#",
"contentVersion": "1.0.0.0",
"parameters": {
"disablePublicIp": {
"type": "bool",
"defaultValue": false,
"metadata": {
"description": "Specifies whether to deploy Azure Databricks workspace with secure cluster connectivity (No Public IP) enabled."
}
},
"workspaceName": {
"type": "string",
"metadata": {
"description": "The name of the Azure Databricks workspace to create."
}
},
"pricingTier": {
"type": "string",
"defaultValue": "premium",
"allowedValues": [
"standard",
"premium"
],
"metadata": {
"description": "The pricing tier of workspace."
}
},
"location": {
"type": "string",
"defaultValue": "[resourceGroup().location]",
"metadata": {
"description": "Location for all resources."
}
},
"automaticClusterUpdate": {
"type": "string",
"defaultValue": "Disabled",
"allowedValues": [
"Disabled",
"Enabled"
],
"metadata": {
"description": "Enable/Disable automatic cluster update"
}
},
"enhancedSecurityMonitoring": {
"type": "string",
"defaultValue": "Disabled",
"allowedValues": [
"Disabled",
"Enabled"
],
"metadata": {
"description": "Enable/Disable enhanced security monitoring"
}
},
"complianceSecurityProfile": {
"type": "string",
"defaultValue": "Disabled",
"allowedValues": [
"Disabled",
"Enabled"
],
"metadata": {
"description": "Enable/Disable the Compliance Security Profile"
}
},
"complianceStandards": {
"type": "array",
"defaultValue": [],
"allowedValues": [
[],
["NONE"],
["HIPAA"],
["PCI_DSS"],
["HIPAA", "PCI_DSS"]
],
"metadata": {
"description": "Specify the desired compliance standards for your compliance security profile"
}
}
},
"variables": {
"managedResourceGroupName": "[format('databricks-rg-{0}-{1}', parameters('workspaceName'), uniqueString(parameters('workspaceName'), resourceGroup().id))]",
"trimmedMRGName": "[substring(variables('managedResourceGroupName'), 0, min(length(variables('managedResourceGroupName')), 90))]",
"managedResourceGroupId": "[format('{0}/resourceGroups/{1}', subscription().id, variables('trimmedMRGName'))]"
},
"resources": [
{
"type": "Microsoft.Databricks/workspaces",
"apiVersion": "2023-09-15-preview",
"name": "[parameters('workspaceName')]",
"location": "[parameters('location')]",
"sku": {
"name": "[parameters('pricingTier')]"
},
"properties": {
"managedResourceGroupId": "[variables('managedResourceGroupId')]",
"parameters": {
"enableNoPublicIp": {
"value": "[parameters('disablePublicIp')]"
}
},
"enhancedSecurityCompliance": {
"automaticClusterUpdate": {
"value": "[parameters('automaticClusterUpdate')]"
},
"complianceSecurityProfile": {
"value": "[parameters('complianceSecurityProfile')]",
"complianceStandards": "[parameters('complianceStandards')]"
},
"enhancedSecurityMonitoring": {
"value": "[parameters('enhancedSecurityMonitoring')]"
}
}
}
}
],
"outputs": {
"workspace": {
"type": "object",
"value": "[reference(resourceId('Microsoft.Databricks/workspaces', parameters('workspaceName')), '2023-09-15-preview', 'full')]"
}
}
}
Terraform を使用してセキュリティとコンプライアンスの強化機能を有効にする
また、Databricks 用の azurerm
Terraform プラグインを使用して、Azure Databricks ワークスペースでセキュリティとコンプライアンスの強化を有効にすることもできます。 azurerm
Terraform プラグインの詳細については、azurerm_databricks_workspaceを参照してください。
たとえば、HIPAA と PCI-DSS コンプライアンス コントロールが有効になっている Azure Databricks ワークスペースを作成するには、次のコマンドを使用します。
resource "azurerm_databricks_workspace" "this" {
name = "${local.prefix}-workspace"
resource_group_name = azurerm_resource_group.this.name
location = azurerm_resource_group.this.location
sku = "premium"
managed_resource_group_name = "${local.prefix}-workspace-rg"
tags = local.tags
enhanced_security_compliance {
automatic_cluster_update_enabled = true
compliance_security_profile_enabled = true
compliance_security_profile_standards = ["HIPAA", "PCI_DSS"]
enhanced_security_monitoring_enabled = true
}
}