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.
Habilitar la federación de SAML con AWS Identity and Access Management
OpenSearch La interfaz de usuario es compatible con el lenguaje de marcado de aserciones de seguridad 2.0 (SAML), un estándar abierto que utilizan muchos proveedores de identidad. Esto permite la federación de identidades con AWS Identity and Access Management (IAM). Con este soporte, los usuarios de su cuenta u organización pueden acceder directamente a la OpenSearch interfaz de usuario asumiendo funciones de IAM. Puede crear una experiencia de inicio de sesión único iniciada por el proveedor de identidad (IdP) para sus usuarios finales, en la que puedan autenticarse en el proveedor de identidad externo y ser redirigidos directamente a la página definida en la interfaz de usuario. OpenSearch También puedes implementar un control de acceso detallado configurando tus usuarios finales o grupos para que asuman diferentes funciones de IAM con diferentes permisos para acceder a la interfaz de usuario y a las fuentes de datos asociadas. OpenSearch
En este tema se presentan step-by-step instrucciones para configurar el uso de SAML con la interfaz de usuario. OpenSearch En estos procedimientos, utilizamos como ejemplo los pasos para configurar la aplicación de administración de identidades y accesos de Okta. Los pasos de configuración para otros proveedores de identidad, como Azure Active Directory y Ping, son similares.
Temas
Paso 1: Configurar la aplicación de proveedor de identidades (Okta)
Para usar SAML con OpenSearch interfaz de usuario, el primer paso es configurar tu proveedor de identidad.
Tarea 1: Crear usuarios de Okta
-
Inicie sesión en su organización de Okta en https://login.okta.com/
como usuario con privilegios administrativos. -
En la consola de administración, en Directorio, en el panel de navegación, selecciona Personas.
-
Elija Add person (Agregar persona).
-
En Nombre, introduce el nombre del usuario.
-
En Apellido, introduzca el apellido del usuario.
-
En Nombre de usuario, introduzca el nombre de usuario del usuario en formato de correo electrónico.
-
Elija Estableceré la contraseña e introduzca una contraseña
-
(Opcional) Desactive la casilla El usuario debe cambiar la contraseña la primera vez que inicie sesión si no desea que el usuario cambie la contraseña la primera vez que inicie sesión.
-
Seleccione Save.
Tarea 2: Crear y asignar grupos
-
Inicie sesión en su organización de Okta en https://login.okta.com/
como usuario con privilegios administrativos. -
En la consola de administración, en el directorio del panel de navegación, selecciona Grupos.
-
Elija Añadir grupo.
-
Introduce un nombre de grupo y selecciona Guardar.
-
Elige el grupo recién creado y, a continuación, selecciona Asignar personas.
-
Selecciona el signo más (+) y, a continuación, selecciona Listo.
-
(Opcional) Repita los pasos 1 a 6 para añadir más grupos.
Tarea 3: Crear aplicaciones de Okta
-
Inicie sesión en su organización de Okta en https://login.okta.com/
como usuario con privilegios administrativos. -
En la consola de administración, en Aplicaciones, en el panel de navegación, selecciona Aplicaciones.
-
Elija Create App Integration (Crear integración de aplicaciones).
-
Elige SAML 2.0 como método de inicio de sesión y, a continuación, selecciona Siguiente.
-
Introduce un nombre para la integración de tu aplicación (por ejemplo,
OpenSearch_UI
) y, a continuación, selecciona Siguiente. -
Introduce los siguientes valores en la aplicación; no es necesario que cambies otros valores:
-
1. En el caso de la URL de inicio
https://signin.aws.amazon.com/saml
de sesión único, introduce AWS las regiones comerciales o la URL específica de tu región. -
2. Para el URI de audiencia (ID de entidad SP), introduzca
urn:amazon:webservices
. -
3. Para el formato de ID de nombre, introduzca
EmailAddress
.
-
-
Elija Siguiente.
-
Selecciona Soy cliente de Okta y añado una aplicación interna y, a continuación, selecciona Esta es una aplicación interna que hemos creado.
-
Seleccione Finalizar.
-
Selecciona Asignaciones y, a continuación, selecciona Asignar.
-
Elija Asignar a grupos y, a continuación, seleccione Asignar junto a los grupos que desee agregar.
-
Seleccione Listo.
Tarea 4: Configurar la configuración avanzada de Okta
Tras crear la aplicación SAML personalizada, complete los siguientes pasos:
-
Inicie sesión en su organización de Okta en https://login.okta.com/
como usuario con privilegios administrativos. En la consola de administración, en el área General, selecciona Editar en la configuración de SAML.
-
Elija Siguiente.
-
Defina el estado de retransmisión predeterminado en el punto final de la OpenSearch interfaz de usuario con el formato:
https://
.region
.console.aws.amazon.com/aos/home?region=region
#opensearch/applications/application-id
/redirectToDashboardURLA continuación, se muestra un ejemplo:
https://us-east-2.console.aws.amazon.com/aos/home?region=us-east-2#opensearch/applications/abc123def4567EXAMPLE/redirectToDashboardURL
-
En Declaraciones de atributos (opcional), añade las siguientes propiedades:
-
Proporcione el rol de IAM y el proveedor de identidad en un formato separado por comas mediante el atributo Role. Utilizará este mismo rol de IAM y proveedor de identidad en un paso posterior al configurar la configuración. AWS
-
Defina user.login para. RoleSessionName Se utiliza como identificador de las credenciales temporales que se emiten cuando se asume el rol.
Como referencia:
Nombre Formato de nombre Formato Ejemplo https://aws.amazon.com/SAML/Attributes/Role
Sin especificar
arn:aws:iam::
aws-account-id
:role/role-name,arn:aws:iam::aws-account-id
:saml-provider/provider-name
arn:aws:iam::111222333444:role/oktarole,arn:aws:iam::111222333444:saml-provider/oktaidp
https://aws.amazon.com/SAML/Attributes/RoleSessionName
Sin especificar
user.login
user.login
-
-
Tras añadir las propiedades del atributo, seleccione Siguiente y, a continuación, pulse Finalizar.
Los atributos deben tener un formato similar al que se muestra en la imagen siguiente. El valor de estado de retransmisión predeterminado es la URL que define la página de destino para los usuarios finales de su cuenta u organización una vez que hayan completado la validación del inicio de sesión único desde Okta. Puedes configurarlo en cualquier página de la OpenSearch interfaz de usuario y, a continuación, proporcionar esa URL a los usuarios finales previstos.

