Amazona atena é um serviço de consulta interativo que facilita a análise de dados diretamente em Serviço de armazenamento simples da Amazon (Amazon S3) usando SQL padrão. As equipes de operação em nuvem podem usar Gerenciamento de acesso e identidade da AWS (IAM) para gerenciar centralmente o acesso ao Athena. Isso simplifica a administração, permitindo que uma equipe administrativa controle o acesso do usuário aos grupos de trabalho do Athena a partir de um Azure AD gerenciado centralmente conectado a um Active Directory local. Essa configuração reduz a sobrecarga das equipes de operação em nuvem ao gerenciar usuários do IAM. Athena oferece suporte à federação com federação do Active Directory Federation Service (ADFS), PingFederate, Okta e Microsoft Azure Active Directory (Azure AD).
Esta postagem de blog ilustra como configurar a federação IAM da AWS com o Azure AD conectado ao AD local e configurar o acesso no nível do grupo de trabalho Athena para diferentes usuários. Vamos cobrir dois cenários:
- Usuários e grupos gerenciados do Azure AD e AD local.
- Usuários e grupos gerenciados pelo diretório ativo local sincronizados com o Azure AD.
Não abordamos como configurar a sincronização entre o AD local e o Azure AD com a ajuda do Azure AD Connect. Para obter mais informações sobre como integrar o Azure AD com um AWS Managed AD, consulte Habilite o Office 365 com AWS Managed Microsoft AD sem sincronização de senha de usuário e como integrar o Azure AD com um AD local, consulte o artigo da Microsoft Instalação personalizada do Azure Active Directory Connect.
Visão geral da solução
Esta solução ajuda você a configurar a federação IAM com o Azure AD conectado ao AD local e configurar o acesso de nível de grupo de trabalho Athena para usuários. Você pode controlar o acesso ao grupo de trabalho por um grupo do AD local ou por um grupo do Azure AD. A solução consiste em quatro seções:
- Configure o Azure AD como seu provedor de identidade (IdP):
- Configure o Azure AD como seu SAML IdP para um aplicativo de conta única da AWS.
- Configure o aplicativo Azure AD com permissões delegadas.
- Configure seu IAM IdP e suas funções:
- Configure um IdP que confia no Azure AD.
- Configure um usuário do IAM com permissão de função de leitura.
- Configure uma função e políticas do IAM para cada grupo de trabalho do Athena.
- Configure o acesso do usuário no Azure AD:
- Configure o provisionamento automático de funções do IAM.
- Configure o acesso do usuário à função do grupo de trabalho Athena.
- Acesse Atena:
- Acesse o Athena usando o Microsoft baseado na web Meu portal de aplicativos.
- Acesse o Athena usando SQL Workbench / J uma ferramenta de consulta SQL gratuita, independente de DBMS e multiplataforma.
O diagrama a seguir ilustra a arquitetura da solução.
O fluxo de trabalho da solução inclui as seguintes etapas:
- A estação de trabalho do desenvolvedor se conecta ao Azure AD por meio de um driver SQL Workbench/j JDBC Athena para solicitar um token SAML (processo OAuth de duas etapas).
- O Azure AD envia o tráfego de autenticação de volta para o local por meio de um agente de passagem do Azure AD ou ADFS.
- O agente de passagem do Azure AD ou ADFS se conecta ao controlador de domínio local e autentica o usuário.
- O agente de passagem ou ADFS envia um token de sucesso para o Azure AD.
- O Azure AD constrói um token SAML contendo a função IAM atribuída e o envia ao cliente.
- O cliente se conecta a Serviço de token de segurança AWS (AWS STS) e apresenta o token SAML para assumir a função Athena e gera credenciais temporárias.
- O AWS STS envia credenciais temporárias ao cliente.
- O cliente usa as credenciais temporárias para se conectar ao Athena.
Pré-requisitos
Você deve atender aos seguintes requisitos antes de configurar a solução:
- No lado do Azure AD, conclua o seguinte:
- Configure o servidor Azure AD Connect e sincronize com o AD local
- Configure a passagem do Azure AD ou a federação do Microsoft ADFS entre o Azure AD e o AD local
- Crie três usuários (
user1
,user2
,user3
) e três grupos (athena-admin-adgroup
,athena-datascience-adgroup
,athena-developer-adgroup
) para três respectivos grupos de trabalho do Athena
- No lado do Athena, crie três grupos de trabalho do Athena:
athena-admin-workgroup
,athena-datascience-workgroup
,athena-developer-workgroup
Para obter mais informações sobre como usar grupos de trabalho Athena de amostra, consulte Um data lake público para análise de dados da COVID-19.
Configurar o Azure AD
Nesta seção, abordaremos os detalhes de configuração do Azure AD para Athena na assinatura do Microsoft Azure. Principalmente, vamos registrar um aplicativo, configurar a federação, delegar a permissão do aplicativo e gerar o segredo do aplicativo.
Defina o Azure AD como SAML IdP para um aplicativo de conta única da AWS
Para configurar o Azure AD como seu SAML IdP, conclua as seguintes etapas:
- Entre no Portal do Azure com credenciais de administrador global do Azure AD.
- Escolha Azure Active Directory.
- Escolha Aplicações Enterprise.
- Escolha Nova aplicação.
- Procurar por
Amazon
na barra de pesquisa. - Escolha Acesso de conta única da AWS.
- Escolha Nome, entrar
Athena-App
. - Escolha Criar.
- No Iniciando seção, sob Configurar logon único, escolha COMECE AGORA.
- Escolha Selecione um método de logon único, escolha SAML.
- Escolha Configuração SAML Básica, escolha Editar.
- Escolha Identificador (ID da entidade), entrar
https://signin.aws.amazon.com/saml#1
. - Escolha Salvar.
- Debaixo Certificado de Assinatura SAML, Por XML de Metadados da Federação, escolha Baixar.
Este arquivo é necessário para configurar seu IAM IdP na próxima seção. Salve este arquivo em sua máquina local para usar mais tarde ao configurar o IAM na AWS.
Configure seu aplicativo do Azure AD com permissões delegadas
Para configurar seu aplicativo do Azure AD, conclua as seguintes etapas:
- Escolha Azure Active Directory.
- Escolha Registros de aplicativos e Todos as Aplicações.
- Pesquise e escolha Aplicativo Athena.
- Observe os valores para ID do aplicativo (cliente) e ID do diretório (locatário).
Você precisa desses valores na conexão JDBC ao se conectar ao Athena.
- Debaixo Permissões de API, escolha Adicione uma permissão.
- Escolha Microsoft Graph e Permissões delegadas.
- Escolha Selecione as permissões, procurar por
user.read
. - Escolha Utilizador, escolha Usuário. Ler.
- Escolha Adicionar permissão.
- Escolha Conceder consentimento do administrador e Sim.
- Escolha Autenticação e Adicionar uma plataforma.
- Escolha Aplicativos móveis e de desktop.
- Debaixo URIs de redirecionamento personalizados, entrar
http://localhost/athena
. - Escolha configurar.
- Escolha Certificados e segredos e Novo segredo do cliente.
- Insira uma descrição.
- Escolha Validade, escolha de 24 meses.
- Copie o valor do segredo do cliente para usar ao configurar a conexão JDBC.
Configure o IAM IdP e as funções
Nesta seção, abordaremos a configuração do IAM na conta da AWS. Principalmente, criaremos um usuário IAM, funções e políticas.
Configurar um IdP que confia no Azure AD
Para configurar seu IdP confiando no Azure AD, conclua as seguintes etapas:
- No console IAM, escolha Provedores de identidade no painel de navegação.
- Escolha Adicionar provedor.
- Escolha Tipo de Fornecedor, escolha SAML.
- Escolha Nome do Provedor, entrar
AzureADAthenaProvider
. - Escolha Documento de metadados, carregue o arquivo baixado do Portal do Azure.
- Escolha Adicionar provedor.
Configurar um usuário do IAM com permissão de função de leitura
Para configurar seu usuário IAM, conclua as seguintes etapas:
- No console IAM, escolha Utilizadores no painel de navegação.
- Escolha Adicionar usuário.
- Escolha nome de usuário, entrar
ReadRoleUser
. - Escolha Tipo de acesso, selecione Acesso programático.
- Escolha Próximo: Permissões.
- Escolha Definir permissões, escolha Anexe políticas existentes diretamente.
- Escolha Criar política.
- Selecionar JSON e insira a seguinte política, que dá acesso de leitura para enumerar funções no IAM:
- Escolha Próximo: Tags.
- Escolha Próximo: Revisão.
- Escolha Nome, entrar
readrolepolicy
. - Escolha Criar política.
- No Adicionar usuário guia, procure e escolha a função
readrole
. - Escolha Próximo: tags.
- Escolha Próximo: Revisão.
- Escolha Criar usuário.
- Baixe o arquivo .csv contendo o ID da chave de acesso e a chave de acesso secreta.
Nós os usamos ao configurar o provisionamento automático do Azure AD.
Configure uma função e políticas do IAM para cada grupo de trabalho do Athena
Para configurar funções e políticas do IAM para seus grupos de trabalho do Athena, conclua as seguintes etapas:
- No console IAM, escolha Setores no painel de navegação.
- Escolha Criar função.
- Escolha Selecione o tipo de entidade confiável, escolha Federação SAML 2.0.
- Escolha Provedor SAML, escolha AzureADAthenaProvider.
- Escolha Permitir acesso programático e ao Console de gerenciamento da AWS.
- Debaixo Condição, escolha Chave.
- Selecionar SAML:aud.
- Escolha Condição, selecione StringEquals.
- Escolha Valor, entrar
http://localhost/athena
. - Escolha Próximo: Permissões.
- Escolha Criar política.
- Escolha JSON e insira a seguinte política (forneça o ARN do seu grupo de trabalho):
A política concede acesso total ao grupo de trabalho Athena. É baseado no política gerenciada pela AWS AmazonAthenaFullAccess
e políticas de exemplo de grupo de trabalho.
- Escolha Próximo: Tags.
- Escolha Próximo: Revisão.
- Escolha Nome, entrar
athenaworkgroup1policy
. - Escolha Criar política.
- No Criar função guia, pesquise por
athenaworkgroup1policy
e selecione a política. - Escolha Próximo: Tags.
- Escolha Próximo: Revisão.
- Escolha Criar função.
- Escolha Nome, entrar
athenaworkgroup1role
. - Escolha Criar função.
Configurar o acesso do usuário no Azure AD
Nesta seção, configuraremos o provisionamento automático e atribuiremos usuários ao aplicativo do portal do Microsoft Azure.
Configurar o provisionamento automático de funções do IAM
Para configurar o provisionamento automático de funções do IAM, conclua as seguintes etapas:
- Entre no Portal do Azure com credenciais de administrador global do Azure AD.
- Escolha Azure Active Directory.
- Escolha Aplicações Enterprise e escolha Aplicativo Athena.
- Escolha Provisionar contas de usuário.
- No Provisioning seção, escolha COMECE AGORA.
- Escolha Modo de provisionamento, escolha Automático.
- Expandir Credenciais de administrador e povoar segredo do cliente e Token secreto com o ID da chave de acesso e a chave de acesso secreta de
ReadRoleUser
, Respectivamente. - Escolha Testar Conexão e Salvar.
- Escolha Iniciar provisionamento.
O ciclo inicial pode levar algum tempo para ser concluído, após o qual as funções do IAM são preenchidas no Azure AD.
Configurar o acesso do usuário à função do grupo de trabalho Athena
Para configurar o acesso do usuário à função do grupo de trabalho, conclua as seguintes etapas:
- Entre para Portal do Azure com credenciais de administrador global do Azure AD.
- Escolha Azure Active Directory.
- Escolha Aplicações Enterprise e escolha Aplicativo Athena.
- Escolha Atribuir usuários e grupos e Adicionar usuário/grupo.
- Debaixo Usuários e grupos, selecione o grupo ao qual deseja atribuir a permissão do Athena. Para esta postagem, usamos
athena-admin-adgroup
; alternativamente, você pode selecionar user1. - Escolha Selecionar.
- Escolha Selecione um papel, selecione a função
athenaworkgroup1role
. - Escolha Selecionar.
- Escolha Atribuir.
Acessar Atena
Nesta seção, demonstraremos como acessar o Athena a partir do console AWS e da ferramenta de desenvolvedor SQL Workbench/J
Acesse o Athena usando o portal Microsoft My Apps baseado na web
Para usar o portal Microsoft My Apps para acessar o Athena, conclua as seguintes etapas:
- Entre para Portal do Azure com credenciais de administrador global do Azure AD.
- Escolha Azure Active Directory
- Escolha Aplicações Enterprise e escolha Aplicativo Athena.
- Escolha
- Propriedades.
- Copie o valor para URL de acesso do usuário.
- Abra um navegador da Web e insira a URL.
O link redireciona você para uma página de login do Azure.
- Faça login com as credenciais do usuário local.
Você é redirecionado para o Console de gerenciamento da AWS.
Acesse o Athena usando o SQL Workbench/J
Em organizações altamente regulamentadas, os usuários internos não têm permissão para usar o console para acessar o Athena. Nesses casos, você pode usar o SQL Workbench/J, uma ferramenta de código aberto que permite a conectividade com o Athena usando um driver JDBC.
- Baixe a ultima Driver Athena JDBC (escolha o driver apropriado com base na sua versão do Java).
- Baixe e instale SQL Workbench / J.
- Abra o SQL Workbench/J.
- No Envie o menu, escolha Conectar Janela.
- Escolha Gerenciar motoristas.
- Escolha Nome, digite um nome para o seu driver.
- Navegue até o local da pasta onde você baixou e descompactou o driver.
- Escolha OK.
Agora que configuramos o driver Athena, é hora de conectar ao Athena. Você precisa preencher a URL de conexão, nome de usuário e senha.
Use a seguinte string de conexão para se conectar ao Athena com uma conta de usuário sem MFA (forneça os valores coletados anteriormente na postagem):
Para se conectar usando uma conta de usuário com MFA habilitada, use o navegador Azure AD Credentials Provider. Você precisa construir a URL de conexão e preencher o nome de usuário Nome de usuário e senha
Use a seguinte string de conexão para se conectar ao Athena com uma conta de usuário com MFA habilitada (forneça os valores coletados anteriormente):
Substitua o texto em vermelho pelos detalhes coletados anteriormente no artigo.
Quando a conexão for estabelecida, você poderá executar consultas no Athena.
Configuração de proxy
Se você estiver se conectando ao Athena por meio de um servidor proxy, verifique se o servidor proxy permite a porta 444. A API de streaming do conjunto de resultados usa a porta 444 no servidor Athena para comunicações de saída. Colocou o ProxyHost
propriedade para o endereço IP ou nome do host de seu servidor proxy. Colocou o ProxyPort
propriedade para o número da porta TCP que o servidor proxy usa para atender as conexões do cliente. Veja o seguinte código:
Resumo
Nesta postagem, configuramos a federação do IAM com o Azure AD conectado ao AD local e configuramos o acesso granular a um grupo de trabalho do Athena. Também vimos como acessar o Athena por meio do console usando o portal da Web Microsoft My Apps e a ferramenta SQL Workbench/J. Também discutimos como a conexão funciona por meio de um proxy. A mesma infraestrutura de federação também pode ser aproveitada para a configuração do driver ODBC. Você também pode usar as instruções nesta postagem para configurar o IdP do Azure baseado em SAML para habilitar o acesso federado aos grupos de trabalho do Athena.
Sobre o autor
Niraj Kumar é o principal gerente técnico de contas para serviços financeiros na AWS, onde ajuda os clientes a projetar, arquitetar, criar, operar e oferecer suporte a cargas de trabalho na AWS de maneira segura e robusta. Ele tem mais de 20 anos de experiência diversificada em TI nas áreas de arquitetura corporativa, nuvem e virtualização, segurança, IAM, arquitetura de soluções e sistemas e tecnologias de informação. Em seu tempo livre, ele gosta de mentoring, coaching, trekking, assistir documentários com seu filho e ler algo diferente todos os dias.
- '
- &
- 100
- 11
- 420
- 7
- 9
- Acesso
- Conta
- Açao Social
- ativo
- Active Directory
- Ad
- admin
- Todos os Produtos
- Permitindo
- Amazon
- análise
- api
- app
- aplicações
- Aplicativos
- arquitetura
- artigo
- Autenticação
- AWS
- Azul
- Blog
- navegador
- construir
- casos
- Na nuvem
- código
- Comunicações
- da conexão
- Coneções
- Conectividade
- consentimento
- Covid-19
- Credenciais
- multi-plataforma
- Clientes
- dados,
- lago data
- dia
- dc
- Design
- Developer
- documentários
- motorista
- Empreendimento
- vasta experiência
- Campos
- financeiro
- serviços financeiros
- Gratuito
- cheio
- Global
- subsídios
- Grupo
- Como funciona o dobrador de carta de canal
- Como Negociar
- HTTPS
- IAM
- Dados de identificação:
- INFORMAÇÕES
- Infraestrutura
- interativo
- IP
- Endereço IP
- IT
- Java
- Chave
- mais recente
- Nível
- LINK
- local
- localização
- olhou
- de grupos
- MFA
- Microsoft
- Móvel Esteira
- Navegação
- Office 365
- organizações
- Senha
- plug-in
- políticas
- Privacidade
- Portal
- Diretor
- propriedade
- procuração
- público
- Leitura
- redirecionar
- Requisitos
- recurso
- Execute
- Pesquisar
- segurança
- Serviços
- conjunto
- simples
- eles são
- SQL
- Declaração
- armazenamento
- de streaming
- tudo incluso
- sucesso
- ajuda
- suportes
- sistemas
- Dados Técnicos:
- Tecnologias
- temporário
- tempo
- token
- tráfego
- usuários
- valor
- web
- navegador web
- de gestão de documentos
- trabalho
- anos