Bagikan melalui


Kunci yang dikelola pelanggan di Azure Managed Instance for Apache Cassandra

Di Azure Managed Instance for Apache Cassandra, Anda dapat menggunakan kunci Anda sendiri untuk mengenkripsi data pada disk. Artikel ini menjelaskan cara menerapkan kunci yang dikelola pelanggan dengan menggunakan Azure Key Vault.

Prasyarat

  • Siapkan rahasia dengan menggunakan Azure Key Vault. Untuk informasi selengkapnya, lihat Tentang rahasia Azure Key Vault.

  • Sebarkan jaringan virtual di grup sumber daya Anda.

  • Terapkan peran Kontributor Jaringan dengan perwakilan layanan Azure Cosmos DB sebagai anggota. Gunakan perintah berikut:

        az role assignment create \
        --assignee a232010e-820c-4083-83bb-3ace5fc29d0b \
        --role 4d97b98b-1d4f-4787-a291-c67834d212e7 \
        --scope /subscriptions/<subscriptionID>/resourceGroups/<resourceGroupName>/providers/Microsoft.Network/virtualNetworks/<vnetName>
    

    Menerapkan peran yang sesuai ke jaringan virtual Membantu Anda menghindari kegagalan saat Anda menyebarkan kluster Azure Managed Instance for Apache Cassandra. Untuk informasi selengkapnya, lihat Membuat kluster Azure Managed Instance for Apache Cassandra dengan menggunakan Azure CLI.

Artikel ini memerlukan Azure CLI versi 2.30.0 atau yang lebih baru. Jika menggunakan Azure Cloud Shell, versi terbaru sudah terpasang.

Membuat kluster dengan identitas yang ditetapkan sistem

  1. Buat kluster dengan menggunakan perintah berikut. Ganti <subscriptionID>, <resourceGroupName>, <vnetName>, dan <subnetName> dengan nilai yang sesuai.

    subnet="/subscriptions/<subscriptionID>/resourceGroups/<resourceGroupName>/providers/Microsoft.Network/virtualNetworks/<vnetName>/subnets/<subnetName>"
    cluster="thvankra-cmk-test-wcus"
    group="thvankra-nova-cmk-test"
    region="westcentralus"
    password="PlaceholderPassword"
    
    az managed-cassandra cluster create \
        --identity-type SystemAssigned \
        --resource-group $group \
        --location $region \
        --cluster-name $cluster \
        --delegated-management-subnet-id $subnet \
        --initial-cassandra-admin-password $password
    
  2. Dapatkan informasi identitas kluster yang dibuat:

    az managed-cassandra cluster show -c $cluster -g $group
    

    Output mencakup bagian identitas seperti contoh berikut. principalId Salin nilai untuk digunakan nanti.

      "identity": {
        "principalId": "1aa51c7f-196a-4013-a656-1ccabfdc54e0",
        "tenantId": "72f988bf-86f1-41af-91ab-2d7cd011db47",
        "type": "SystemAssigned"
      }
    
  3. Di portal Azure, buka brankas kunci Anda dan pilih Kebijakan akses. Lalu pilih Tambahkan Kebijakan Akses untuk membuat kebijakan akses untuk kunci Anda.

    Screenshot that shows the pane for access policies in the Azure portal.

  4. Untuk Izin kunci, pilih dapatkan, bungkus, dan buka bungkus. Pilih kotak Pilih prinsipal untuk membuka panel Utama . Masukkan nilai kluster principalId yang Anda ambil sebelumnya, lalu pilih tombol Pilih . (Di portal, Anda juga dapat mencari ID utama kluster dengan nama kluster.)

    Screenshot that shows an example of adding a principal for an access policy.

    Peringatan

    Pastikan brankas kunci mengaktifkan perlindungan penghapusan menyeluruh. Penyebaran pusat data akan gagal tanpanya.

  5. Pilih Tambahkan untuk menambahkan kebijakan akses, lalu pilih Simpan.

    Screenshot that shows the button for saving an access policy.

  6. Untuk mendapatkan pengidentifikasi kunci, pilih Kunci, lalu pilih kunci Anda.

    Screenshot that shows the pane for selecting a key.

  7. Pilih versi saat ini.

    Screenshot that shows the box for selecting the current version of a key.

  8. Simpan pengidentifikasi kunci untuk digunakan nanti.

    Screenshot that shows copying a key identifier to the clipboard.

  9. Buat pusat data dengan mengganti <key identifier> dengan kunci yang sama (URI yang Anda salin di langkah sebelumnya) untuk enkripsi disk terkelola (managed-disk-customer-key-uri) dan penyimpanan cadangan (backup-storage-customer-key-uri). Gunakan nilai yang sama untuk subnet yang Anda gunakan sebelumnya.

    managedDiskKeyUri = "<key identifier>"
    backupStorageKeyUri = "<key identifier>"
    group="thvankra-nova-cmk-test"
    region="westcentralus"
    cluster="thvankra-cmk-test-2"
    dc="dc1"
    nodecount=3
    subnet="/subscriptions/<subscriptionID>/resourceGroups/<resourceGroupName>/providers/Microsoft.Network/virtualNetworks/<vnetName>/subnets/<subnetName>"
    
    az managed-cassandra datacenter create \
        --resource-group $group \
        --cluster-name $cluster \
        --data-center-name $dc \
        --managed-disk-customer-key-uri $managedDiskKeyUri \
        --backup-storage-customer-key-uri $backupStorageKeyUri \
        --node-count $nodecount \
        --delegated-subnet-id $subnet \
        --data-center-location $region \
        --sku Standard_DS14_v2
    

Anda juga dapat menetapkan identitas ke kluster yang ada tanpa informasi identitas:

az managed-cassandra cluster update --identity-type SystemAssigned -g $group -c $cluster

Memutar kunci

Untuk memperbarui kunci, gunakan perintah ini:

managedDiskKeyUri = "<key identifier>"
backupStorageKeyUri = "<key identifier>"
    
az managed-cassandra datacenter update \
    --resource-group $group \
    --cluster-name $cluster \ 
    --data-center-name $dc \
    --managed-disk-customer-key-uri $managedDiskKeyUri \
    --backup-storage-customer-key-uri $backupStorageKeyUri