Compartir por


Impedir la replicación de objetos en inquilinos de Microsoft Entra

La replicación de objetos copia asincrónicamente blobs en bloque de un contenedor de una cuenta de almacenamiento a un contenedor de otra cuenta de almacenamiento. Al configurar una directiva de replicación de objetos, especifique la cuenta de origen y el contenedor, así como la cuenta de destino y el contenedor. Una vez configurada la directiva, Azure Storage copia automáticamente los resultados de las operaciones de creación, actualización y eliminación de un objeto de origen en el de destino. Para obtener más información sobre la replicación de objetos en Azure Storage, vea Replicación de objetos para blobs en bloques.

Un usuario autorizado puede configurar una directiva de replicación de objetos en la que la cuenta de origen se encuentra en un inquilino de Microsoft Entra y la cuenta de destino está en un inquilino diferente si se permite la replicación entre inquilinos de Microsoft Entra. Si las directivas de seguridad exigen que restrinja la replicación de objetos a las cuentas de almacenamiento que residen solo en el mismo inquilino, puede impedir la creación de directivas cuando las que las cuentas de origen y destino se encuentren en inquilinos diferentes. De forma predeterminada, la replicación de objetos entre inquilinos está deshabilitada para todas las cuentas de almacenamiento nuevas creadas después del 15 de diciembre de 2023, a menos que la permita explícitamente.

En este artículo se describe cómo corregir la replicación de objetos entre inquilinos para las cuentas de almacenamiento. También se describe cómo crear directivas para aplicar una prohibición en la replicación de objetos entre inquilinos para cuentas de almacenamiento nuevas y existentes.

Para más información sobre cómo configurar directivas de replicación de objetos, incluidas las directivas entre inquilinos, consulte Configuración de la replicación de objetos para blobs en bloques.

Corrección de la replicación de objetos entre inquilinos

Para evitar la replicación de objetos entre inquilinos de Microsoft Entra, establezca la propiedad AllowCrossTenantReplication de la cuenta de almacenamiento en false. Si una cuenta de almacenamiento no participa actualmente en ninguna directiva de replicación de objetos entre inquilinos, establecer la propiedad AllowCrossTenantReplication en false impide la configuración futura de directivas de replicación de objetos entre inquilinos con esta cuenta de almacenamiento como origen o destino. Sin embargo, si una cuenta de almacenamiento participa actualmente en una o varias directivas de replicación de objetos entre inquilinos, no se permite establecer la propiedad AllowCrossTenantReplication en false hasta que elimine las directivas entre inquilinos existentes.

Las directivas entre inquilinos no se permiten de forma predeterminada para una cuenta de almacenamiento creada después del 15 de diciembre de 2023. Sin embargo, la propiedad AllowCrossTenantReplication no se estableció de forma predeterminada para una cuenta de almacenamiento existente creada antes del 15 de diciembre de 2023 y no devuelve un valor hasta que se hubiera establecido explícitamente. La cuenta de almacenamiento puede participar en directivas de replicación de objetos entre inquilinos cuando el valor de la propiedad es null o true para las cuentas creadas antes del 15 de desarrollo de 2023. En el caso de las cuentas creadas después de ese tiempo, la propiedad debe establecerse en true. Al establecer la propiedad AllowCrossTenantReplication, no se produce ningún tiempo de inactividad en la cuenta de almacenamiento.

Corrección de la replicación entre inquilinos para una nueva cuenta

Para no permitir la replicación entre inquilinos para una nueva cuenta de almacenamiento, use Azure Portal, PowerShell o la CLI de Azure. La propiedad tiene como valor predeterminado false para las nuevas cuentas creadas después del 15 de diciembre de 2023, incluso cuando no se establecen explícitamente.

Para no permitir la replicación de objetos entre inquilinos para una cuenta de almacenamiento, siga estos pasos:

  1. En Azure Portal, vaya a la página Cuentas de almacenamiento y seleccione Crear.

  2. Rellene la pestaña Aspectos básicos para la nueva cuenta de almacenamiento.

  3. En la pestaña Opciones avanzadas, en la sección Blob Storage, busque la opción Permitir replicación entre inquilinos y desactive la casilla.

    Screenshot showing how to disallow cross-tenant object replication for a new storage account

  4. Complete el proceso de creación de la cuenta.

Corrección de la replicación entre inquilinos para una cuenta existente

Para no permitir la replicación entre inquilinos para una cuenta de almacenamiento existente, use Azure Portal, PowerShell o la CLI de Azure.

Para no permitir la replicación de objetos entre inquilinos para una cuenta de almacenamiento existente que no participa actualmente en ninguna directiva entre inquilinos, siga estos pasos:

  1. Vaya a la cuenta de almacenamiento en Azure Portal.

  2. En Administración de datos, seleccione Replicación de objetos.

  3. Seleccione Configuración avanzada.

  4. Desactive Permitir replicación entre inquilinos. De forma predeterminada, esta casilla está activada, porque se permite la replicación de objetos entre inquilinos para una cuenta de almacenamiento a menos que no se permita explícitamente.

    Screenshot showing how to disallow cross-tenant object replication for an existing storage account

  5. Seleccione Aceptar para guardar los cambios.