Paso 2: Configura la AWS configuración de Okta
Complete las siguientes tareas para configurar la AWS configuración de Okta.
Tarea 1: Reúna información sobre Okta
Para este paso, tendrá que recopilar su información de Okta para poder configurarla más adelante. AWS
-
Inicie sesión en su organización de Okta en https://login.okta.com/
como usuario con privilegios administrativos. -
En la pestaña Iniciar sesión, en la esquina inferior derecha de la página, selecciona Ver las instrucciones de configuración de SAML.
-
Toma nota del valor de la URL de inicio de sesión único del proveedor de identidad. Puede usar esta URL cuando se conecte a cualquier cliente SQL de terceros, como SQL
Workbench/J. -
Utilice los metadatos del proveedor de identidad del bloque 4 y, a continuación, guarde el archivo de metadatos en formato.xml (por ejemplo,).
metadata.xml
Tarea 2: Crear el proveedor de IAM
Para crear su proveedor de IAM, siga estos pasos:
Inicie sesión en la consola de IAM AWS Management Console y ábrala en. https://console.aws.amazon.com/iam/
-
En el panel de navegación, en Administración de acceso, selecciona Proveedores de identidad.
-
Elija Add Provider (Agregar proveedor).
-
En Tipo de proveedor, selecciona SAML.
-
En Nombre del proveedor, introduzca un nombre.
-
Para el documento de metadatos, elija Elegir archivo y cargue el archivo de metadatos (.xml) que descargó anteriormente.
-
Elija Add Provider (Agregar proveedor).
Tarea 3: Crear un rol de IAM
Para crear su AWS Identity and Access Management función, siga estos pasos:
Inicie sesión en la consola de IAM AWS Management Console y ábrala en https://console.aws.amazon.com/iam/
. -
En el panel de navegación, en Administración de acceso, elija Funciones.
-
Seleccione Crear rol.
-
En el tipo de entidad de confianza, seleccione Federación SAML 2.0.
-
Para el proveedor basado en SAML 2.0, elige el proveedor de identidad que creaste anteriormente.
-
Selecciona Permitir el acceso y la programación. AWS Management Console
-
Elija Siguiente.
-
En la lista de políticas de permisos, active las casillas de verificación de la política que creó anteriormente y para OpenSearchFullAccessla política que creó anteriormente.
-
Elija Siguiente.
-
En el área de revisión, en Nombre del rol, introduzca el nombre del rol; por ejemplo,
oktarole
. -
(Opcional) En Descripción, introduzca una breve descripción del propósito del rol.
-
Seleccione Crear rol.
-
Navegue hasta el rol que acaba de crear, seleccione la pestaña Relaciones de confianza y, a continuación, elija Editar política de confianza.
-
En el panel Editar declaración, en Agregar acciones para STS, active la casilla correspondiente TagSession.
-
Elija Actualizar política.
Paso 3: Crear la política de acceso a Amazon OpenSearch Service en IAM
Aprenda a configurar sus funciones de IAM para el control de OpenSearch acceso. Con las funciones de IAM, puede implementar un control de acceso detallado para que sus grupos de usuarios de Okta accedan a los recursos. OpenSearch En este tema se muestra la configuración basada en roles de IAM mediante dos grupos de ejemplo.
Puede asignar las funciones del dominio de Amazon OpenSearch Service a las funciones de IAM mediante la asignación de funciones de backend, como se muestra en el siguiente ejemplo:
{ "bob-group": { "hosts": [], "users": [], "reserved": false, "hidden": false, "backend_roles": [ "arn:aws:iam::111222333444:role/bob-group" ], "and_backend_roles": [] }, "alice-group": { "hosts": [], "users": [], "reserved": false, "hidden": false, "backend_roles": [ "arn:aws:iam::111222333444:role/alice-group" ], "and_backend_roles": [] } }
Paso 4: Compruebe la experiencia de inicio de sesión único iniciada por el proveedor de identidad con SAML
Abre la URL del estado de retransmisión predeterminado para abrir la página de autenticación de Okta. Introduzca las credenciales de un usuario final. Se le redirigirá automáticamente a la OpenSearch interfaz de usuario.
Puede comprobar sus credenciales actuales seleccionando el icono de usuario situado en la parte inferior del panel de navegación, como se muestra en la siguiente imagen:

