View a markdown version of this page

Tutorial: Configurar un dominio con la base de datos de usuarios interna y la autenticación básica de HTTP - OpenSearch Servicio Amazon

Las traducciones son generadas a través de traducción automática. En caso de conflicto entre la traducción y la version original de inglés, prevalecerá la version en inglés.

Tutorial: Configurar un dominio con la base de datos de usuarios interna y la autenticación básica de HTTP

En este tutorial se describe otro caso de uso muy detallado del control de acceso: un usuario maestro en la base de datos de usuarios interna y la autenticación básica mediante HTTP para los paneles de control. OpenSearch A continuación, el usuario maestro puede iniciar sesión en OpenSearch Dashboards, crear un usuario interno, asignar al usuario a un rol y usar un control de acceso detallado para limitar los permisos del usuario.

nota

Cuando se utiliza la autenticación básica HTTP con una política de acceso basada en recursos que especifica una entidad principal de IAM, las solicitudes no firmadas autenticadas mediante la autenticación básica HTTP son gestionadas únicamente por la minuciosa base de datos interna de usuarios del control de acceso. Las solicitudes firmadas (mediante Sigv4) se evalúan en función de la política de acceso al dominio y del control de acceso detallado. Si la política de acceso especifica un principio, por ejemplo"AWS": "arn:aws:iam::111122223333:root", la política de acceso solo permitirá SigV4-signed las solicitudes de esa cuenta, mientras que las solicitudes de autenticación HTTP básica eluden la política de acceso y se controlan completamente mediante funciones de control de acceso específicas.

En este tutorial, deberá completar los siguientes pasos:

Paso 1: crear un dominio

Ve a la consola OpenSearch de Amazon Service en https://console.aws.amazon.com/aos/home/y crea un dominio con los siguientes ajustes:

  • OpenSearch 1.0 o posterior, o Elasticsearch 7.9 o posterior

  • Acceso público

  • Fine-grained control de acceso con un usuario maestro en la base de datos de usuarios interna (TheMasterUserpara el resto de este tutorial)

  • Autenticación de Amazon Cognito para Dashboards deshabilitada

  • La siguiente política de acceso:

    JSON
    { "Version":"2012-10-17", "Statement": [ { "Effect": "Allow", "Principal": { "AWS": "arn:aws:iam::111122223333:root" }, "Action": [ "es:ESHttp*" ], "Resource": "arn:aws:es:us-east-1:111122223333:domain/{domain-name}/*" } ] }
  • Se requiere HTTPS para todo el tráfico al dominio

  • Node-to-node cifrado

  • Cifrado de datos en reposo

Paso 2: Crear un usuario interno en los OpenSearch paneles

Ahora que tiene un dominio, puede iniciar sesión en OpenSearch Dashboards y crear un usuario interno.

  1. Vuelva a la consola OpenSearch de servicio y navegue hasta la URL de los OpenSearch paneles del dominio que creó. La URL tiene este formato: domain-endpoint/_dashboards/.

  2. Inicie sesión con el TheMasterUser.

  3. Seleccione Agregar datos de muestra y agregue los datos de vuelos de muestra.

  4. En el panel de navegación izquierdo, seleccione Seguridad, Usuarios internos y Crear usuario interno.

  5. Llame al usuario new-user y especifique una contraseña. A continuación, seleccione Crear.

Paso 3: Asigne funciones en los paneles OpenSearch

Ahora que el usuario está configurado, puede asignarlo a un rol.

  1. Permanezca en la sección Seguridad de los OpenSearch paneles de control y elija Roles y Crear rol.

  2. Llame al rol new-role.

  3. Para Índice, especifique opensearch_dashboards_sample_data_fli* (kibana_sample_data_fli* en dominios Elasticsearch) para el patrón de índice.

  4. Para el grupo de acciones, seleccione leer.

  5. Para Seguridad a nivel del documento, especifique la siguiente consulta:

    { "match": { "FlightDelay": true } }
  6. Para la seguridad a nivel del campo, seleccione Excluir y especifique FlightNum.

  7. Para Anonimización, especifique Dest.

  8. Seleccione Crear.

  9. Seleccione Usuarios asignados, Administrar mapeo. A continuación, agregue new-user a Usuarios y elija Mapear.

Paso 4: probar los permisos

Cuando los roles están asignados de manera correcta, puede iniciar sesión como el usuario limitado y probar los permisos.

  1. En una nueva ventana privada del navegador, vaya a la URL de OpenSearch Dashboards del dominio, inicie sesión con las new-user credenciales y elija Explorar por mi cuenta.

  2. Vaya a Herramientas para desarrolladores y ejecute la búsqueda predeterminada:

    GET _search { "query": { "match_all": {} } }

    Observe el error de permisos. new-user no tiene permisos para ejecutar búsquedas en todo el clúster.

  3. Ejecute otra búsqueda:

    GET dashboards_sample_data_flights/_search { "query": { "match_all": {} } }

    Tenga en cuenta que todos los documentos coincidentes tienen un campo FlightDelay de true, un campo Dest anonimizado y ningún campo FlightNum.

  4. En la ventana original del navegador, inicie sesión como TheMasterUser, seleccione Herramientas para desarrolladores y realice las mismas búsquedas. Observe la diferencia en permisos, número de aciertos, documentos coincidentes y campos incluidos.