Atenea amazónica es un servicio de consulta interactivo que facilita el análisis de datos directamente en Servicio de almacenamiento simple de Amazon (Amazon S3) utilizando SQL estándar. Los equipos de operaciones en la nube pueden usar Gestión de identidades y accesos de AWS (IAM) para gestionar de forma centralizada el acceso a Athena. Esto simplifica la administración al permitir que un equipo directivo controle el acceso de los usuarios a los grupos de trabajo de Athena desde un Azure AD administrado de forma centralizada conectado a un Active Directory local. Esta configuración reduce la experiencia de gastos generales de los equipos de operaciones en la nube al administrar usuarios de IAM. Athena admite la federación con la federación de Active Directory Federation Service (ADFS), PingFederate, Okta y Microsoft Azure Active Directory (Azure AD).
Esta publicación de blog ilustra cómo configurar la federación de AWS IAM con Azure AD conectado a AD local y cómo configurar el acceso de nivel de grupo de trabajo de Athena para diferentes usuarios. Vamos a cubrir dos escenarios:
- Usuarios y grupos administrados por Azure AD, y AD local.
- Usuarios y grupos administrados de Active Directory local sincronizados con Azure AD.
No cubrimos cómo configurar la sincronización entre AD local y Azure AD con la ayuda de Azure AD connect. Para obtener más información sobre cómo integrar Azure AD con AWS Managed AD, consulte Habilite Office 365 con AWS Managed Microsoft AD sin sincronización de contraseña de usuario y cómo integrar Azure AD con un AD local, consulte el artículo de Microsoft Instalación personalizada de Azure Active Directory Connect.
Resumen de la solución
Esta solución lo ayuda a configurar la federación de IAM con Azure AD conectado a AD local y configurar el acceso de nivel de grupo de trabajo de Athena para los usuarios. Puede controlar el acceso al grupo de trabajo mediante un grupo de AD local o un grupo de Azure AD. La solución consta de cuatro secciones:
- Configure Azure AD como su proveedor de identidad (IdP):
- Configure Azure AD como su IdP de SAML para una aplicación de cuenta única de AWS.
- Configure la aplicación de Azure AD con permisos delegados.
- Configure sus roles y IdP de IAM:
- Configure un IdP que confíe en Azure AD.
- Configure un usuario de IAM con permiso de función de lectura.
- Configure un rol y políticas de IAM para cada grupo de trabajo de Athena.
- Configure el acceso de usuario en Azure AD:
- Configure el aprovisionamiento automático de roles de IAM.
- Configure el acceso de usuario al rol de grupo de trabajo de Athena.
- Acceso a Atenas:
- Acceda a Athena utilizando Microsoft basado en la web Portal de mis aplicaciones.
- Acceda a Athena usando SQL Workbench / J una herramienta de consulta SQL multiplataforma gratuita, independiente de DBMS.
El siguiente diagrama ilustra la arquitectura de la solución.
El flujo de trabajo de la solución incluye los siguientes pasos:
- La estación de trabajo del desarrollador se conecta a Azure AD a través de un controlador SQL Workbench / j JDBC Athena para solicitar un token SAML (proceso OAuth de dos pasos).
- Azure AD envía el tráfico de autenticación de vuelta a las instalaciones a través de un agente de paso a través de Azure AD o ADFS.
- El agente de paso a través de Azure AD o ADFS se conecta al controlador de dominio local y autentica al usuario.
- El agente de paso a través o ADFS envía un token de éxito a Azure AD.
- Azure AD construye un token SAML que contiene el rol de IAM asignado y lo envía al cliente.
- El cliente se conecta a Servicio de token de seguridad de AWS (AWS STS) y presenta el token SAML para asumir el rol de Athena y genera credenciales temporales.
- AWS STS envía credenciales temporales al cliente.
- El cliente usa las credenciales temporales para conectarse a Athena.
Requisitos previos
Debe cumplir con los siguientes requisitos antes de configurar la solución:
- En el lado de Azure AD, complete lo siguiente:
- Configurar el servidor de Azure AD Connect y sincronizarlo con AD local
- Configurar el paso a través de Azure AD o la federación de Microsoft ADFS entre Azure AD y AD local
- Cree tres usuarios (
user1
,user2
,user3
) y tres grupos (athena-admin-adgroup
,athena-datascience-adgroup
,athena-developer-adgroup
) para tres grupos de trabajo respectivos de Athena
- En el lado de Athena, cree tres grupos de trabajo de Athena:
athena-admin-workgroup
,athena-datascience-workgroup
,athena-developer-workgroup
Para obtener más información sobre el uso de grupos de trabajo de muestra de Athena, consulte Un lago de datos público para el análisis de datos de COVID-19.
Configurar Azure AD
En esta sección, cubriremos los detalles de configuración de Azure AD para Athena en la suscripción de Microsoft Azure. Principalmente registraremos una aplicación, configuraremos la federación, delegaremos el permiso de la aplicación y generaremos el secreto de la aplicación.
Establecer Azure AD como SAML IdP para una aplicación de una sola cuenta de AWS
Para configurar Azure AD como su IdP de SAML, complete los siguientes pasos:
- Inicia sesión en el Portal Azure con credenciales de administrador global de Azure AD.
- Elige Directorio activo de Azure.
- Elige Aplicaciones empresariales.
- Elige Nueva aplicación.
- Busque
Amazon
en la barra de búsqueda - Elige Acceso a una sola cuenta de AWS.
- Nombre, entrar
Athena-App
. - Elige Crear.
- En Cómo Empezar sección, bajo Configurar inicio de sesión único, escoger ¡Empieza aquí!.
- Seleccione un método de inicio de sesión único, escoger SAML.
- Configuración básica de SAML, escoger Editar.
- Identificador (ID de entidad), introduzca
https://signin.aws.amazon.com/saml#1
. - Elige Guardar.
- under Certificado de firma SAML, Para XML de metadatos de federación, escoger Descargar.
Este archivo es necesario para configurar su IdP de IAM en la siguiente sección. Guarde este archivo en su máquina local para usarlo más adelante al configurar IAM en AWS.
Configure su aplicación de Azure AD con permisos delegados
Para configurar su aplicación de Azure AD, complete los siguientes pasos:
- Elige Directorio activo de Azure.
- Elige Registros de aplicaciones y Para todas las aplicaciones.
- Busca y elige Aplicación Athena.
- Tenga en cuenta los valores de ID de aplicación (cliente) y ID de directorio (inquilino).
Necesita estos valores en la conexión JDBC cuando se conecta a Athena.
- under Permisos API, escoger Agregar un permiso.
- Elige Microsoft Graph y Permisos delegados.
- Seleccionar permisos, buscar
user.read
. - Usuario, escoger Usuario. Leer.
- Elige Agregar permiso.
- Elige Otorgar consentimiento de administrador y Sí.
- Elige Autenticación y Agregar una plataforma.
- Elige Aplicaciones móviles y de escritorio.
- under URI de redireccionamiento personalizado, introduzca
http://localhost/athena
. - Elige Configurar.
- Elige Certificados y secretos y Nuevo secreto de cliente.
- Ingrese una descripción.
- Expira, escoger 24 meses.
- Copie el valor secreto del cliente para utilizarlo al configurar la conexión JDBC.
Configurar el IdP de IAM y los roles
En esta sección cubriremos la configuración de IAM en la cuenta de AWS. Principalmente crearemos un usuario de IAM, Roles y políticas.
Configurar un IdP que confíe en Azure AD
Para configurar su IdP que confía en Azure AD, complete los siguientes pasos:
- En la consola de IAM, elija Proveedores de identidad en el panel de navegación.
- Elige Agregar proveedor.
- Tipo de Proveedor, escoger SAML.
- Nombre del Proveedor, introduzca
AzureADAthenaProvider
. - Documento de metadatos, cargue el archivo descargado de Azure Portal.
- Elige Agregar proveedor.
Configurar un usuario de IAM con permiso de función de lectura
Para configurar su usuario de IAM, complete los siguientes pasos:
- En la consola de IAM, elija Usuarios en el panel de navegación.
- Elige Añadir usuario.
- nombre de usuario, introduzca
ReadRoleUser
. - Tipo de acceso, seleccione Acceso programático.
- Elige Siguiente: permisos.
- Establecer permisos, escoger Adjunte políticas existentes directamente.
- Elige Crear política.
- Seleccione JSON e ingrese la siguiente política, que otorga acceso de lectura para enumerar roles en IAM:
- Elige Siguiente: Etiquetas.
- Elige Siguiente: Revisión.
- Nombre, introduzca
readrolepolicy
. - Elige Crear política.
- En Agregar Usuario pestaña, busque y elija el rol
readrole
. - Elige Siguiente: etiquetas.
- Elige Siguiente: Revisión.
- Elige Crear usuario.
- Descargue el archivo .csv que contiene el ID de la clave de acceso y la clave de acceso secreta.
Los usamos al configurar el aprovisionamiento automático de Azure AD.
Configure un rol y políticas de IAM para cada grupo de trabajo de Athena
Para configurar roles y políticas de IAM para sus grupos de trabajo de Athena, complete los siguientes pasos:
- En la consola de IAM, elija Roles en el panel de navegación.
- Elige Crear rol.
- Seleccionar tipo de entidad confiable, escoger Federación SAML 2.0.
- Proveedor SAML, escoger Proveedor AzureADAthena.
- Elige Permitir el acceso a la consola de administración de AWS y mediante programación.
- under Estado, escoger Clave.
- Seleccione SAML: aud.
- Estado, seleccione cadenaigual.
- Valor, introduzca
http://localhost/athena
. - Elige Siguiente: permisos.
- Elige Crear política.
- Elige JSON e ingrese la siguiente política (proporcione el ARN de su grupo de trabajo):
La política otorga acceso completo al grupo de trabajo de Athena. Se basa en el Política administrada por AWS AmazonAthenaFullAccess
y políticas de ejemplo de grupo de trabajo.
- Elige Siguiente: Etiquetas.
- Elige Siguiente: Revisión.
- Nombre, introduzca
athenaworkgroup1policy
. - Elige Crear política.
- En Crear rol pestaña, buscar
athenaworkgroup1policy
y seleccione la política. - Elige Siguiente: Etiquetas.
- Elige Siguiente: Revisión.
- Elige Crear rol.
- Nombre, introduzca
athenaworkgroup1role
. - Elige Crear rol.
Configurar el acceso de usuarios en Azure AD
En esta sección, configuraremos el aprovisionamiento automático y asignaremos usuarios a la aplicación desde el portal de Microsoft Azure.
Configurar el aprovisionamiento automático de roles de IAM
Para configurar el aprovisionamiento automático de roles de IAM, complete los siguientes pasos:
- Inicia sesión en el Portal Azure con credenciales de administrador global de Azure AD.
- Elige Directorio activo de Azure.
- Elige Aplicaciones empresariales y elige Aplicación Athena.
- Elige Aprovisionar cuentas de usuario.
- En Aprovisionamiento sección, elija ¡Empieza aquí!.
- Modo de aprovisionamiento, escoger Automático.
- Expandir Credenciales de administrador y poblar secreto del cliente y Token secreto con el ID de la clave de acceso y la clave de acceso secreta de
ReadRoleUser
, respectivamente. - Elige Conexión de prueba y Guardar.
- Elige Iniciar aprovisionamiento.
El ciclo inicial puede tardar un tiempo en completarse, después de lo cual los roles de IAM se rellenan en Azure AD.
Configurar el acceso de usuario al rol de grupo de trabajo de Athena
Para configurar el acceso de usuario al rol de grupo de trabajo, complete los siguientes pasos:
- Registrarse en Portal Azure con credenciales de administrador global de Azure AD.
- Elige Directorio activo de Azure.
- Elige Aplicaciones empresariales y elige Aplicación Athena.
- Elige Asignar usuarios y grupos y Agregar usuario / grupo.
- under Usuarios y grupos, seleccione el grupo al que desea asignar el permiso de Athena. Para esta publicación, usamos
athena-admin-adgroup
; alternativamente, puede seleccionar user1. - Elige Seleccione.
- Selecciona un rol, seleccione el rol
athenaworkgroup1role
. - Elige Seleccione.
- Elige Asignar.
Acceder a Atenas
En esta sección, demostraremos cómo acceder a Athena desde la consola de AWS y la herramienta para desarrolladores SQL Workbench / J
Acceda a Athena mediante el portal Microsoft My Apps basado en la web
Para usar el portal de Microsoft My Apps para acceder a Athena, complete los siguientes pasos:
- Registrarse en Portal Azure con credenciales de administrador global de Azure AD.
- Elige Directorio activo de Azure
- Elige Aplicaciones empresariales y elige Aplicación Athena.
- Elige
- Propiedades.
- Copie el valor de URL de acceso de usuario.
- Abra un navegador web e ingrese la URL.
El vínculo le redirige a una página de inicio de sesión de Azure.
- Inicie sesión con las credenciales de usuario locales.
Eres redirigido a Consola de administración de AWS.
Acceda a Athena mediante SQL Workbench / J
En organizaciones altamente reguladas, los usuarios internos no pueden usar la consola para acceder a Athena. En tales casos, puede utilizar SQL Workbench / J, una herramienta de código abierto que permite la conectividad a Athena mediante un controlador JDBC.
- Descargue la última Controlador Athena JDBC (elija el controlador apropiado según su versión de Java).
- Descarga e instala SQL Workbench / J.
- Abra SQL Workbench / J.
- En Archive menú, seleccione Conectar ventana.
- Elige Administrar controladores.
- Nombre, ingrese un nombre para su conductor.
- Busque la ubicación de la carpeta donde descargó y descomprimió el controlador.
- Elige OK.
Ahora que configuramos el controlador Athena, es hora de conectarse a Athena. Debe completar la URL de conexión, el nombre de usuario y la contraseña.
Utilice la siguiente cadena de conexión para conectarse a Athena con una cuenta de usuario sin MFA (proporcione los valores recopilados anteriormente en la publicación):
Para conectarse con una cuenta de usuario con MFA habilitado, use el proveedor de credenciales de Azure AD del navegador. Debe construir la URL de conexión y completar el nombre de usuario Nombre de usuario y contraseña
Utilice la siguiente cadena de conexión para conectarse a Athena con una cuenta de usuario que tenga habilitada la MFA (proporcione los valores que recopiló anteriormente):
Reemplace el texto en rojo con los detalles recopilados anteriormente en el artículo.
Cuando se establece la conexión, puede ejecutar consultas contra Athena.
Configuración de proxy
Si se está conectando a Athena a través de un servidor proxy, asegúrese de que el servidor proxy permita el puerto 444. La API de transmisión del conjunto de resultados usa el puerto 444 en el servidor de Athena para las comunicaciones salientes. Selecciona el ProxyHost
propiedad a la dirección IP o al nombre de host de su servidor proxy. Selecciona el ProxyPort
propiedad al número del puerto TCP que utiliza el servidor proxy para escuchar las conexiones del cliente. Vea el siguiente código:
Resumen
En esta publicación, configuramos la federación de IAM con Azure AD conectado a AD local y configuramos el acceso granular a un grupo de trabajo de Athena. También analizamos cómo acceder a Athena a través de la consola utilizando el portal web Microsoft My Apps y la herramienta SQL Workbench / J. También discutimos cómo funciona la conexión a través de un proxy. La misma infraestructura de federación también se puede aprovechar para la configuración del controlador ODBC. También puede usar las instrucciones de esta publicación para configurar Azure IdP basado en SAML para habilitar el acceso federado a Athena Workgroups.
Sobre la autora
Niraj Kumar es un Gerente Técnico Principal de Cuentas para servicios financieros en AWS, donde ayuda a los clientes a diseñar, diseñar, construir, operar y soportar cargas de trabajo en AWS de una manera segura y sólida. Tiene más de 20 años de diversa experiencia en TI en los campos de arquitectura empresarial, nube y virtualización, seguridad, IAM, arquitectura de soluciones y sistemas y tecnologías de información. En su tiempo libre, le gusta ser mentor, entrenar, hacer trekking, ver documentales con su hijo y leer algo diferente todos los días.
- '
- &
- 100
- 11
- 420
- 7
- 9
- de la máquina
- Mi Cuenta
- la columna Acción
- lector activo
- Directorio Activo
- Ad
- Admin
- Todos
- Permitir
- Amazon
- análisis
- abejas
- applicación
- aplicaciones
- aplicaciones
- arquitectura
- artículo
- Autenticación
- AWS
- Azure
- Blog
- cada navegador
- build
- cases
- Soluciones
- código
- Comunicaciónes
- conexión
- Conexiones
- Conectividad
- consentimiento
- COVID-19
- Referencias
- multi-plataforma
- Clientes
- datos
- Lago de datos
- día
- dc
- Diseño
- Developer
- documentales
- conductor
- Empresa
- experience
- Terrenos
- financiero
- servicios financieros
- Gratuito
- ser completados
- Buscar
- subvenciones
- Grupo procesos
- Cómo
- Como Hacer
- HTTPS
- AMI
- Identidad
- información
- EN LA MINA
- interactivo
- IP
- Dirección IP
- IT
- Java
- Clave
- más reciente
- Nivel
- LINK
- local
- Ubicación
- miró
- Management
- MFA
- Microsoft
- Móvil
- Navegación
- Office 365
- para las fiestas.
- Contraseña
- plugin
- políticas
- política
- Portal
- Director de la escuela
- perfecta
- apoderado
- público
- Reading
- reorientar
- Requisitos
- Recurso
- Ejecutar
- Buscar
- EN LINEA
- Servicios
- set
- sencillos
- su
- SQL
- Posicionamiento
- STORAGE
- en streaming
- suscripción
- comercial
- SOPORTE
- soportes
- Todas las funciones a su disposición
- Técnico
- Tecnologías
- temporal
- equipo
- ficha
- tráfico
- usuarios
- propuesta de
- web
- navegador web
- flujo de trabajo
- funciona
- años