Administración de la seguridad de una solución de Búsqueda de Azure AI
Las organizaciones deben poder confiar en la seguridad de sus soluciones de búsqueda. Búsqueda de Azure AI proporciona control sobre cómo proteger los datos que se buscan.
Aquí explorará cómo proteger la solución de búsqueda. Se centrará en dónde se cifran los datos y cómo proteger los flujos de datos entrantes y salientes. Por último, verá cómo restringir el acceso a los resultados de búsqueda para usuarios o grupos específicos.
Introducción a los enfoques de seguridad
Búsqueda de Azure AI se basa en las características de seguridad de red existentes de Azure. Al pensar en proteger la solución de búsqueda, puede centrarse en tres áreas:
- Solicitudes de búsqueda entrantes realizadas por los usuarios en la solución de búsqueda
- Solicitudes salientes de la solución de búsqueda a otros servidores para indexar documentos
- Restricción del acceso en el nivel de documento por cada solicitud de búsqueda de usuario
Cifrado de datos
El servicio Búsqueda de Azure AI, como todos los servicios de Azure, cifra los datos que almacena en reposo con claves administradas por el servicio. Este cifrado incluye índices, orígenes de datos, mapas de sinónimos, conjuntos de aptitudes e incluso las definiciones del indexador.
Los datos en tránsito se cifran mediante el cifrado HTTPS TLS 1.3 estándar a través del puerto 443.
Si quiere usar sus propias claves de cifrado, ACS admite el uso de Azure Key Vault. Una ventaja de usar las claves propias administradas por el cliente es que el cifrado doble se habilita en todos los objetos en los que use las claves personalizadas.
Sugerencia
Para obtener pasos detallados sobre cómo usar claves administradas por el cliente para el cifrado, consulte Configuración de claves administradas por el cliente para el cifrado de datos en Búsqueda de Azure AI.
Protección del tráfico entrante
Si se puede acceder a la solución de búsqueda externamente desde Internet o aplicaciones, puede reducir la superficie expuesta a ataques. Búsqueda de Azure AI le permite restringir el acceso al punto de conexión público de forma gratuita mediante un firewall para permitir el acceso desde direcciones IP específicas.
Si el servicio de búsqueda solo lo van a usar los recursos locales, puede proteger la seguridad con un circuito ExpressRoute, una puerta de enlace de Azure y un servicio de aplicaciones. Asimismo, tiene la opción de cambiar el punto de conexión público para usar un vínculo privado de Azure. También deberá configurar una red virtual de Azure y otros recursos. El uso de un punto de conexión privado es la solución más segura, aunque incluye el costo adicional de usar esos servicios que deben hospedarse en la plataforma Azure.
Sugerencia
Para más información sobre los puntos de conexión privados, consulte Creación de un punto de conexión privado para una conexión segura a Búsqueda de Azure AI.
Autenticación de solicitudes en la solución de búsqueda
Con la infraestructura implementada para reducir la superficie expuesta a ataques de la solución de búsqueda, su atención puede centrarse en cómo autenticar las solicitudes de búsqueda de los usuarios y las aplicaciones.
La opción predeterminada al crear el ACS es la autenticación basada en claves. Hay dos tipos de claves distintos:
- Claves de administrador: conceden los permisos de escritura y el derecho a consultar la información del sistema (se pueden crear un máximo de 2 claves de administrador por servicio de búsqueda)
- Claves de consulta: conceden permisos de lectura y las usan los usuarios o las aplicaciones para consultar índices (se pueden crear un máximo de 50 claves de consulta por servicio de búsqueda)
Importante
El control de acceso basado en roles para las operaciones en el plano de datos está actualmente en versión preliminar y bajo condiciones de uso suplementarios. Los roles solo están disponibles en la nube pública de Azure y usarlos puede aumentar la latencia de las solicitudes de búsqueda.
La plataforma Azure proporciona el control de acceso basado en rol (RBAC) como sistema global para controlar el acceso a los recursos. Puede usar RBAC de Búsqueda de Azure AI de las siguientes maneras:
- Conceder acceso a los roles para administrar el servicio
- Definir roles con acceso para crear, cargar y consultar índices
Los roles integrados que puede asignar para administrar el servicio de Búsqueda de Azure AI son:
- Propietario: acceso total a todos los recursos de búsqueda
- Colaborador: igual que el anterior, pero sin la capacidad de asignar roles o cambiar las autorizaciones
- Lector: visualización de información parcial del servicio
Si necesita un rol que también pueda administrar el plano de datos, por ejemplo, los índices de búsqueda o los orígenes de datos, use uno de estos roles:
- Colaborador del servicio de búsqueda: rol para los administradores del servicio de búsqueda (el mismo acceso que el rol Colaborador anterior) y el contenido (índices, indexadores, orígenes de datos y conjuntos de aptitudes)
- Colaborador de datos de índice de búsqueda: rol para desarrolladores o propietarios de índices que importan, actualizan o consultan la colección de documentos de un índice
- Lector de datos de índice de búsqueda: rol de acceso de solo lectura para aplicaciones y usuarios que solo necesitan ejecutar consultas
Sugerencia
Para más información sobre la autenticación con RBAC, consulte Uso de controles de acceso basado en roles de Azure (RBAC de Azure) en Búsqueda de Azure AI.
Protección del tráfico saliente
Normalmente, el tráfico saliente indexa los datos de origen o los enriquece mediante inteligencia artificial (IA). Las conexiones salientes admiten el uso de autenticación basada en claves, inicios de sesión de base de datos o inicios de sesión de Microsoft Entra siempre que pueda usar Microsoft Entra ID.
Si los orígenes de datos se hospedan en la plataforma Azure, también puede proteger las conexiones mediante un sistema o una identidad administrada asignada por el usuario.
Los servicios de Azure pueden restringir el acceso a ellos mediante un firewall. El firewall sólo se puede configurar para permitir la dirección IP del servicio Búsqueda de Azure AI. Si va a enriquecer los índices con IA, también deberá permitir todas las direcciones IP de la etiqueta de servicio AzureCognitiveSearch.
Puede optar por proteger los datos de origen detrás de un vínculo privado compartido que usen los indexadores.
Importante
Un enlace privado compartido requiere un nivel básico para la indexación basada en texto o un nivel estándar 2 (S2) para la indexación basada en aptitudes. Para más información sobre los precios, consulte Precios de Azure Private Link.
Protección de datos en el nivel de documento
Puede configurar Búsqueda de Azure AI para restringir los documentos que alguien puede buscar, por ejemplo, restringir la búsqueda de archivos PDF contractuales a personas de su departamento legal.
Controlar quién tiene acceso en el nivel de documento requiere que actualice cada documento en el índice de búsqueda. Debe agregar un nuevo campo de seguridad a cada documento que contenga los identificadores de usuario o grupo que puedan acceder a él. Debe ser posible filtrar el campo de seguridad para que poder filtrar los resultados de búsqueda en el campo.
Con este campo implementado y rellenado con el usuario o grupos permitidos, puede restringir los resultados agregando el filtro search.in
a todas las consultas de búsqueda. Si usa solicitudes HTTP POST, el cuerpo debe tener este aspecto:
{
"filter":"security_field/any(g:search.in(g, 'user_id1, group_id1, group_id2'))"
}
Esto filtraría los resultados de búsqueda devueltos en función del Id. de usuario y los grupos a los que pertenece este usuario. Si la aplicación puede usar Microsoft Entra ID, es posible usar la identidad del usuario y las membresías de grupos desde allí.
Sugerencia
Para obtener una guía paso a paso sobre cómo usar Microsoft Entra ID, consulte Filtros de seguridad para recortar los resultados de Búsqueda de Azure AI mediante identidades de Active Directory