Compartir a través de


Uso de una identidad administrada para ejecutar un trabajo de exportación continua

Se aplica a: ✅ de Azure Data Explorer

Un trabajo de exportación continua exporta datos a una tabla externa con una consulta ejecutada periódicamente.

El trabajo de exportación continua debe configurarse con una identidad administrada en los escenarios siguientes:

  • Cuando la tabla externa usa la autenticación de suplantación
  • Cuando la consulta hace referencia a tablas en otras bases de datos
  • Cuando la consulta hace referencia a tablas con una directiva de seguridad de nivel de fila habilitada

Un trabajo de exportación continua configurado con una identidad administrada se realiza en nombre de la identidad administrada.

En este artículo, aprenderá a configurar una identidad administrada asignada por el sistema o asignada por el usuario y a crear un trabajo de exportación continua mediante esa identidad.

Prerrequisitos

Configuración de una identidad administrada

Hay dos tipos de identidades administradas:

  • asignados por el sistema: una identidad asignada por el sistema está conectada al clúster y se quita cuando se quita el clúster. Solo se permite una identidad asignada por el sistema por clúster.

  • asignadas por el usuario: una identidad administrada asignada por el usuario es un recurso de Azure independiente. Se pueden asignar varias identidades asignadas por el usuario al clúster.

Seleccione una de las pestañas siguientes para configurar el tipo de identidad administrada preferido.

  • asignadas por el usuario
  • asignados por el sistema
  1. Siga los pasos para Agregar una identidad asignada por el usuario.

  2. En Azure Portal, en el menú izquierdo del recurso de identidad administrada, seleccione Propiedades. Copie y guarde el id. de inquilino y id. de entidad de seguridad para usarlos en los pasos siguientes.

    Captura de pantalla del área de Azure Portal con identificadores de identidad administrada.

  3. Ejecute el siguiente comando directiva .alter-merge managed_identity, reemplazando <objectId> por el identificador de objeto de identidad administrada del paso anterior. Este comando establece una directiva de identidad administrada en el clúster que permite usar la identidad administrada con la exportación continua.

    .alter-merge cluster policy managed_identity ```[
        {
          "ObjectId": "<objectId>",
          "AllowedUsages": "AutomatedFlows"
        }
    ]```
    

    Nota

    Para establecer la directiva en una base de datos específica, use database <DatabaseName> en lugar de cluster.

  4. Ejecute el siguiente comando para conceder a la identidad administrada Visor de bases de datos permisos sobre todas las bases de datos usadas para la exportación continua, como la base de datos que contiene la tabla externa.

    .add database <DatabaseName> viewers ('aadapp=<objectId>;<tenantId>')
    

    Reemplace <DatabaseName> por la base de datos pertinente, <objectId> por la identidad administrada id. de entidad de seguridad del paso 2 y <tenantId> por el identificador de inquilino de Microsoft Entra del paso 2.

Configuración de una tabla externa

Las tablas externas hacen referencia a datos ubicados en Azure Storage, como Azure Blob Storage, Azure Data Lake Storage Gen1, Azure Data Lake Storage Gen2 o SQL Server.

Seleccione una de las pestañas siguientes para configurar una tabla externa de Azure Storage o SQL Server.

  1. Cree una cadena de conexión basada en las plantillas de cadena de conexión de almacenamiento . Esta cadena indica el recurso para acceder a y su información de autenticación. Para los flujos de exportación continua, se recomienda autenticación de suplantación.

  2. Ejecute el comando .create o .alter external table para crear la tabla. Use la cadena de conexión del paso anterior como argumento de storageConnectionString.

    Por ejemplo, el comando siguiente crea MyExternalTable que hace referencia a datos con formato CSV en mycontainer de mystorageaccount en Azure Blob Storage. La tabla tiene dos columnas, una para un x entero y otra para una cadena s. La cadena de conexión finaliza con ;impersonate, que indica que se usa la autenticación de suplantación para acceder al almacén de datos.

    .create external table MyExternalTable (x:int, s:string) kind=storage dataformat=csv 
    ( 
        h@'https://mystorageaccount.blob.core.windows.net/mycontainer;impersonate' 
    )
    
  3. Conceda a la identidad administrada permisos de escritura sobre el almacén de datos externo correspondiente. La identidad administrada necesita permisos de escritura porque el trabajo de exportación continua exporta datos al almacén de datos en nombre de la identidad administrada.

    Almacén de datos externo Permisos necesarios Concesión de los permisos
    Azure Blob Storage Colaborador de datos de Storage Blob Asignar un rol de Azure
    Data Lake Storage Gen2 Colaborador de datos de Storage Blob Asignar un rol de Azure
    Data Lake Storage Gen1 Colaborador Asignar un rol de Azure

Creación de un trabajo de exportación continua

Seleccione una de las pestañas siguientes para crear un trabajo de exportación continua que se ejecute en nombre de una identidad administrada asignada por el usuario o asignada por el sistema.

  • asignadas por el usuario
  • asignados por el sistema

Ejecute el comando .create-or-alter continuous-export con la propiedad managedIdentity establecida en el identificador de objeto de identidad administrada.

Por ejemplo, el comando siguiente crea un trabajo de exportación continua denominado MyExport para exportar los datos de MyTable a MyExternalTable en nombre de una identidad administrada asignada por el usuario. <objectId> debe ser un identificador de objeto de identidad administrada.

.create-or-alter continuous-export MyExport over (MyTable) to table MyExternalTable with (managedIdentity=<objectId>, intervalBetweenRuns=5m) <| MyTable