Busque contenido Drupal de forma inteligente utilizando Amazon Kendra

amazona kendra es un servicio de búsqueda inteligente impulsado por aprendizaje automático (ML). Amazon Kendra le ayuda a agregar fácilmente contenido de una variedad de repositorios de contenido en un índice centralizado que le permite buscar rápidamente todos los datos de su empresa y encontrar la respuesta más precisa. drupal es un software de gestión de contenidos. Se utiliza para crear muchos de los sitios web y aplicaciones que utilizamos todos los días. Drupal tiene un gran conjunto de funciones, como creación de contenido sencilla, rendimiento confiable y seguridad. Muchas organizaciones utilizan Drupal para almacenar su contenido. Uno de los requisitos clave para muchos clientes que utilizan Drupal es la capacidad de encontrar información precisa de forma fácil y segura en todos los documentos de la fuente de datos.

Con el conector Amazon Kendra Drupal, puede indexar contenido de Drupal, filtrar los tipos de contenido personalizado que desea indexar y buscar fácilmente en el contenido de Drupal mediante la búsqueda inteligente de Amazon Kendra.

Esta publicación le muestra cómo utilizar el conector Drupal de Amazon Kendra para configurar el conector como fuente de datos para su índice de Amazon Kendra y buscar en sus documentos Drupal. Según la configuración del conector Drupal, puede sincronizar el conector para rastrear e indexar diferentes tipos de contenido Drupal, como blogs y wikis. El conector también ingiere la información de la lista de control de acceso (ACL) para cada archivo. La información de ACL se utiliza para filtrado de contexto de usuariodonde los resultados de búsqueda de una consulta se filtran según aquello a lo que un usuario tiene acceso autorizado.

Requisitos previos

Para probar el conector Amazon Kendra para Drupal usando esta publicación como referencia, necesita lo siguiente:

Configure la fuente de datos utilizando el conector de Amazon Kendra para Drupal

Para agregar una fuente de datos a su índice de Amazon Kendra mediante el conector Drupal, puede utilizar un índice existente o crear un nuevo índice. Luego complete los siguientes pasos. Para obtener más información sobre este tema, consulte la Guía para desarrolladores de Amazon Kendra.

  1. En la consola de Amazon Kendra, abra su índice y elija Fuentes de datos en el panel de navegación.
  2. Elegir Agregar fuente de datos.
  3. Bajo drupalelegir Agregar conector.
  4. En el Especificar detalles de la fuente de datos sección, ingrese un nombre y una descripción y elija Próximo.
  5. Sobre el Definir acceso y seguridad sección, para URL del servidor Drupalingrese la URL del sitio Drupal.
  6. Para configurar los certificados SSL, puede crear un certificado autofirmado para esta configuración utilizando el openssl x509 -in mydrupalsite.pem -out drupal.crt comando y almacenar el certificado en un Servicio de almacenamiento simple de Amazon (Amazon S3) cubo. Para obtener más detalles sobre cómo generar una clave privada y el certificado, consulte Generando Certificados.
  7. Elegir Explorar S3 y elija el depósito S3 con el certificado SSL.
  8. Bajo Autenticacióntienes dos opciones:
    • Utilice Secrets Manager para crear nuevas credenciales de autenticación de Drupal. Necesita un nombre de usuario y una contraseña de administrador de Drupal (además, un ID de cliente y un secreto de cliente para la autenticación OAuth 2.0).
    • Utilice un secreto existente de Secrets Manager que tenga las credenciales de autenticación de Drupal a las que desea que acceda el conector (además, un ID de cliente y un secreto de cliente para la autenticación OAuth 2.0).
  9. Elegir Guardar y agregar secreto.
  10. Para Rol de IAMelegir Crear un nuevo rol o elija una función de IAM existente configurada con políticas de IAM adecuadas para acceder al secreto de Secrets Manager, al índice de Amazon Kendra y a la fuente de datos.

Referirse a Roles de IAM para fuentes de datos para obtener los permisos necesarios para la función de IAM.

  1. Elegir Próximo.
  2. En el Configurar ajustes de sincronización sección, seleccione Artículos, Paginas basicas, Bloques básicos, Tipos de contenido personalizadosy Bloques personalizados junto con opciones para rastrear comentarios y archivos adjuntos según sea necesario.
  3. Opcionalmente, ingrese los patrones de inclusión/exclusión para los títulos de las entidades.
  4. Proporcione información sobre su alcance de sincronización (solo completa o delta) y especifique la programación de ejecución.
  5. Elegir Próximo.

  6. En el Establecer asignaciones de campos sección, agregue los campos personalizados de Drupal que desea sincronizar y sus respectivas asignaciones de campos de Amazon Kendra. Los campos obligatorios están preasignados por Amazon Kendra.
  7. Elegir Próximo.
  8. Revise los ajustes de configuración y guarde la fuente de datos.
  9. Elegir Sincronizar ahora en la fuente de datos creada para iniciar la sincronización de datos con el índice Amazon Kendra.

El tiempo necesario para rastrear y sincronizar los contenidos en Amazon Kendra varía según el volumen de contenido y el rendimiento.