Si la cuenta de almacenamiento participa actualmente en una o varias directivas de replicación entre inquilinos, no podrá permitir la replicación de objetos entre inquilinos hasta que elimine esas directivas. En este escenario, la configuración no está disponible en Azure Portal, tal como se muestra en la siguiente imagen.

Screenshot

Después de no permitir la replicación entre inquilinos, se produce un error al intentar configurar una directiva entre inquilinos con la cuenta de almacenamiento como origen o destino. Azure Storage devuelve un error que indica que no se permite la replicación de objetos entre inquilinos para la cuenta de almacenamiento.

Cuando no se permite la replicación de objetos entre inquilinos para una cuenta de almacenamiento, las nuevas directivas de replicación de objetos que cree con esa cuenta deben incluir los identificadores de Azure Resource Manager completos para la cuenta de origen y de destino. Azure Storage requiere el identificador de recurso completo para comprobar si las cuentas de origen y destino residen en el mismo inquilino. Para obtener más información, vea Especificar identificadores de recursos completos para las cuentas de origen y de destino.

La propiedad AllowCrossTenantReplication se admite en cuentas de almacenamiento que usan únicamente el modelo de implementación de Azure Resource Manager. Para información sobre qué cuentas de almacenamiento usan el modelo de implementación de Azure Resource Manager, consulte Tipos de cuentas de almacenamiento.

Permisos para permitir o no permitir la replicación entre inquilinos