También puede verificar los permisos de control de acceso detallados del usuario accediendo a las herramientas para desarrolladores en la parte inferior del panel de navegación y ejecutando consultas en la consola. A continuación se muestran ejemplos de consultas.
Paso 5: Configurar un control de acceso detallado basado en atributos de SAML
Con Amazon OpenSearch Service, puedes usar un control de acceso detallado con SAML para mapear usuarios y grupos de tu proveedor de identidad a usuarios y roles de control de acceso OpenSearch detallados de forma dinámica. Puede asignar estas funciones a OpenSearch dominios específicos y colecciones sin servidor, y definir los permisos a nivel de índice y la seguridad a nivel de los documentos.
nota
Para obtener más información sobre el control de acceso detallado, consulte. Control de acceso detallado en Amazon Service OpenSearch
Temas
Atributos SAML para un control de acceso detallado
- Clave de asunto
-
Se asigna a un atributo de usuario único, como el correo electrónico o el nombre de usuario, que identifica al usuario para la autenticación.
- Clave de rol
-
Se asigna a los atributos de grupo o rol de su IdP que determinan los roles o permisos de autorización.
Tarea 1: Configurar Okta para un control de acceso detallado
Para configurar Okta para un control de acceso detallado
-
Añada un nuevo atributo para el OpenSearch usuario principal en la sección de declaraciones de atributos:
-
Nombre:
UserName
-
Valor:
${user-email}
Este atributo se utiliza como clave de asunto en la configuración detallada OpenSearch de control de acceso para la autenticación.
-
-
Añada un atributo de grupo para los roles en la sección Declaración de atributos de grupo:
-
Nombre:
groups
-
Filtro:
OpenSearch_xxx
Este atributo se utiliza como clave de función para asignar grupos a funciones de OpenSearch control de acceso específicas para su autorización.
-
Tarea 2: Configurar SAML en el dominio OpenSearch
Para configurar SAML en el dominio OpenSearch
-
En la consola AWS de administración, identifique el dominio del OpenSearch servicio para el que desea habilitar un control de acceso detallado para los usuarios de la interfaz de usuario. OpenSearch
-
Navegue a la página de detalles del dominio específico.
-
Seleccione la pestaña Configuración de seguridad y haga clic en Editar.
-
Amplíe SAML mediante IAM Federate.
-
Introduzca el
subjectKey
yroleKey
que definió en Okta. -
Seleccione Guardar cambios.
También puede configurar un control de acceso detallado mediante. AWS CLI
aws opensearch create-domain \ --domain-name testDomain \ --engine-version OpenSearch_1.3 \ --cluster-config InstanceType=r5.xlarge.search,InstanceCount=1,DedicatedMasterEnabled=false,ZoneAwarenessEnabled=false,WarmEnabled=false \ --access-policies '{"Version":"2012-10-17","Statement":[{"Effect":"Allow","Principal":{"AWS":"*"},"Action":"es:*","Resource":"arn:aws:es:us-east-1:12345678901:domain/neosaml10/*"}]}' \ --domain-endpoint-options '{"EnforceHTTPS":true,"TLSSecurityPolicy":"Policy-Min-TLS-1-2-2019-07"}' \ --node-to-node-encryption-options '{"Enabled":true}' \ --encryption-at-rest-options '{"Enabled":true}' \ --advanced-security-options '{"Enabled":true,"InternalUserDatabaseEnabled":true,"MasterUserOptions":{"MasterUserName":"********","MasterUserPassword":"********"}, "IAMFederationOptions":{"Enabled": true,"SubjectKey":"TestSubjectKey","RolesKey":"TestRolesKey"}}' \ --ebs-options "EBSEnabled=true,VolumeType=gp2,VolumeSize=300" \ --no-verify-ssl \ --endpoint-url https://es.us-east-1.amazonaws.com \ --region us-east-1
Para actualizar un dominio existente:
aws opensearch update-domain-config \ --domain-name testDomain \ --advanced-security-options '{"Enabled":true,"InternalUserDatabaseEnabled":true,"MasterUserOptions":{"MasterUserName":"********","MasterUserPassword":"********"}, "IAMFederationOptions":{"Enabled": true,"SubjectKey":"TestSubjectKey","RolesKey":"TestRolesKey"}}' \ --ebs-options "EBSEnabled=true,VolumeType=gp2,VolumeSize=300" \ --no-verify-ssl \ --endpoint-url https://es.us-east-1.amazonaws.com \ --region us-east-1
Tarea 3: Configurar SAML en colecciones OpenSearch sin servidor
Para configurar un control de acceso detallado basado en SAML en Serverless OpenSearch
-
Abre AWS Management Console y navega hasta Amazon OpenSearch Service.
-
En el panel de navegación, en Serverless, selecciona Seguridad y, a continuación, selecciona Autenticación.
-
En la sección Federación de IAM, seleccione Editar.
Puede controlar el control de acceso detallado basado en los atributos de SAML mediante esta configuración. La federación de IAM está deshabilitada de forma predeterminada.
-
Seleccione Activar la federación de IAM.
-
Introduzca los
roleKey
valoressubjectKey
y que definió en Okta.Para obtener más información, consulte Atributos SAML para un control de acceso detallado .
-
Seleccione Guardar.
-
En el panel de navegación, en Serverless, elija Política de acceso a datos.
-
Actualice una política existente o cree una nueva.
-
Amplíe una regla, elija Añadir directores y, a continuación, seleccione Usuarios y grupos de la Federación de IAM.
-
Añada los principios necesarios y pulse Guardar.
-
Elija Conceder.
-
Según esta regla, haga lo siguiente:
-
Seleccione los permisos que desee definir para las entidades principales seleccionadas.
-
Especifique las colecciones a las que desea aplicar los permisos.
-
Si lo desea, defina los permisos a nivel de índice.
nota
Puede crear varias reglas para asignar diferentes permisos a diferentes grupos de directores.
-
-
Cuando termine, elija Guardar.
-
Seleccione Crear.
Como alternativa, puede usar CLI para crear las configuraciones de seguridad para las colecciones, como se indica a continuación:
aws opensearchserverless create-security-config --region "
region
" --type iamfederation --name "configuration_name
" --description "description
" --iam-federation-options '{"groupAttribute":"GroupKey","userAttribute":"UserKey"}'