|
Me complace anunciar un nuevo caso de uso basado en la propagación de identidades confiables, una capacidad introducida recientemente de AWS IAM Identity Center.
Tableau, una aplicación de inteligencia empresarial (BI) de uso común, ahora puede propagar la identidad del usuario final hasta Amazon Redshift. Esto tiene un triple beneficio. Él simplifica la experiencia de inicio de sesión para usuarios finales. Permite a los propietarios de datos definir el acceso basándose en la identidad real del usuario final. Permite a los auditores verificar el acceso a los datos por parte de los usuarios.
La propagación de identidades confiables permite que las aplicaciones que consumen datos (como Cuadro, Amazon QuickSightAmazon Redshift Query Editor, Amazon EMR Studio y otros) para propagar la identidad del usuario y las membresías de grupo a los servicios que almacenan y administran el acceso a los datos, como Desplazamiento al rojo del Amazonas, Amazon Athena, Amazon Simple Storage Service (Amazon S3), Amazon EMR y otros. La propagación de identidades confiables es una capacidad de IAM Identity Center que mejora la experiencia de inicio de sesión en múltiples aplicaciones de análisis, simplifica la administración del acceso a datos y simplifica la auditoría. Los usuarios finales se benefician del inicio de sesión único y no tienen que especificar los roles de IAM que desean asumir para conectarse al sistema.
Antes de profundizar en más detalles, acordemos la terminología.
Yo uso el término “proveedores de identidad” para referirse a los sistemas que contienen identidades de usuarios y membresías de grupos. Estos son los sistemas que solicitan al usuario las credenciales y realizan la autenticación. Por ejemplo, Azure Directory, Okta, Ping Identity y más. Consulte la lista completa de proveedores de identidad que admitimos.
Yo uso el término “aplicaciones orientadas al usuario” para designar las aplicaciones que consumen datos, como Cuadro, MicrosoftPowerBIQuickSight, Amazon Redshift Query Editor y otros.
Y finalmente, cuando escribo “servicios posteriores”me refiero a los motores de análisis y servicios de almacenamiento que procesan, almacenan o gestionan el acceso a sus datos: Desplazamiento al rojo del AmazonasAtenea, T3, EMRy otros.
Para comprender el beneficio de la propagación de identidades confiables, hablemos brevemente sobre cómo se otorgaba el acceso a los datos hasta hoy. Cuando una aplicación orientada al usuario accede a datos de un servicio descendente, el servicio ascendente utiliza credenciales genéricas (como «tableau_user
“) o asume una SOY rol para autenticarse contra el servicio descendente. Ésta es la fuente de dos desafíos.
En primer lugar, al administrador del servicio descendente le resulta difícil definir políticas de acceso que se ajusten al usuario real que realiza la solicitud. Como se ve desde el servicio descendente, todas las solicitudes se originan en ese usuario común o rol de IAM. Si Jeff y Jane están asignados a la BusinessAnalytics
rol de IAM, entonces no es posible darles diferentes niveles de acceso, por ejemplo, solo lectura y lectura-escritura. Además, si Jeff también está en el Finance
grupo, necesita elegir un rol en el cual operar; no puede acceder a datos de ambos grupos en la misma sesión.
En segundo lugar, la tarea de asociar un evento de acceso a datos a un usuario final implica un trabajo pesado indiferenciado. Si la solicitud se origina en un rol de IAM llamado BusinessAnalytics
entonces se requiere trabajo adicional para determinar qué usuario estuvo detrás de esa acción.
Bueno, este ejemplo en particular puede parecer muy simple, pero en la vida real, las organizaciones tienen cientos de usuarios y miles de grupos que relacionar con cientos de conjuntos de datos. Hubo una oportunidad para que nosotros Inventar y simplificar.
Una vez configurada, la nueva propagación de identidad confiable proporciona un mecanismo técnico para que las aplicaciones orientadas al usuario accedan a los datos en nombre del usuario real detrás del teclado. Conocer la identidad real del usuario ofrece tres ventajas principales.
En primer lugar, permite a los administradores de servicios posteriores crear y gestionar políticas de acceso basadas en identidades de usuarios reales, los grupos a los que pertenecen, o una combinación de ambos. Los administradores de servicios intermedios ahora pueden asignar acceso en términos de usuarios, grupos y conjuntos de datos. Esta es la forma en que la mayoría de nuestros clientes piensan naturalmente sobre el acceso a los datos: ya no son necesarias asignaciones intermedias a roles de IAM para lograr estos patrones.
En segundo lugar, los auditores ahora tienen acceso a la identidad de usuario original en los registros del sistema y puede verificar que las políticas se implementen correctamente y sigan todos los requisitos de la empresa o las políticas a nivel industrial.
En tercer lugar, los usuarios de aplicaciones de BI pueden beneficiarse de inicio de sesión único entre aplicaciones. Sus usuarios finales ya no necesitan comprender las cuentas de AWS y las funciones de IAM de su empresa. En su lugar, pueden iniciar sesión en EMR Studio (por ejemplo) utilizando su inicio de sesión único corporativo al que están acostumbrados para muchas otras cosas que hacen en el trabajo.
¿Cómo funciona la propagación de identidades confiables?
La propagación de identidades confiables se basa en mecanismos estándar de nuestra industria: OAuth2 y JWT. OAuth2 es un estándar abierto para la delegación de acceso que permite a los usuarios otorgar a aplicaciones de terceros acceso a datos de otros servicios (servicios posteriores) sin exponer sus credenciales. JWT (JSON Web Token) es un medio compacto y seguro para URL para representar identidades y reclamos que se transferirán entre dos partes. Los JWT están firmados, lo que significa que se puede verificar su integridad y autenticidad.
Cómo configurar la propagación de identidades confiables
La configuración de la propagación de identidades confiables requiere configuración en IAM Identity Center, en la aplicación orientada al usuario y en el servicio descendente porque se debe indicar a cada uno de ellos que funcione con identidades de usuario final. Aunque los detalles serán diferentes para cada aplicación, todas seguirán este patrón:
- Configure una fuente de identidad en AWS IAM Identity Center. AWS recomienda habilitar el aprovisionamiento automatizado si su proveedor de identidad lo admite, como lo hace la mayoría. El aprovisionamiento automatizado funciona a través del estándar de sincronización SCIM para sincronizar los usuarios y grupos de su directorio en IAM Identity Center. Probablemente ya haya configurado esto si actualmente utiliza IAM Identity Center para federar su fuerza laboral en la Consola de administración de AWS. Esta es una configuración única y no es necesario repetir este paso para cada aplicación orientada al usuario.
- Configure su aplicación orientada al usuario para autenticar a sus usuarios con su proveedor de identidad. Por ejemplo, configure Tableau para usar Okta.
- Configure la conexión entre la aplicación orientada al usuario y el servicio descendente. Por ejemplo, configure Tableau para acceder a Amazon Redshift. En algunos casos, requiere el uso del controlador ODBC o JDBC para Redshift.
Luego viene la configuración específica para la propagación de identidades confiables. Por ejemplo, imagine que su organización ha desarrollado una aplicación web orientada al usuario que autentica a los usuarios con su proveedor de identidad y que desea acceder a los datos en AWS en nombre del usuario autenticado actual. Para este caso de uso, crearía un emisor de tokens confiable en IAM Identity Center. Esta nueva y poderosa construcción le brinda una manera de asignar los usuarios autenticados de su aplicación a los usuarios en su directorio de IAM Identity Center para que pueda hacer uso de la propagación de identidades confiables. Mi colega Becky escribió una publicación de blog para mostrarle cómo desarrollar una aplicación de este tipo. Esta configuración adicional solo es necesaria cuando se utilizan aplicaciones de terceros, como Tableau, o una aplicación desarrollada por el cliente, que se autentica fuera de AWS. Cuando se utilizan aplicaciones orientadas al usuario administradas por AWS, como Amazon QuickSight, no se requiere ninguna configuración adicional.
Finalmente, los administradores de servicios posteriores deben configurar las políticas de acceso en función de la identidad del usuario y la membresía del grupo. La configuración exacta varía de un servicio descendente a otro. Si la aplicación lee o escribe datos en Amazon S3, el propietario de los datos puede utilizar concesiones de acceso a S3 en la consola de Amazon S3 para otorgar acceso a usuarios y grupos a prefijos en Amazon S3. Si la aplicación realiza consultas a un almacén de datos de Amazon Redshift, el propietario de los datos debe configurar la conexión confiable de IAM Identity Center en la consola de Amazon Redshift y coincidir con el reclamo de audiencia (aud
) del proveedor de identidad.
Ahora que tiene una descripción general de alto nivel de la configuración, profundicemos en la parte más importante: la experiencia del usuario.
La experiencia del usuario final
Aunque la experiencia precisa del usuario final obviamente será diferente para diferentes aplicaciones, en todos los casos será más simple y más familiar para los usuarios de la fuerza laboral que antes. La interacción del usuario comenzará con un flujo de inicio de sesión único de autenticación basado en redireccionamiento que lleva al usuario a su proveedor de identidad, donde puede iniciar sesión con credenciales, autenticación multifactor, etc.
Veamos los detalles de cómo un usuario final podría interactuar con Okta y Tableau cuando se ha configurado la propagación de identidades confiables.
A continuación se muestra una ilustración del flujo y las principales interacciones entre sistemas y servicios.
Así es como va.
1. Como usuario, intento iniciar sesión en Tableau.
2. Tableau inicia un flujo basado en navegador y redirige a la página de inicio de sesión de Okta donde puedo ingresar mis credenciales de inicio de sesión. Tras una autenticación exitosa, Okta emite un token de autenticación (ID y token de acceso) a Tableau.
3. Tableau inicia una conexión JDBC con Amazon Redshift e incluye el token de acceso en la solicitud de conexión. El controlador JDBC de Amazon Redshift realiza una llamada a Amazon Redshift. Dado que su administrador de Amazon Redshift habilitó IAM Identity Center, Amazon Redshift reenvía el token de acceso a IAM Identity Center.
4. IAM Identity Center verifica y valida el token de acceso y lo intercambia por un token emitido por Identity Center.
5. Amazon Redshift resolverá el token del Centro de identidad para determinar el usuario del Centro de identidad correspondiente y autorizar el acceso al recurso. Tras la autorización exitosa, puedo conectarme desde Tableau a Amazon Redshift.
Una vez autenticado, puedo empezar a utilizar Tableau como de costumbre.
Y cuando me conecto a Amazon Redshift Query Editor, puedo observar el sys_query_history
tabla para comprobar quién fue el usuario que realizó la consulta. Informa correctamente awsidc:
la dirección de correo electrónico de Okta que utilicé cuando me conecté desde Tableau.
Puedes leer Documentación de Tableau para obtener más detalles sobre esta configuración.
Precios y disponibilidad
La propagación de identidades confiables se proporciona sin costo adicional en las 26 regiones de AWS donde AWS IAM Identity Center está disponible hoy.
Aquí hay más detalles sobre la propagación de identidades confiables y las configuraciones de servicios posteriores.
¡Feliz lectura!
Con la propagación de identidad confiable, ahora puede configurar sistemas de análisis para propagar la identidad del usuario real, la membresía del grupo y los atributos a los servicios de AWS, como Desplazamiento al rojo del Amazonas, Amazon Athena o Amazon S3. Simplifica la gestión de las políticas de acceso a estos servicios. También permite a los auditores verificar la postura de cumplimiento de su organización para conocer la identidad real de los usuarios que acceden a los datos.
Comience ahora y configure su integración de Tableau con Amazon Redshift.
PD: Escribir una publicación de blog en AWS siempre es un esfuerzo de equipo, incluso cuando solo ve un nombre debajo del título de la publicación. En este caso quiero agradecer Eva Mineva, Laura Reithy Roberto Migli por su muy apreciada ayuda para comprender las numerosas sutilezas y detalles técnicos de la propagación de identidades confiables.
GIPHY App Key not set. Please check settings