Información general de seguridad para Azure AI Search

En este artículo se describen las características de seguridad de Azure AI Search que protegen los datos y las operaciones.

Flujo de datos (patrones de tráfico de red)

Un servicio de Azure AI Search se hospeda en Azure y normalmente las aplicaciones cliente acceden a él mediante conexiones de red pública. Aunque ese patrón es predominante, no es el único patrón de tráfico que debe tener en cuenta. El conocimiento de todos los puntos de tráfico de entrada y salida es un contexto necesario para proteger los entornos de desarrollo y producción.

Azure AI Search tiene tres patrones de tráfico básicos:

  • Solicitudes entrantes realizadas por un cliente al servicio de búsqueda (el patrón predominante)
  • Solicitudes salientes emitidas por el servicio de búsqueda a otros servicios en Azure y en otros lugares
  • Solicitudes internas de servicio a servicio a través de la red troncal segura de Microsoft

Tráfico entrante

Las solicitudes entrantes que tienen como destino un punto de conexión de servicio de búsqueda incluyen:

  • Creación, lectura, actualización o eliminación de objetos en el servicio de búsqueda
  • Carga de un índice con documentos de búsqueda
  • Consultar un índice
  • Desencadenador de la ejecución de un indexador o un conjunto de aptitudes

Las API de REST describen la gama completa de solicitudes entrantes que administra un servicio de búsqueda.

Como mínimo, todas las solicitudes entrantes deben autenticarse mediante cualquiera de estas opciones:

  • Autenticación basada en claves (predeterminado). Las solicitudes entrantes proporcionan una clave de API válida.
  • Control de acceso basado en rol. La autorización se realiza a través de identidades de Microsoft Entra y asignaciones de roles en el servicio de búsqueda.

También se pueden agregar características de seguridad de red para restringir aún más el acceso al punto de conexión. Se pueden crear reglas de entrada en un firewall de IP, o bien crear puntos de conexión privados que protejan completamente el servicio de búsqueda de la red pública de Internet.

Tráfico interno

Microsoft protege y administra las solicitudes internas. No puede configurar ni controlar estas conexiones. Si está bloqueando el acceso a la red, no se requiere ninguna acción por parte del usuario porque el cliente no puede configurar el tráfico interno.

El tráfico interno consta de:

Tráfico saliente

Usted puede proteger y administrar las solicitudes salientes. Las solicitudes salientes se originan desde un servicio de búsqueda a otras aplicaciones. Normalmente, estas solicitudes se realizan mediante indizadores para la indexación basada en texto, el enriquecimiento con IA basado en aptitudes y vectorizaciones en el momento de la consulta. Las solicitudes salientes incluyen operaciones de lectura y escritura.

La lista siguiente es una enumeración completa de las solicitudes salientes para las que pueda configurar conexiones seguras. Un servicio de búsqueda realiza solicitudes en su nombre y en nombre de un indexador o una aptitud personalizada.

Operación Escenario
Indexadores Conéctese a orígenes de datos externos para recuperar datos. Consulte Acceso del indizador a contenido protegido por la seguridad de red de Azure para obtener más información.
Indexadores Conéctese a Azure Storage para conservar almacenes de conocimiento, enriquecimientos almacenados en caché y sesiones de depuración.
Aptitudes personalizadas Conéctese a funciones de Azure, aplicaciones web de Azure u otras aplicaciones que ejecutan código externo hospedado fuera del servicio. La solicitud de procesamiento externo se envía durante la ejecución del conjunto de aptitudes.
Indizadores y vectorización integrada Conéctese a Azure OpenAI y a un modelo de inserción implementado, o bien pase por una aptitud personalizada para conectarse a un modelo de inserción que proporcione. El servicio de búsqueda envía texto a modelos de inserción para la vectorización durante la indexación.
Vectorizadores Conéctese a Azure OpenAI u otros modelos de inserción en el momento de la consulta para convertir cadenas de texto de usuario en vectores para la búsqueda de vectores.
Servicio de búsqueda Conéctese a Azure Key Vault para obtener claves de cifrado administradas por el cliente, que se usan para cifrar y descifrar datos confidenciales.

