Claves administradas por el cliente para el cifrado de Azure Fluid Relay

Puede usar su propia clave de cifrado para proteger los datos del recurso de Azure Fluid Relay. Cuando se especifica una clave administrada por el cliente (CMK), esa clave se usa para proteger y controlar el acceso a la clave que cifra los datos. CMK ofrece más flexibilidad para administrar los controles de acceso.

Debe usar uno de los siguientes almacenes de claves de Azure para almacenar la CMK:

Debe crear un nuevo recurso de Azure Fluid Relay para habilitar CMK. No puede cambiar la habilitación o deshabilitación de CMK en un recurso de Fluid Relay existente.

Además, CMK de Fluid Relay se basa en la identidad administrada y debe asignar una identidad administrada al recurso de Fluid Relay al habilitar CMK. Solo se permite la identidad asignada por el usuario para la CMK del recurso de Fluid Relay. Para más información sobre las identidades administradas, consulte aquí.

La configuración de un recurso de Fluid Relay con CMK no se puede realizar aún mediante Azure Portal.

Al configurar el recurso de Fluid Relay con CMK, el servicio Azure Fluid Relay configura las opciones cifradas de CMK adecuadas en el ámbito de la cuenta de Azure Storage donde se almacenan los artefactos de sesión de Fluid. Para más información sobre CMK en Azure Storage, consulte aquí.

Para comprobar que un recurso de Fluid Relay utiliza CMK, puede comprobar la propiedad del recurso enviando GET y ver si tiene una propiedad encryption.customerManagedKeyEncryption válida y no vacía.

Requisitos previos:

Antes de configurar CMK en el recurso de Azure Fluid Relay, se deben cumplir los siguientes requisitos previos:

  • Las claves se deben almacenar en una instancia de Azure Key Vault.
  • Las claves deben ser claves RSA y no claves EC, ya que las claves EC no admiten WRAP y UNWRAP.
  • Se debe crear una identidad administrada asignada por el usuario con los permisos necesarios (GET, WRAP y UNWRAP) en el almacén de claves del paso 1. Puede encontrar más información aquí: Conceda los permisos GET, WRAP y UNWRAP en Permisos de clave en AKV.
  • Azure Key Vault, la identidad asignada por el usuario y el recurso fluid Relay deben estar en la misma región y en el mismo inquilino de Microsoft Entra.

Creación de un recurso de Fluid Relay con 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>" 

Formato de la carga de la solicitud:

{ 
    "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>" 
            } 
        } 
    } 
} 

userAssignedIdentities de ejemplo y userAssignedIdentityResourceId: /subscriptions/ xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx/resourceGroups/testGroup/providers/Microsoft.ManagedIdentity/userAssignedIdentities/testUserAssignedIdentity

keyEncryptionKeyUrl de ejemplo: https://test-key-vault.vault.azure.net/keys/testKey/testKeyVersionGuid

Notas:

  • El valor de Identity.type debe ser UserAssigned. Es el tipo de identidad de la identidad administrada que está asignada al recurso de Fluid Relay.
  • El valor de Properties.encryption.customerManagedKeyEncryption.keyEncryptionKeyIdentity.identityType debe ser UserAssigned. Es el tipo de identidad de la identidad administrada que se debe usar para CMK.
  • Aunque puede especificar más de una en Identity.userAssignedIdentities, solo se usará una identidad de usuario asignada al recurso de Fluid Relay especificado para el acceso de CMK al almacén de claves para el cifrado.
  • Properties.encryption.customerManagedKeyEncryption.keyEncryptionKeyIdentity.userAssignedIdentityResourceId es el identificador de recurso de la identidad asignada por el usuario que se debe usar para CMK. Tenga en cuenta que debe ser una de las identidades de Identity.userAssignedIdentities (debe asignar la identidad al recurso de Fluid Relay para poder usarla para CMK). Además, debe tener los permisos necesarios en la clave (proporcionada por keyEncryptionKeyUrl).
  • Properties.encryption.customerManagedKeyEncryption.keyEncryptionKeyUrl es el identificador de clave que se usa para CMK.

Actualización de la configuración de CMK de un recurso de Fluid Relay existente

Puede actualizar la siguiente configuración de CMK en un recurso de Fluid Relay existente:

  • Cambie la identidad que se usa para acceder a la clave de cifrado de claves.
  • Cambie el identificador de la clave de cifrado de claves (dirección URL de la clave).
  • Cambie la versión de clave de la clave de cifrado de claves.

Tenga en cuenta que no puede deshabilitar CMK en un recurso de Fluid Relay existente una vez habilitado.

URL de solicitud:

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" 

Ejemplo de carga de la solicitud para actualizar la dirección URL de la clave de cifrado de claves:

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

Consulte también