Ahora puede buscar el contenido indexado de Drupal utilizando la consola de búsqueda o una aplicación de búsqueda. Opcionalmente, puede buscar con ACL con los siguientes pasos adicionales.

  1. Vaya a la página de índice que creó y en la Control de acceso de usuariospestaña l, elija Editar ajustes.
  2. Bajo Configuración de control de accesoseleccionar mantenga los valores predeterminados para Nombre de usuario y Gruposelegir JSON para Tipo de fichay mantener la expansión del grupo de usuarios como Ninguno.
  3. En la página siguiente, conserve los valores predeterminados (o cámbielos según sus requisitos de capacidad) y elija Actualizar.

Realice búsquedas inteligentes con Amazon Kendra

Antes de intentar buscar en la consola de Amazon Kendra o utilizar la API, asegúrese de que la sincronización de la fuente de datos esté completa. Para comprobarlo, vea las fuentes de datos y verifique si la última sincronización fue exitosa.

  1. Para iniciar su búsqueda, en la consola de Amazon Kendra, elija Buscar contenido indexado en el panel de navegación.

Serás redirigido a la consola de búsqueda de Amazon Kendra. Ahora puede buscar información en los documentos Drupal que indexó con Amazon Kendra.

  1. Para esta publicación, buscamos un documento almacenado en la fuente de datos de Drupal.
  2. Expandir Consulta de prueba con un token de acceso y elige Aplicar token.
  3. Para Nombre de usuarioingrese la dirección de correo electrónico asociada con su cuenta Drupal.
  4. Elegir Aplicar.

Ahora el usuario solo puede ver el contenido al que tiene acceso según el nombre de usuario o los grupos especificados. En nuestro ejemplo, el usuario de Drupal con la test@amazon.com El correo electrónico no tiene acceso a ningún documento en Drupal, por lo que no se muestra ninguno.

Limitaciones

Tenga en cuenta las siguientes limitaciones al utilizar esta solución:

  • Los tipos de contenido (como artículo o página básica) que no están asociados con ninguna vista no se pueden rastrear.
  • Si un administrador no tiene acceso a un bloque, entonces no podrá rastrear los datos del bloque.
  • El cuerpo del documento para el artículo, la página básica, el bloque básico, el tipo de contenido definido por el usuario y el tipo de bloque definido por el usuario se muestra en formato HTML. Si el contenido HTML no está bien formado, las etiquetas relacionadas con HTML aparecerán en el cuerpo del documento y, por lo tanto, podrán verse en los resultados de búsqueda de Amazon Kendra. Lo mismo ocurre con los comentarios de artículo, página básica, bloque básico, tipo de contenido definido por el usuario, tipo de bloque definido por el usuario.
  • El tipo de contenido o tipo de bloque sin descripción o cuerpo no se inyectará en el índice de Amazon Kendra porque hay una validación en el lado del SDK de Amazon Kendra. Sin embargo, Drupal te permite crear el tipo de contenido sin descripción ni cuerpo. Solo los comentarios y archivos adjuntos de los respectivos tipos de contenido o tipos de bloques (si existen) se inyectarán en el índice de Amazon Kendra.

Limpiar

Para evitar incurrir en costos futuros, limpie los recursos que creó como parte de esta solución. Si creó un nuevo índice de Amazon Kendra mientras probaba esta solución, elimínelo. Si solo agregó una nueva fuente de datos mediante el conector de Amazon Kendra para Drupal, elimine esa fuente de datos. Elimine los usuarios de IAM creados.

Conclusión

Con el conector Amazon Kendra Drupal, su organización puede buscar contenidos almacenados en un sitio Drupal de forma segura mediante la búsqueda inteligente impulsada por Amazon Kendra. En esta publicación, le presentamos la integración, pero hay muchas características adicionales que no cubrimos, como las siguientes:

  • Puede asignar campos adicionales a los atributos del índice de Amazon Kendra y habilitarlos para facetar, buscar y mostrar en los resultados de búsqueda.
  • Puede integrar la fuente de datos de Drupal con la capacidad de enriquecimiento de documentos personalizados (CDE) en Amazon Kendra para realizar una lógica de mapeo de atributos adicional e incluso una transformación de contenido personalizada durante la ingesta.

Para obtener más información sobre las posibilidades con Drupal, consulte la Guía para desarrolladores de Amazon Kendra.

Para obtener más información sobre otros conectores integrados de Amazon Kendra para fuentes de datos populares, consulte la Conectores Amazon Kendra página.


Sobre los autores

Channa Basavaraja es arquitecto de soluciones senior en AWS con más de dos décadas de experiencia en la creación de soluciones comerciales distribuidas. Sus áreas de profundidad abarcan aprendizaje automático, desarrollo de aplicaciones/móviles, arquitectura basada en eventos e IoT/computación de vanguardia.

Yuanhua Wang es ingeniero de software en AWS con más de 15 años de experiencia en la industria tecnológica. Sus intereses son la arquitectura de software y la creación de herramientas en computación en la nube.