Las conexiones de salida se pueden realizar mediante una cadena de conexión de acceso completo del recurso que incluya una clave o un inicio de sesión de base de datos, o una identidad administrada) si usa Microsoft Entra ID y el acceso basado en roles.

Para llegar a los recursos de Azure detrás de un firewall, cree reglas de entrada en otros recursos de Azure que admitan solicitudes de servicio de búsqueda.

Para llegar a los recursos de Azure que protege Azure Private Link, puede crear un vínculo privado compartido que use un indexador para realizar su conexión.

Excepción para los servicios de búsqueda y almacenamiento de la misma región

Si Azure Storage y Búsqueda de Azure AI están en la misma región, el tráfico de red se enruta a través de una dirección IP privada y se produce a través de la red troncal de Microsoft. Al utilizarse direcciones IP privadas, no puede configurar firewalls de IP ni un punto de conexión privado para la seguridad de red.

Configure las conexiones de la misma región mediante cualquiera de los enfoques siguientes:

Seguridad de red

La seguridad de red protege los recursos frente a ataques o accesos no autorizados mediante la aplicación de controles al tráfico de red. Búsqueda de Azure AI admite características de red que pueden constituir la primera línea de defensa contra el acceso no autorizado.

Conexión entrante a través de firewalls de IP

Un servicio de búsqueda se aprovisiona con un punto de conexión público que permite el acceso mediante una dirección IP pública. Para restringir qué tráfico llega a través del punto de conexión público, cree una regla de firewall de entrada que admita las solicitudes de una dirección IP específica o un intervalo de direcciones IP. Todas las conexiones de cliente deben realizarse a través de una dirección IP permitida, o la conexión se denegará.

Ejemplo de diagrama de arquitectura para el acceso restringido de IP

Puede usar el portal para configurar el acceso al firewall.

Como alternativa, puede usar las API REST de administración. Desde la versión de API 2020-03-13, con el parámetro IpRule, puede restringir el acceso a su servicio mediante la identificación (de forma individual o en un intervalo) de las direcciones IP a las que quiera otorgar acceso a su servicio de búsqueda.

Conexión entrante a un punto de conexión privado (aislamiento de red, sin tráfico de Internet)

Para una seguridad más estricta, puede establecer un punto de conexión privado para Azure AI Search, lo que permite a un cliente de una red virtual obtener acceso de forma segura a los datos de un índice de búsqueda mediante una instancia de Private Link.

El punto de conexión privado usa una dirección IP del espacio de direcciones de la red virtual para las conexiones al servicio de búsqueda. El tráfico de red entre el cliente y el servicio de búsqueda atraviesa la red virtual y un vínculo privado de la red troncal de Microsoft, lo que elimina la exposición a la red pública de Internet. Las redes virtuales permiten establecer una comunicación segura entre recursos, con su red local y con Internet.

Diagrama de la arquitectura de ejemplo para el acceso de punto de conexión privado

Aunque esta solución es la más segura, el uso de más servicios supone un costo adicional, por lo que debe conocer claramente las ventajas antes de continuar con ella. Para obtener más información sobre los costos, vea la página de precios. Para obtener más información sobre cómo funcionan conjuntamente estos componentes, vea este vídeo. La opción de punto de conexión privado se trata a partir del minuto 5:48 del vídeo. Para obtener instrucciones sobre cómo configurar el punto de conexión, consulte Creación de un punto de conexión privado para una conexión segura a Azure AI Search.

Autenticación

Una vez admitida una solicitud al servicio de búsqueda, todavía debe someterse a un proceso de autenticación y autorización que determine si se permite la solicitud. Azure AI Search admite dos enfoques:

  • La autenticación de Microsoft Entra establece el autor de la llamada (y no la solicitud) como identidad autenticada. Una asignación de roles de Azure determina la operación permitida.

  • La autenticación basada en claves realiza en la solicitud (no en el usuario o aplicación que realiza la llamada) mediante una clave de API, donde la clave es una cadena formada por números y letras generados aleatoriamente que demuestra que la solicitud proviene de un origen de confianza. Las claves son necesarias en cada solicitud. El envío de una clave válida se considera una prueba de que la solicitud se origina desde una entidad de confianza.

