Udostępnij za pośrednictwem


Klucze zarządzane przez klienta w wystąpieniu zarządzanym platformy Azure dla usługi Apache Cassandra

W usłudze Azure Managed Instance for Apache Cassandra możesz użyć własnego klucza do szyfrowania danych na dysku. W tym artykule opisano sposób implementowania kluczy zarządzanych przez klienta przy użyciu usługi Azure Key Vault.

Wymagania wstępne

  • Konfigurowanie wpisu tajnego przy użyciu usługi Azure Key Vault. Aby uzyskać więcej informacji, zobacz About Azure Key Vault secrets (Informacje o wpisach tajnych usługi Azure Key Vault).

  • Wdróż sieć wirtualną w grupie zasobów.

  • Zastosuj rolę Współautor sieci z jednostką usługi Azure Cosmos DB jako członkiem. Użyj następującego polecenia:

        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>
    

    Zastosowanie odpowiedniej roli do sieci wirtualnej pomaga uniknąć awarii podczas wdrażania wystąpienia zarządzanego platformy Azure dla klastra Apache Cassandra. Aby uzyskać więcej informacji, zobacz Tworzenie wystąpienia zarządzanego platformy Azure dla klastra Apache Cassandra przy użyciu interfejsu wiersza polecenia platformy Azure.

Ten artykuł wymaga interfejsu wiersza polecenia platformy Azure w wersji 2.30.0 lub nowszej. Jeśli używasz usługi Azure Cloud Shell, najnowsza wersja jest już zainstalowana.

Tworzenie klastra z tożsamością przypisaną przez system

  1. Utwórz klaster przy użyciu następującego polecenia. Zastąp <subscriptionID>wartości , <resourceGroupName>, <vnetName>i <subnetName> odpowiednimi wartościami.

    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. Uzyskaj informacje o tożsamości utworzonego klastra:

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

    Dane wyjściowe zawierają sekcję tożsamości podobną do poniższego przykładu. Skopiuj wartość do późniejszego principalId użycia.

      "identity": {
        "principalId": "aaaaaaaa-bbbb-cccc-1111-222222222222",
        "tenantId": "aaaabbbb-0000-cccc-1111-dddd2222eeee",
        "type": "SystemAssigned"
      }
    
  3. W witrynie Azure Portal przejdź do magazynu kluczy i wybierz pozycję Zasady dostępu. Następnie wybierz pozycję Dodaj zasady dostępu, aby utworzyć zasady dostępu dla kluczy.

    Zrzut ekranu przedstawiający okienko zasad dostępu w witrynie Azure Portal.

  4. W obszarze Uprawnienia klucza wybierz pozycję Pobierz, zawijaj i odpakuj. Wybierz pole Wybierz podmiot zabezpieczeń, aby otworzyć okienko Podmiot zabezpieczeń. Wprowadź pobraną wcześniej wartość klastra principalId , a następnie wybierz przycisk Wybierz . (W portalu można również wyszukać identyfikator podmiotu zabezpieczeń klastra według nazwy klastra).

    Zrzut ekranu przedstawiający przykład dodawania podmiotu zabezpieczeń dla zasad dostępu.

    Ostrzeżenie

    Upewnij się, że magazyn kluczy ma włączoną ochronę przed przeczyszczeniem. Wdrożenia centrum danych nie powiedzą się bez niego.

  5. Wybierz pozycję Dodaj , aby dodać zasady dostępu, a następnie wybierz pozycję Zapisz.

    Zrzut ekranu przedstawiający przycisk zapisywania zasad dostępu.

  6. Aby uzyskać identyfikator klucza, wybierz pozycję Klucze, a następnie wybierz klucz.

    Zrzut ekranu przedstawiający okienko wybierania klucza.

  7. Wybierz bieżącą wersję.

    Zrzut ekranu przedstawiający pole wyboru bieżącej wersji klucza.

  8. Zapisz identyfikator klucza do późniejszego użycia.

    Zrzut ekranu przedstawiający kopiowanie identyfikatora klucza do schowka.

  9. Utwórz centrum danych, zastępując <key identifier> element tym samym kluczem (identyfikator URI skopiowany w poprzednim kroku) dla szyfrowania dysku zarządzanego (managed-disk-customer-key-uri) i magazynu kopii zapasowych (backup-storage-customer-key-uri). Użyj tej samej wartości, która subnet była używana wcześniej.

    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
    

Tożsamość można również przypisać do istniejącego klastra bez informacji o tożsamości:

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

Obracanie klucza

Aby zaktualizować klucz, użyj następującego polecenia:

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