クラスターを作成すると、サービス はサービス レベルでデータを 自動的に暗号化 します。 データのセキュリティを強化するために、さらに二重暗号化を有効にすることができます。
二重暗号化を有効にすると、クラスターは 2 つの異なるアルゴリズムを使用してストレージ アカウント内のデータを 2 回暗号化します。
重要
- 二重暗号化は、クラスターの作成時にのみ有効にすることができます。
- クラスターでインフラストラクチャ暗号化を有効にした後は、無効 にすることはできません 。
以前の SDK バージョンに基づくサンプル コードについては、アーカイブ記事を参照してください。
C# を使用して、クラスターの作成時にインフラストラクチャ暗号化を有効にすることができます。
前提条件
Azure Data Explorer C# クライアントを使用してマネージド ID を設定します。
クラスターの作成
enableDoubleEncryption プロパティを使用してクラスターを作成します。
var tenantId = "xxxxxxxx-xxxxx-xxxx-xxxx-xxxxxxxxx"; //Directory (tenant) ID
var clientId = "xxxxxxxx-xxxxx-xxxx-xxxx-xxxxxxxxx"; //Application ID
var clientSecret = "PlaceholderClientSecret"; //Client Secret
var subscriptionId = "xxxxxxxx-xxxxx-xxxx-xxxx-xxxxxxxxx";
var credentials = new ClientSecretCredential(tenantId, clientId, clientSecret);
var resourceManagementClient = new ArmClient(credentials, subscriptionId);
var resourceGroupName = "testrg";
var subscription = await resourceManagementClient.GetDefaultSubscriptionAsync();
var resourceGroup = (await subscription.GetResourceGroupAsync(resourceGroupName)).Value;
var clusters = resourceGroup.GetKustoClusters();
var clusterName = "mykustocluster";
var clusterData = new KustoClusterData(
location: AzureLocation.EastUS,
sku: new KustoSku(KustoSkuName.StandardE8adsV5, KustoSkuTier.Standard) { Capacity = 5 }
) { IsDoubleEncryptionEnabled = true };
await clusters.CreateOrUpdateAsync(WaitUntil.Completed, clusterName, clusterData);
次のコマンドを実行して、クラスターが正常に作成されたかどうかを確認します。
clusterData = (await clusters.GetAsync(clusterName)).Value.Data;
結果にProvisioningState値を持つSucceededが含まれている場合は、クラスターが正常に作成されました。
Azure Resource Manager を使用して、クラスターの作成時にインフラストラクチャの暗号化を有効にすることができます。
Azure Resource Manager テンプレートを使用して、Azure リソースのデプロイを自動化できます。 Azure Data Explorer へのデプロイの詳細については、「Azure Resource Manager テンプレートを使用して Azure Data Explorer クラスターとデータベースを作成する」を参照してください。
Azure Resource Manager テンプレートを使用してシステム割り当て ID を追加する
クラスターのインフラストラクチャ暗号化 (二重暗号化) を有効にするように Azure に指示する EnableDoubleEncryption の種類を追加します。
{
"apiVersion": "2020-06-14",
"type": "Microsoft.Kusto/clusters",
"name": "[variables('clusterName')]",
"location": "[resourceGroup().location]",
"properties": {
"trustedExternalTenants": [],
"virtualNetworkConfiguration": null,
"optimizedAutoscale": null,
"enableDiskEncryption": false,
"enableStreamingIngest": false,
"enableDoubleEncryption": true
}
}
関連するコンテンツ