Puede usar ambos métodos de autenticación o deshabilitar el enfoque que no quiera usar en el servicio de búsqueda.

Authorization

Azure AI Search proporciona diferentes modelos de autorización para la administración de servicios y de contenido.

Autorización de la administración de servicios

La administración de servicios se autoriza mediante el control de acceso basado en roles de su inquilino de Microsoft Entra.

En Azure AI Search, Resource Manager se usa para crear o eliminar el servicio, administrar las claves de API, escalar el servicio y configurar la seguridad. Como tal, las asignaciones de roles de Azure determinan quién puede realizar esas tareas, independientemente de si se usa el portal, PowerShell o las API REST de administración.

Se aplican tres roles básicos (Propietario, Colaborador, Lector) a la administración del servicio de búsqueda. Las asignaciones de roles se pueden realizar con cualquier metodología compatible (portal, PowerShell, etc.) y se respetan en todo el servicio.

Nota:

Mediante el uso de mecanismos de aplicación en todo el sistema de Azure, puede bloquear una suscripción o un recurso para evitar la eliminación accidental o no autorizada del servicio de búsqueda por parte de usuarios con derechos de administrador. Para más información, consulte Bloqueo de recursos para impedir eliminación inesperada.

Autorización del acceso a contenido

La administración de contenido hace referencia a los objetos creados y hospedados en un servicio de búsqueda.

  • Para la autorización basada en roles, use asignaciones de roles de Azure para establecer el acceso de lectura y escritura a operaciones.

  • Para la autorización basada en claves, una clave de API y un punto de conexión completo determinan el acceso. Un punto de conexión puede ser el propio servicio, la colección de índices, un índice específico, una colección de documentos o un documento específico. Cuando se encadenan, el punto de conexión, la operación (por ejemplo, una solicitud de creación o actualización) y el tipo de clave (administrador o consulta) se autoriza el acceso al contenido y las operaciones.

Restricción del acceso a índices

Si usa roles de Azure, puede establecer permisos en índices individuales siempre que se haga mediante programación.

Si usa claves, cualquier persona con una clave de administración del servicio puede leer, modificar o eliminar cualquier índice en el mismo servicio. Para la protección contra la eliminación accidental o malintencionada de índices, su control de código fuente interno para los recursos de código es la solución a fin de revertir una eliminación o modificación de índices no deseada. Azure AI Search incluye conmutación por error en el clúster para garantizar la disponibilidad, pero no almacena ni ejecuta el código propietario utilizado para crear o cargar los índices.

Para soluciones multiinquilino que requieren límites de seguridad en el nivel de índice, es habitual controlar el aislamiento de índices en el nivel intermedio del código de la aplicación. Para más información sobre casos de uso para varios inquilinos, consulte Modelos de diseño de aplicaciones SaaS para varios inquilinos y Azure AI Search.

Restricción del acceso a documentos

Los permisos de usuario en el nivel de documento, también conocidos como seguridad en el nivel de fila, no se admiten de forma nativa en la Búsqueda de Azure AI. Si importa datos desde un sistema externo que proporciona seguridad en el nivel de fila, como Azure Cosmos DB, esos permisos no se transferirán con los datos cuando Azure AI Search los indexe.

Si necesita acceso con permisos al contenido en los resultados de búsqueda, hay una técnica para aplicar filtros que incluyan o excluyan documentos en función de la identidad del usuario. Esta solución agrega un campo de cadena en el origen de datos que representa una identidad de grupo o usuario, que puede filtrar en el índice. La tabla siguiente describe dos enfoques para recortar el contenido no autorizado de los resultados de la búsqueda.

Enfoque Descripción
Recorte de seguridad basado en filtros de identidad Documenta el flujo de trabajo básico para implementar el control de acceso de identidades de usuario. Trata la incorporación de identificadores de seguridad a un índice y, a continuación, se explica el filtrado por ese campo para no incluir el contenido prohibido en los resultados.
Recorte de seguridad basado en identidades de Microsoft Entra En este artículo se amplía el artículo anterior y se proporcionan los pasos necesarios para recuperar identidades de Microsoft Entra ID, uno de los servicios gratuitos de la plataforma de nube de Azure.

Residencia de datos

