Kundenseitig verwaltete Schlüssel für die Azure Fluid Relay-Verschlüsselung

Sie können Ihren eigenen Verschlüsselungsschlüssel verwenden, um die Daten in Ihrer Azure Fluid Relay-Ressource zu schützen. Wenn Sie einen kundenseitig verwalteten Schlüssel (Customer-Managed Key, CMK) angeben, wird dieser zum Schützen und Steuern des Zugriffs auf den Schlüssel verwendet, mit dem Ihre Daten verschlüsselt werden. CMKs ermöglichen eine flexiblere Verwaltung von Zugriffssteuerungen.

Zum Speichern Ihres CMK muss einer der folgenden Azure-Schlüsselspeicher verwendet werden:

Sie müssen eine neue Azure Fluid Relay-Ressource erstellen, um das CMK-Feature zu aktivieren. Der CMK-Aktivierungsstatus einer bereits vorhandenen Fluid Relay-Ressource kann nicht geändert werden.

Darüber hinaus basiert der CMK von Fluid Relay auf einer verwalteten Identität, und Sie müssen der Fluid Relay-Ressource beim Aktivieren des CMK-Features eine verwaltete Identität zuweisen. Für den CMK der Fluid Relay-Ressource ist nur eine benutzerseitig zugewiesene Identität zulässig. Weitere Informationen zu verwalteten Identitäten finden Sie hier.

Es ist noch nicht möglich, eine Fluid Relay-Ressource mit CMK über das Azure-Portal zu konfigurieren.

Wenn Sie die Fluid Relay-Ressource mit CMK konfigurieren, konfiguriert der Azure Fluid Relay-Dienst die entsprechenden mit dem CMK verschlüsselten Einstellungen in dem Azure Storage-Kontobereich, in dem Ihre Fluid-Sitzungsartefakte gespeichert sind. Weitere Informationen zu CMK in Azure Storage finden Sie hier.

Um zu überprüfen, ob eine Fluid Relay-Ressource CMK verwendet, können Sie die Eigenschaft der Ressource überprüfen. Senden Sie hierzu GET, und überprüfen Sie, ob eine gültige, nicht leere Eigenschaft vom Typ „encryption.customerManagedKeyEncryption“ vorhanden ist.

Voraussetzungen:

Um CMK für Ihre Azure Fluid Relay-Ressource konfigurieren zu können, müssen die folgenden Voraussetzungen erfüllt sein:

  • Schlüssel müssen in einer Azure Key Vault-Instanz gespeichert werden.
  • Schlüssel müssen RSA-Schlüssel sein. EC-Schlüssel sind nicht zulässig, da EC-Schlüssel WRAP und UNWRAP nicht unterstützen.
  • Eine benutzerseitig zugewiesene verwaltete Identität muss mit den erforderlichen Berechtigungen (GET, WRAP und UNWRAP) für den Schlüsseltresor aus Schritt 1 erstellt werden. Weitere Informationen finden Sie hier. Erteilen Sie in Azure Key Vault unter „Schlüsselberechtigungen“ die Berechtigungen „GET“, „WRAP“ und „UNWRAP“.
  • Azure Key Vault, vom Benutzer zugewiesene Identität und die Fluid Relay-Ressource müssen sich in derselben Region und im selben Microsoft Entra-Mandanten befinden.

Erstellen einer Fluid Relay-Ressource mit CMK

PUT https://management.azure.com/subscriptions/<subscription ID>/resourceGroups/<resource group name> /providers/Microsoft.FluidRelay/fluidRelayServers/< Fluid Relay resource name>?api-version=2022-06-01 @"<path to request payload>" 

Format der Anforderungsnutzdaten:

{ 
    "location": "<the region you selected for Fluid Relay resource>", 
    "identity": { 
        "type": "UserAssigned", 
        "userAssignedIdentities": { 
            “<User assigned identity resource ID>": {} 
        } 
    }, 
    "properties": { 
       "encryption": { 
            "customerManagedKeyEncryption": { 
                "keyEncryptionKeyIdentity": { 
                    "identityType": "UserAssigned", 
                    "userAssignedIdentityResourceId":  "<User assigned identity resource ID>" 
                }, 
                "keyEncryptionKeyUrl": "<key identifier>" 
            } 
        } 
    } 
} 

Beispiel für „userAssignedIdentities“ und „userAssignedIdentityResourceId“: /subscriptions/xxxx-xxxx-xx/resourceGroups/testGroup/providers/Microsoft.ManagedIdentity/userAssignedIdentities/testUserAssignedIdentity

Beispiel für „keyEncryptionKeyUrl“: https://test-key-vault.vault.azure.net/keys/testKey/testKeyVersionGuid

Hinweise:

  • „Identity.type“ muss „UserAssigned“ lauten. Hierbei handelt es sich um den Identitätstyp der verwalteten Identität, die der Fluid Relay-Ressource zugewiesen wird.
  • „Properties.encryption.customerManagedKeyEncryption.keyEncryptionKeyIdentity.identityType“ muss „UserAssigned“ lauten. Hierbei handelt es sich um den Identitätstyp der verwalteten Identität, die für CMK verwendet werden soll.
  • In „Identity.userAssignedIdentities“ können zwar mehrere Identitäten angegeben werden, es wird jedoch nur eine einzelne, der angegebenen Fluid Relay-Ressource zugewiesene Benutzeridentität für den CMK-Zugriff auf den Schlüsseltresor für die Verschlüsselung verwendet.
  • „Properties.encryption.customerManagedKeyEncryption.keyEncryptionKeyIdentity.userAssignedIdentityResourceId“ ist die Ressourcen-ID der benutzerseitig zugewiesenen Identität, die für CMK verwendet werden soll. Beachten Sie, dass es sich um eine der Identitäten in „Identity.userAssignedIdentities“ handeln muss. (Sie müssen die Identität der Fluid Relay-Ressource zuweisen, um sie für CMK verwenden zu können.) Außerdem muss sie über die erforderlichen Berechtigungen für den Schlüssel verfügen (bereitgestellt von „keyEncryptionKeyUrl“).
  • „Properties.encryption.customerManagedKeyEncryption.keyEncryptionKeyUrl“ ist der für CMK verwendete Schlüsselbezeichner.

Aktualisieren von CMK-Einstellungen einer vorhandenen Fluid Relay-Ressource

Folgende CMK-Einstellungen können für vorhandene Fluid Relay-Ressourcen aktualisiert werden:

  • Sie können die Identität ändern, die für den Zugriff auf den Schlüsselverschlüsselungsschlüssel verwendet wird.
  • Sie können den Bezeichner des Schlüsselverschlüsselungsschlüssels (Schlüssel-URL) ändern.
  • Sie können die Schlüsselversion des Schlüsselverschlüsselungsschlüssels ändern.

Beachten Sie, dass das CMK-Feature für eine vorhandene Fluid Relay-Ressource nicht mehr deaktiviert werden kann, nachdem es aktiviert wurde.

Anforderungs-URL:

PATCH https://management.azure.com/subscriptions/<subscription id>/resourceGroups/<resource group name>/providers/Microsoft.FluidRelay/fluidRelayServers/<fluid relay server name>?api-version=2022-06-01 @"path to request payload" 

Beispiel für Anforderungsnutzdaten zum Aktualisieren der URL des Schlüsselverschlüsselungsschlüssels:

{ 
    "properties": { 
       "encryption": { 
            "customerManagedKeyEncryption": { 
                "keyEncryptionKeyUrl": "https://test_key_vault.vault.azure.net/keys/testKey /xxxxxxxxxxxxxxxx" 
            } 
        } 
    } 
}

Siehe auch