Cadenas de conexión de Storage

Azure Data Explorer puede interactuar con los servicios de almacenamiento externo. Por ejemplo, puede crear tablas externas de Azure Storage para consultar los datos almacenados en almacenamientos externos.

Se admiten los siguientes tipos de almacenamiento externo:

  • Azure Blob Storage
  • Azure Data Lake Storage Gen2
  • Azure Data Lake Storage Gen1
  • Amazon S3

Cada tipo de almacenamiento tiene los formatos de cadena de conexión correspondientes que se usan para describir los recursos de almacenamiento y cómo acceder a ellos. Azure Data Explorer usa un formato de URI para describir estos recursos de almacenamiento y las propiedades necesarias para acceder a ellos, como las credenciales de seguridad.

Nota

No se admiten servicios web HTTP que no implementan todo el conjunto de API de Azure Blob Storage, incluso si parecen funcionar en algunos escenarios.

Plantillas de cadena de conexión de almacenamiento

Cada tipo de almacenamiento tiene un formato de cadena de conexión diferente. Consulte la tabla siguiente para obtener cadena de conexión plantillas para cada tipo de almacenamiento.

Tipo de almacenamiento Scheme Plantilla de URI
Azure Blob Storage https:// https://StorageAccountName.blob.core.windows.net/Container[/BlobName][CallerCredentials]
Azure Data Lake Storage Gen2 https:// https://StorageAccountName.dfs.core.windows.net/Filesystem[/PathToDirectoryOrFile][CallerCredentials]
Azure Data Lake Storage Gen2 abfss:// abfss://Filesystem@StorageAccountName.dfs.core.windows.net/[PathToDirectoryOrFile] [CallerCredentials]
Azure Data Lake Storage Gen1 adl:// adl://StorageAccountName.azuredatalakestore.net/PathToDirectoryOrFile[CallerCredentials]
Amazon S3 https:// https://BucketName.s3.RegionName.amazonaws.com/ObjectKey[CallerCredentials]

Nota

Para evitar que los secretos aparezcan en seguimientos, use literales de cadena ofuscados.

Almacenamiento de métodos de autenticación

Para interactuar con el almacenamiento externo no públicos desde Azure Data Explorer, debe especificar los medios de autenticación como parte del cadena de conexión de almacenamiento externo. El cadena de conexión define el recurso para acceder a y su información de autenticación.

Azure Data Explorer admite los siguientes métodos de autenticación:

Autenticación admitida por tipo de almacenamiento

En la tabla siguiente se resumen los métodos de autenticación disponibles para diferentes tipos de almacenamiento externo.

Método de autenticación ¿Está disponible en Blob Storage? ¿Está disponible en Azure Data Lake Storage Gen 2? ¿Está disponible en Azure Data Lake Storage Gen 1? ¿Disponible en Amazon S3? ¿Cuándo debe usar este método?
Suplantación ✔️ ✔️ ✔️ Use para flujos asistidos cuando necesite un control de acceso complejo sobre el almacenamiento externo. Por ejemplo, en flujos de exportación continua. También puede restringir el acceso de almacenamiento en el nivel de usuario.
Identidad administrada ✔️ ✔️ ✔️ Use en flujos desatendidos, donde no se puede derivar ninguna entidad de seguridad de Microsoft Entra para ejecutar consultas y comandos. Las identidades administradas son la única solución de autenticación.
Clave de acceso compartido (SAS) ✔️ ✔️ Los tokens de SAS tienen una hora de expiración. Use al acceder al almacenamiento durante un tiempo limitado.
token de acceso de Microsoft Entra ✔️ ✔️ ✔️ Microsoft Entra los tokens tienen una hora de expiración. Use al acceder al almacenamiento durante un tiempo limitado.
Clave de acceso de cuenta de almacenamiento ✔️ ✔️ Cuando necesite acceder a los recursos de forma continua.
Claves de acceso mediante programación de Amazon Web Services ✔️ Cuando necesite acceder a los recursos de Amazon S3 de forma continua.
Dirección URL presignada de Amazon Web Services S3 ✔️ Cuando necesite acceder a los recursos de Amazon S3 con una dirección URL presignada temporal.

Suplantación

Azure Data Explorer suplanta la identidad principal del solicitante para acceder al recurso. Para usar la suplantación, anexe ;impersonate al cadena de conexión.