Al configurar un servicio de búsqueda, se elige una ubicación o región que determina dónde se almacenan y procesan los datos del cliente. Azure AI Search no almacenará datos de clientes fuera de la región especificada a menos que configure una característica que tenga una dependencia en otro recurso de Azure y ese recurso se aprovisione en otra región.

Actualmente, el único recurso externo en el que escribe un servicio de búsqueda es Azure Storage. La cuenta de almacenamiento es la que usted proporcione y puede estar en cualquier región. Un servicio de búsqueda escribirá en Azure Storage si se usa cualquiera de las siguientes características: caché de enriquecimiento, sesión de depuración, almacén de conocimiento.

Excepciones a los compromisos de residencia de datos

Los nombres de objeto se almacenarán y procesarán fuera de la región o ubicación seleccionada. Los clientes no deben incluir datos confidenciales en los campos de nombre ni crear aplicaciones diseñadas para almacenar datos confidenciales en dichos campos. Estos datos aparecerán en los registros de telemetría que usa Microsoft con el fin de proporcionar soporte técnico para el servicio. Los nombres de objeto incluyen nombres de índices, indexadores, orígenes de datos, conjuntos de aptitudes, recursos, contenedores y almacén de Key Vault.

Los registros de telemetría se conservan durante un año y medio. Durante ese período, Microsoft podría acceder y hacer referencia a los nombres de objeto en las siguientes circunstancias:

  • Diagnosticar un problema, mejorar una característica o corregir un error. En este escenario, el acceso a datos solo es interno, sin acceso de terceros.

  • Durante el soporte técnico, esta información se puede usar para proporcionar una resolución rápida de los problemas y escalarlos al equipo de productos si es necesario

Protección de los datos

En la capa de almacenamiento, el cifrado de datos está integrado en todo el contenido administrado por el servicio guardado en el disco, incluidos los índices, los mapas de sinónimos y las definiciones de indizadores, orígenes de datos y conjuntos de aptitudes. El cifrado administrado por el servicio se aplica tanto al almacenamiento de datos a largo plazo como al almacenamiento de datos temporal.

Opcionalmente, puede agregar claves administradas por el cliente (CMK) para lograr un cifrado complementario del contenido indexado y realizar un doble cifrado de los datos en reposo. En los servicios creados después del 1 de agosto de 2020, el cifrado con CMK se amplía a los datos a corto plazo almacenados en discos temporales.

Datos en tránsito

En Azure AI Search, el cifrado empieza por las conexiones y las transmisiones. En el caso de los servicios de búsqueda en la red pública de Internet, Azure AI Search escucha en el puerto HTTPS 443. Todas las conexiones de cliente a servicio usan el cifrado TLS 1.2. No se admiten las versiones anteriores (1.0 o 1.1).

Datos en reposo

En el caso de los datos que administra internamente el servicio de búsqueda, en la tabla siguiente se describen los modelos de cifrado de datos. Algunas características, como el almacén de conocimiento, el enriquecimiento incremental y la indización basada en indizador, leen o escriben en estructuras de datos de otros servicios de Azure. Los servicios que tienen una dependencia en Azure Storage pueden usar las características de cifrado de esa tecnología.

Modelo Claves Requisitos Restricciones Se aplica a
Cifrado del servidor Claves administradas por Microsoft Ninguno (integrados) Ninguna. Disponible en todos los niveles, en todas las regiones, para el contenido creado después del 24 de enero de 2018. Contenido (índices y mapas de sinónimos) y definiciones (indexadores, orígenes de datos, conjuntos de aptitudes) almacenados en discos de datos y discos temporales.
Cifrado del servidor Claves administradas por el cliente Azure Key Vault Disponible en niveles facturables, en regiones específicas, para el contenido creado después del 1 de agosto de 2020. Contenido (índices y mapas de sinónimos) en discos de datos
Cifrado completo del lado servidor Claves administradas por el cliente Azure Key Vault Disponible en niveles facturables, en todas las regiones, en servicios de búsqueda después del 13 de mayo de 2021. Contenido (índices y mapas de sinónimos) en discos de datos y discos temporales

Claves administradas por el servicio