Para establecer la propiedad AllowCrossTenantReplication para una cuenta de almacenamiento, un usuario debe tener permisos para crear y administrar cuentas de almacenamiento. Los roles de control de acceso basado en rol de Azure (Azure RBAC) que proporcionan estos permisos incluyen la acción Microsoft.Storage/storageAccounts/write o Microsoft.Storage/storageAccounts/*. Los roles integrados con esta acción incluyen:

Estos roles no proporcionan acceso a los datos de una cuenta de almacenamiento a través de Microsoft Entra ID. Sin embargo, incluyen Microsoft.Storage/storageAccounts/listkeys/action, que concede acceso a las claves de acceso de la cuenta. Con este permiso, un usuario puede usar las claves de acceso de la cuenta para acceder a todos los datos de una cuenta de almacenamiento.

Las asignaciones de roles deben tener el ámbito del nivel de la cuenta de almacenamiento o superior para permitir que un usuario permita o deniegue la replicación de objetos entre inquilinos para la cuenta de almacenamiento. Para obtener más información sobre el ámbito de los roles, vea Comprensión del ámbito para RBAC de Azure.

Tenga cuidado de restringir la asignación de estos roles solo a aquellos usuarios que requieran la capacidad de crear una cuenta de almacenamiento o actualizar sus propiedades. Use el principio de privilegios mínimos para asegurarse de que los usuarios tienen los permisos mínimos que necesitan para realizar sus tareas. Para más información sobre la administración del acceso con RBAC de Azure, consulte Procedimientos recomendados para RBAC de Azure.

Nota

Los roles clásicos de administrador de suscripciones Administrador del servicio y Coadministrador equivalen al rol Propietario de Azure Resource Manager. El rol Propietario incluye todas las acciones, por lo que un usuario con uno de estos roles administrativos también puede crear y administrar cuentas de almacenamiento. Para obtener más información, consulte Roles de Azure, roles de Microsoft Entra y roles de administrador de suscripción clásicos .

Uso de Azure Policy para auditar el cumplimiento

Si tiene un gran número de cuentas de almacenamiento, tal vez quiera realizar una auditoría para asegurarse de que esas cuentas están configuradas para impedir la replicación de objetos entre inquilinos. Para auditar un conjunto de cuentas de almacenamiento para su cumplimiento, use Azure Policy. Azure Policy es un servicio que puede usar para crear, asignar y administrar directivas que aplican reglas a los recursos de Azure. Azure Policy le permite mantener esos recursos conforme a lo establecido en los estándares corporativos y los contratos de nivel de servicio. Para más información, consulte la Introducción a Azure Policy.

Creación de una directiva con un efecto de auditoría

Azure Policy admite efectos que determinan lo que sucede cuando una regla de directiva se evalúa con respecto a un recurso. El efecto de auditoría crea una advertencia cuando un recurso no cumple los requisitos, pero no detiene la solicitud. Para más información, consulte Comprender los efectos de Azure Policy.

Para crear una directiva con un efecto de auditoría para la configuración de replicación de objetos entre inquilinos de una cuenta de almacenamiento con Azure Portal, siga estos pasos:

  1. En Azure Portal, vaya al servicio Azure Policy.

  2. Seleccione Definiciones en la sección Creación.

  3. Seleccione Agregar definición de directiva para crear una nueva definición de directiva.

  4. En el campo donde se indica la ubicación de la definición, seleccione el botón Más para especificar dónde se encuentra el recurso de directiva de auditoría.

  5. Escriba un nombre para la directiva. Si lo desea, puede escribir también una descripción y la categoría.

  6. En Regla de directivas, agregue la siguiente definición de directiva a la sección policyRule.

    {
      "if": {
        "allOf": [
          {
            "field": "type",
            "equals": "Microsoft.Storage/storageAccounts"
          },
          {
            "not": {
              "field":"Microsoft.Storage/storageAccounts/allowCrossTenantReplication",
              "equals": "false"
            }
          }
        ]
      },
      "then": {
        "effect": "audit"
      }
    }
    
  7. Guarde la directiva.

Asignación de la directiva

A continuación, asigne la directiva a un recurso. El ámbito de la directiva corresponde a ese recurso y a todos los recursos que hay debajo del mismo. Para más información sobre la asignación de directivas, consulte Estructura de asignaciones de Azure Policy.

Para asignar la directiva con Azure Portal, haga lo siguiente:

  1. En Azure Portal, vaya al servicio Azure Policy.
  2. Seleccione Asignaciones en la sección Creación.
  3. Seleccione Asignar directiva para crear una nueva asignación de directiva.
  4. En el campo Ámbito, seleccione el ámbito de la asignación de directiva.
  5. En el campo Definición de directiva, seleccione el botón Más y, a continuación, seleccione la directiva que definió en la sección anterior de la lista.
  6. Escriba un nombre para la asignación de directiva. La descripción es opcional.
  7. Deje la opción Cumplimiento de directivas como Habilitada. Esta configuración no tiene ningún efecto en la directiva de auditoría.
  8. Seleccione Revisar y crear para crear la asignación.

Ver el informe de cumplimiento

Una vez asignada la directiva, puede ver el informe de cumplimiento. El informe de cumplimiento de una directiva de auditoría proporciona información sobre qué cuentas de almacenamiento siguen permitiendo directivas de replicación de objetos entre inquilinos. Para más información, consulte Obtención de datos de cumplimiento de directiva.

El informe de cumplimiento puede tardar varios minutos en estar disponible después de que se cree la asignación de directiva.

Para ver el informe de cumplimiento en Azure Portal, siga estos pasos:

  1. En Azure Portal, vaya al servicio Azure Policy.

  2. Seleccione Cumplimiento.

  3. Filtre los resultados por el nombre de la asignación de directiva que creó en el paso anterior. El informe muestra los recursos que no cumplen la directiva.

  4. Puede explorar en profundidad el informe para obtener más detalles, incluida una lista de cuentas de almacenamiento que no cumplen los requisitos.

    Screenshot showing compliance report for audit policy for blob cross-tenant object replication

Usar Azure Policy para aplicar las directivas de replicación en el mismo inquilino

Azure Policy admite la gobernanza en la nube, asegurándose así de que los recursos de Azure cumplen los requisitos y los estándares establecidos. Para asegurarse de que las cuentas de almacenamiento de su organización no permitan la replicación entre clientes, puede crear una directiva que impida la creación de una nueva cuenta de almacenamiento que admita directivas de replicación de objetos entre inquilinos. La directiva de cumplimiento usa el efecto de denegación para evitar una solicitud que podría crear o modificar una cuenta de almacenamiento para permitir la replicación de objetos entre inquilinos. La directiva de denegación también impedirá todos los cambios de configuración en una cuenta existente si la configuración de la replicación de objetos entre inquilinos no es compatible con la directiva. Para más información sobre los efecto de la denegación, consulte Comprender los efectos de Azure Policy.

Para crear una directiva con un efecto de denegación para la replicación de objetos entre inquilinos, siga los mismos pasos que se indican en Uso de Azure Policy para auditar el cumplimiento, pero proporcione el siguiente código JSON en la sección policyRule de la definición de directivas:

{
  "if": {
    "allOf": [
      {
        "field": "type",
        "equals": "Microsoft.Storage/storageAccounts"
      },
      {
        "not": {
          "field":"Microsoft.Storage/storageAccounts/allowCrossTenantReplication",
          "equals": "false"
        }
      }
    ]
  },
  "then": {
    "effect": "deny"
  }
}

Después de crear la directiva con el efecto de denegación y asignarla a un ámbito, un usuario no puede crear una cuenta de almacenamiento que permita la replicación de objetos entre inquilinos. Asimismo, los usuarios tampoco pueden realizar cambios de configuración en una cuenta de almacenamiento existente que actualmente permita la replicación de objetos entre inquilinos. Si intentan hacerlo, se producirá un error. La propiedad AllowCrossTenantReplication de la cuenta de almacenamiento debe establecerse en false para continuar con la creación o las actualizaciones de configuración de la cuenta, de acuerdo con la directiva.

En la siguiente imagen se muestra el error que se produce si se intenta crear una cuenta de almacenamiento que permita la replicación de objetos entre inquilinos (el valor predeterminado de una nueva cuenta) cuando una directiva con un efecto de denegación requiere que no se permita la replicación de objetos entre inquilinos.

Screenshot showing the error that occurs when creating a storage account in violation of policy

Consulte también