Ejemplo
"https://fabrikam.blob.core.windows.net/container/path/to/file.csv;impersonate"

La entidad de seguridad debe tener los permisos necesarios para realizar la operación. Por ejemplo, en Azure Blob Storage, para leer desde el blob, la entidad de seguridad necesita el rol Lector de datos de Storage Blob y exportar al blob, la entidad de seguridad necesita el rol Colaborador de datos de Storage Blob. Para más información, consulte control de acceso Azure Blob Storage/Data Lake Storage Gen2 o control de acceso Data Lake Storage Gen1.

Identidad administrada

Azure Data Explorer realiza solicitudes en nombre de una identidad administrada y usa su identidad para acceder a los recursos. Para una identidad administrada asignada por el sistema, anexe ;managed_identity=system al cadena de conexión. Para una identidad administrada asignada por el usuario, anexe ;managed_identity={object_id} al cadena de conexión.

Tipo de identidad administrada Ejemplo
Asignada por el sistema "https://fabrikam.blob.core.windows.net/container/path/to/file.csv;managed_identity=system"
Asignada por el usuario "https://fabrikam.blob.core.windows.net/container/path/to/file.csv;managed_identity=12345678-1234-1234-1234-1234567890ab"

La identidad administrada debe tener los permisos necesarios para realizar la operación. Por ejemplo, en Azure Blob Storage, para leer del blob, la identidad administrada necesita el rol Lector de datos de Storage Blob y exportar al blob la identidad administrada necesita el rol Colaborador de datos de Storage Blob. Para obtener más información, consulte control de acceso Azure Blob Storage/Data Lake Storage Gen2 o control de acceso Data Lake Storage Gen1.

Nota

La identidad administrada solo se admite en flujos específicos de Azure Data Explorer y requiere la configuración de la directiva de identidad administrada. Para más información, consulte Introducción a identidades administradas.

Token de acceso compartido (SAS)

En el Azure Portal, genere un token de SAS con los permisos necesarios.

Por ejemplo, para leer desde el almacenamiento externo, especifique los permisos Leer y Enumerar y exportar al almacenamiento externo, especifique los permisos de escritura. Para más información, consulte Delegar el acceso mediante una firma de acceso compartido.

Use la dirección URL de SAS como cadena de conexión.

Ejemplo
"https://fabrikam.blob.core.windows.net/container/path/to/file.csv?sv=...&sp=rwd"

token de acceso de Microsoft Entra

Para agregar un token de acceso de Microsoft Entra codificado en base 64, anexe ;token={AadToken} al cadena de conexión. El token debe ser para el recurso https://storage.azure.com/.

Para obtener más información sobre cómo generar un token de acceso de Microsoft Entra, consulte Obtención de un token de acceso para la autorización.

Ejemplo
"https://fabrikam.blob.core.windows.net/container/path/to/file.csv;token=1234567890abcdef1234567890abcdef1234567890abc..."

Clave de acceso de cuenta de almacenamiento

Para agregar una clave de acceso de la cuenta de almacenamiento, anexe la clave al cadena de conexión. En Azure Blob Storage, anexe ;{key} al cadena de conexión. Para Azure Data Lake Storage Gen 2, anexe ;sharedkey={key} al cadena de conexión.

Cuenta de almacenamiento Ejemplo
Azure Blob Storage "https://fabrikam.blob.core.windows.net/container/path/to/file.csv;ljkAkl...=="
Azure Data Lake Storage Gen2 "abfss://fs@fabrikam.dfs.core.windows.net/path/to/file.csv;sharedkey=sv=...&sp=rwd"

Claves de acceso mediante programación de Amazon Web Services

Para agregar claves de acceso de Amazon Web Services, anexe ;AwsCredentials={ACCESS_KEY_ID},{SECRET_ACCESS_KEY} al cadena de conexión.

Ejemplo
"https://yourbucketname.s3.us-east-1.amazonaws.com/path/to/file.csv;AwsCredentials=AWS1234567890EXAMPLE,1234567890abc/1234567/12345678EXAMPLEKEY"

Url presignada de Amazon Web Services S3

Use la dirección URL presignada S3 como cadena de conexión.

Ejemplo
"https://yourbucketname.s3.us-east-1.amazonaws.com/file.csv?12345678PRESIGNEDTOKEN"