El cifrado administrado por el servicio es una operación interna de Microsoft que usa cifrado AES de 256 bits. Se produce automáticamente en todas las indexaciones, incluidas las actualizaciones incrementales a índices que no están totalmente cifrados (creados antes de enero de 2018).

El cifrado administrado por el servicio se aplica a todo el contenido en almacenamientos tanto a corto como a largo plazo.

Claves administradas por el cliente (CMK)

Las claves administradas por el cliente requieren otro servicio facturable (Azure Key Vault), que puede estar en otra región, pero en la misma suscripción que Azure AI Search.

La compatibilidad con CMK se implementó en dos fases. Si el servicio de búsqueda se creó durante la primera fase, el cifrado con CMK estaba restringido al almacenamiento a largo plazo y a regiones específicas. Los servicios creados en la segunda fase, después de mayo de 2021, pueden usar el cifrado con CMK en cualquier región. Como parte de la segunda fase de implementación, el contenido se cifra con CMK en el almacenamiento tanto a corto como a largo plazo. Para obtener más información sobre la compatibilidad con las CMK, vea Cifrado doble completo.

Al habilitar el cifrado de CMK aumenta el tamaño de los índices y empeora el rendimiento de las consultas. Según las observaciones hechas hasta la fecha, puede esperar un aumento de entre un 30 y un 60 por ciento en los tiempos de consultas, aunque el rendimiento real variará según la definición de los índices y los tipos de consultas. Debido a este impacto adverso en el rendimiento, se recomienda habilitar esta característica solo en los índices que realmente la necesiten. Para más información, consulte Configuración de claves administradas por el cliente para el cifrado de datos en Azure AI Search.

Administración y seguridad

Administrar claves de API

La dependencia de la autenticación basada en claves de API significa que debe tener un plan para volver a generar la clave de administración a intervalos regulares, según los procedimientos recomendados de seguridad de Azure. Hay un máximo de dos claves de administrador por servicio de búsqueda. Para más información acerca de protección y administración de claves de API, vea Creación y administración de claves de API.

Registros de actividad y de recursos

Azure AI Search no registra las identidades de usuario, por lo que no puede hacer referencia a los registros para obtener información sobre un usuario específico. Sin embargo, el servicio registra las operaciones de creación, lectura, actualización y eliminación, que es posible que pueda correlacionar con otros registros para comprender la intervención de acciones específicas.

Por medio de alertas y de la infraestructura de registro de Azure, puede seleccionar picos de volumen de consultas u otras acciones que se desvían de las cargas de trabajo previstas. Para obtener más información sobre la configuración de registros, vea Recopilación y análisis de datos de registro y Supervisión de solicitudes de consulta.

Certificaciones y cumplimiento

Azure AI Search participa en auditorías regulares, y tiene la certificación de muchos estándares globales, regionales y específicos del sector para la nube pública y Azure Government. Para obtener la lista completa, descargue las notas del producto de las ofertas de cumplimiento de Microsoft Azure.

En el caso del cumplimiento, puede usar Azure Policy para implementar los procedimientos recomendados de alta seguridad de Microsoft Cloud Security Benchmark. Microsoft Cloud Security Benchmark es una colección de recomendaciones de seguridad codificadas en controles de seguridad que se asignan a acciones clave que se deben realizar para mitigar las amenazas a los servicios y los datos. Actualmente hay 12 controles de seguridad, entre los que se incluyen Seguridad de red, Registro y supervisión y Protección de datos.

Azure Policy es una funcionalidad integrada en Azure que ayuda a administrar el cumplimiento de varios estándares, incluidos los de Azure Security Benchmark. En el caso de los puntos de referencia conocidos, Azure Policy proporciona definiciones integradas que ofrecen tanto criterios como una respuesta procesable que aborda el no cumplimiento.

En Azure AI Search, actualmente hay una definición integrada. Es para el registro de recursos. Puede asignar una directiva que identifique los servicios de búsqueda que no tengan registro de recursos y lo activen. Para más información, consulte Controles de Cumplimiento normativo de Azure Policy para Azure AI Search.

Vea este vídeo

Vea este vídeo de resumen para obtener información general sobre la arquitectura de seguridad y cada categoría de características.

Consulte también