Amazon Atena este un serviciu interactiv de interogare care facilitează analiza directă a datelor în Serviciul Amazon de stocare simplă (Amazon S3) folosind SQL standard. Echipele de operare în cloud pot folosi Gestionarea identității și accesului AWS (IAM) să gestioneze central accesul la Athena. Acest lucru simplifică administrarea permițând unei echipe de conducere să controleze accesul utilizatorilor la grupurile de lucru Athena dintr-un Azure AD gestionat central, conectat la un Active Directory local. Această configurare reduce experiența generală a echipelor de operare în cloud atunci când gestionează utilizatorii IAM. Athena acceptă federarea cu Active Directory Federation Service (ADFS), PingFederate, Okta și federația Microsoft Azure Active Directory (Azure AD).
Această postare de blog ilustrează cum să configurați federația AWS IAM cu Azure AD conectat la AD local și să configurați accesul la nivel de grup de lucru Athena pentru diferiți utilizatori. Vom acoperi două scenarii:
- Utilizatori și grupuri gestionate Azure AD și AD local.
- Utilizatori și grupuri gestionate de Active Directory on-prem sincronizate cu Azure AD.
Nu acoperim cum să configurați sincronizarea între AD local și Azure AD cu ajutorul Azure AD connect. Pentru mai multe informații despre cum să integrați Azure AD cu un AWS Managed AD , consultați Activați Office 365 cu AWS Managed Microsoft AD fără sincronizarea parolei utilizatorului și cum să integrați Azure AD cu un AD local , consultați articolul Microsoft Instalare personalizată a Azure Active Directory Connect.
Prezentare generală a soluțiilor
Această soluție vă ajută să configurați federarea IAM cu Azure AD conectat la AD local și să configurați accesul la nivel de grup de lucru Athena pentru utilizatori. Puteți controla accesul la grupul de lucru fie de către un grup AD local, fie de către un grup Azure AD. Soluția constă din patru secțiuni:
- Configurați Azure AD ca furnizor de identitate (IdP):
- Configurați Azure AD ca IdP SAML pentru o aplicație AWS cu un singur cont.
- Configurați aplicația Azure AD cu permisiuni delegate.
- Configurați-vă IAM IdP și rolurile:
- Configurați un IdP de încredere în Azure AD.
- Configurați un utilizator IAM cu permisiunea de citire a rolului.
- Configurați un rol IAM și politici pentru fiecare grup de lucru Athena.
- Configurați accesul utilizatorului în Azure AD:
- Configurați furnizarea automată a rolurilor IAM.
- Configurați accesul utilizatorului la rolul grupului de lucru Athena.
- Acces la Athena:
- Accesați Athena utilizând Microsoft bazat pe web Portalul My Apps.
- Accesați Athena folosind SQL Workbench/J un instrument de interogare SQL gratuit, independent de DBMS, multiplatformă.
Următoarea diagramă ilustrează arhitectura soluției.
Fluxul de lucru al soluției include următorii pași:
- Stația de lucru pentru dezvoltatori se conectează la Azure AD printr-un driver SQL Workbench/j JDBC Athena pentru a solicita un jeton SAML (proces OAuth în doi pași).
- Azure AD trimite traficul de autentificare înapoi la local prin intermediul unui agent de trecere Azure AD sau ADFS.
- Agentul de trecere Azure AD sau ADFS se conectează la DC local și autentifică utilizatorul.
- Agentul de trecere sau ADFS trimite un simbol de succes către Azure AD.
- Azure AD construiește un token SAML care conține rolul IAM atribuit și îl trimite clientului.
- Clientul se conectează la Serviciul AWS Security Token (AWS STS) și prezintă jetonul SAML pentru a-și asuma rolul Athena și generează acreditări temporare.
- AWS STS trimite acreditări temporare către client.
- Clientul folosește acreditările temporare pentru a se conecta la Athena.
Cerințe preliminare
Trebuie să îndepliniți următoarele cerințe înainte de a configura soluția:
- Pe partea Azure AD, completați următoarele:
- Configurați serverul Azure AD Connect și sincronizați-l cu AD local
- Configurați transferul Azure AD sau federația Microsoft ADFS între Azure AD și AD local
- Creați trei utilizatori (
user1
,user2
,user3
) și trei grupuri (athena-admin-adgroup
,athena-datascience-adgroup
,athena-developer-adgroup
) pentru trei grupuri de lucru Athena respective
- Pe partea Athena, creați trei grupuri de lucru Athena:
athena-admin-workgroup
,athena-datascience-workgroup
,athena-developer-workgroup
Pentru mai multe informații despre utilizarea exemplelor de grupuri de lucru Athena, consultați Un lac public de date pentru analiza datelor despre COVID-19.
Configurați Azure AD
În această secțiune vom acoperi detaliile de configurare Azure AD pentru Athena în abonamentul Microsoft Azure. În principal, vom înregistra o aplicație, vom configura federația, vom delega permisiunea aplicației și vom genera secretul aplicației.
Setați Azure AD ca IdP SAML pentru o aplicație AWS cu un singur cont
Pentru a configura Azure AD ca IdP SAML, parcurgeți următorii pași:
- Conectați-vă la Portalul Azure cu acreditările de administrator global Azure AD.
- Alege Directory Active Azure.
- Alege Aplicații pentru întreprinderi.
- Alege Aplicatie noua.
- Caută
Amazon
în bara de căutare. - Alege Acces la un singur cont AWS.
- Pentru nume, introduce
Athena-App
. - Alege Crea.
- În Noțiuni de bază secțiune, sub Configurați conectarea unică, alege Incepe.
- Pentru Selectați o metodă de conectare unică, alege SAML.
- Pentru Configurație de bază SAML, alege Edit.
- Pentru Identificator (ID entitate), introduce
https://signin.aws.amazon.com/saml#1
. - Alege Economisiți.
- În Certificat de semnare SAML, Pentru XML pentru metadatele federației, alege Descarcă.
Acest fișier este necesar pentru a vă configura IdP-ul IAM în secțiunea următoare. Salvați acest fișier pe computerul local pentru a-l utiliza mai târziu când configurați IAM pe AWS.
Configurați aplicația Azure AD cu permisiuni delegate
Pentru a configura aplicația Azure AD, parcurgeți următorii pași:
- Alege Directory Active Azure.
- Alege Înregistrările aplicației și toate aplicațiile.
- Căutați și alegeți Aplicația Athena.
- Notați valorile pentru ID aplicație (client). și ID director (chiriaș)..
Aveți nevoie de aceste valori în conexiunea JDBC când vă conectați la Athena.
- În Permisiuni API, alege Adăugați o permisiune.
- Alege Microsoft Graph și Permisiuni delegate.
- Pentru Selectați permisiunile, caută
user.read
. - Pentru Utilizator, alege Utilizator.Citește.
- Alege Adăugați permisiunea.
- Alege Acordați consimțământul administratorului și Da.
- Alege Autentificare și Adăugați o platformă.
- Alege Aplicații mobile și desktop.
- În URI de redirecționare personalizate, introduce
http://localhost/athena
. - Alege Configurare.
- Alege Certificate și secrete și Secretul noului client.
- Introduceți o descriere.
- Pentru expiră, alege 24 luni.
- Copiați valoarea secretă a clientului pe care să o utilizați la configurarea conexiunii JDBC.
Configurați IDP și rolurile IAM
În această secțiune vom acoperi configurația IAM în contul AWS. În principal, vom crea un utilizator IAM, roluri și politici.
Configurați un IdP de încredere în Azure AD
Pentru a configura IdP cu încredere în Azure AD, parcurgeți următorii pași:
- Pe consola IAM, alegeți Furnizorii de identitate în panoul de navigare.
- Alege Adăugați furnizorul.
- Pentru Tipul furnizorului, alege SAML.
- Pentru Numele furnizorului, introduce
AzureADAthenaProvider
. - Pentru Document de metadate, încărcați fișierul descărcat de pe Azure Portal.
- Alege Adăugați furnizorul.
Configurați un utilizator IAM cu permisiunea de citire a rolului
Pentru a vă configura utilizatorul IAM, parcurgeți următorii pași:
- Pe consola IAM, alegeți Utilizatori în panoul de navigare.
- Alege Adăugați utilizator.
- Pentru nume utilizator, introduce
ReadRoleUser
. - Pentru Tip de acces, Selectați Acces programatic.
- Alege Următorul: Permisiuni.
- Pentru Setați permisiunile, alege Atașați direct politicile existente.
- Alege Creare politică.
- Selectați JSON și introduceți următoarea politică, care oferă acces de citire pentru a enumera rolurile în IAM:
- Alege Următorul: Etichete.
- Alege Următorul: Recapitulare.
- Pentru Nume si Prenume, introduce
readrolepolicy
. - Alege Creare politică.
- Pe Adăugați utilizator fila, căutați și alegeți rolul
readrole
. - Alege Următorul: etichete.
- Alege Următorul: Recapitulare.
- Alege Creaza utilizator.
- Descărcați fișierul .csv care conține ID-ul cheii de acces și cheia secretă de acces.
Le folosim atunci când configurăm furnizarea automată Azure AD.
Configurați un rol IAM și politici pentru fiecare grup de lucru Athena
Pentru a configura roluri și politici IAM pentru grupurile de lucru Athena, parcurgeți următorii pași:
- Pe consola IAM, alegeți Roluri în panoul de navigare.
- Alege Creare rol.
- Pentru Selectați tipul de entitate de încredere, alege Federația SAML 2.0.
- Pentru Furnizorul SAML, alege AzureADAthenaProvider.
- Alege Permiteți accesul programatic și AWS Management Console.
- În Condiție, alege Cheie.
- Selectați SAML:aud.
- Pentru Condiție, Selectați StringEquals.
- Pentru Valoare, introduce
http://localhost/athena
. - Alege Următorul: Permisiuni.
- Alege Creare politică.
- Alege JSON și introduceți următoarea politică (furnizați ARN-ul grupului dvs. de lucru):
Politica oferă acces deplin la grupul de lucru Athena. Se bazează pe Politica gestionată de AWS AmazonAthenaFullAccess
și exemple de politici ale grupului de lucru.
- Alege Următorul: Etichete.
- Alege Următorul: Recapitulare.
- Pentru Nume si Prenume, introduce
athenaworkgroup1policy
. - Alege Creare politică.
- Pe Creare rol filă, căutați
athenaworkgroup1policy
și selectați politica. - Alege Următorul: Etichete.
- Alege Următorul: Recapitulare.
- Alege Creare rol.
- Pentru Nume si Prenume, introduce
athenaworkgroup1role
. - Alege Creare rol.
Configurați accesul utilizatorului în Azure AD
În această secțiune vom configura aprovizionarea automată și vom aloca utilizatorii aplicației din portalul Microsoft Azure.
Configurați furnizarea automată a rolurilor IAM
Pentru a configura furnizarea automată a rolurilor IAM, parcurgeți următorii pași:
- Conectați-vă la Portalul Azure cu acreditările de administrator global Azure AD.
- Alege Directory Active Azure.
- Alege Aplicații Enterprise Și alegeți Aplicația Athena.
- Alege Furnizați conturi de utilizator.
- În provizionare secțiune, pentru a alege Incepe.
- Pentru Mod de aprovizionare, alege Automat.
- Extinde Acreditări de administrator și populează clientsecret și Jeton secret cu ID-ul cheii de acces și cheia secretă de acces ale
ReadRoleUser
, respectiv. - Alege Test de conexiune și Economisiți.
- Alege Începeți aprovizionarea.
Finalizarea ciclului inițial poate dura ceva timp, după care rolurile IAM sunt populate în Azure AD.
Configurați accesul utilizatorului la rolul grupului de lucru Athena
Pentru a configura accesul utilizatorului la rolul grupului de lucru, parcurgeți următorii pași:
- Înregistrează-te la Portalul Azure cu acreditările de administrator global Azure AD.
- Alege Directory Active Azure.
- Alege Aplicații Enterprise Și alegeți Aplicația Athena.
- Alege Atribuiți utilizatori și grupuri și Adăugați utilizator/grup.
- În Utilizatori și grupuri, selectați grupul căruia doriți să îi atribuiți permisiunea Athena. Pentru această postare, folosim
athena-admin-adgroup
; alternativ, puteți selecta user1. - Alege Selectați.
- Pentru Selectați un rol, selectați rolul
athenaworkgroup1role
. - Alege Selectați.
- Alege Atribui.
Acces la Athena
În această secțiune vom demonstra cum să accesați Athena din consola AWS și instrumentul de dezvoltare SQL Workbench/J
Accesați Athena utilizând portalul web Microsoft My Apps
Pentru a utiliza portalul Microsoft My Apps pentru a accesa Athena, parcurgeți următorii pași:
- Înregistrează-te la Portalul Azure cu acreditările de administrator global Azure AD.
- Alege Directory Active Azure
- Alege Aplicații Enterprise Și alegeți Aplicația Athena.
- Alege
- Proprietăţi.
- Copiați valoarea pentru Adresa URL de acces utilizator.
- Deschideți un browser web și introduceți adresa URL.
Linkul vă redirecționează către o pagină de conectare Azure.
- Conectați-vă cu datele de conectare ale utilizatorului local.
Sunteți redirecționat către Consola de administrare AWS.
Accesați Athena folosind SQL Workbench/J
În organizațiile foarte reglementate, utilizatorii interni nu au voie să folosească consola pentru a accesa Athena. În astfel de cazuri, puteți utiliza SQL Workbench/J, un instrument open-source care permite conexiunea la Athena folosind un driver JDBC.
- Descărcați ultimul Driver Athena JDBC (alegeți driverul potrivit în funcție de versiunea dvs. Java).
- Descărcați și instalați SQL Workbench/J.
- Deschideți SQL Workbench/J.
- Pe Fișier meniu, alegeți Fereastra de conectare.
- Alege Gestionați șoferii.
- Pentru Nume si Prenume, introduceți un nume pentru șoferul dvs.
- Navigați la locația folderului de unde ați descărcat și dezarhivat driverul.
- Alege OK.
Acum că am configurat driverul Athena, este timpul să ne conectăm la Athena. Trebuie să completați adresa URL a conexiunii, numele de utilizator și parola.
Utilizați următorul șir de conexiune pentru a vă conecta la Athena cu un cont de utilizator fără MFA (furnizați valorile colectate mai devreme în postare):
Pentru a vă conecta utilizând un cont de utilizator cu MFA activat, utilizați browserul Azure AD Credentials Provider. Trebuie să construiți adresa URL de conectare și să completați numele de utilizator Nume de utilizator și parola
Utilizați următorul șir de conexiune pentru a vă conecta la Athena cu un cont de utilizator care are MFA activat (furnizați valorile pe care le-ați colectat mai devreme):
Înlocuiți textul în roșu cu detaliile colectate mai devreme în articol.
Când conexiunea este stabilită, puteți rula interogări împotriva Athena.
Configurare proxy
Dacă vă conectați la Athena printr-un server proxy, asigurați-vă că serverul proxy permite portul 444. Setul de rezultate API-ul de streaming folosește portul 444 pe serverul Athena pentru comunicații de ieșire. Seteaza ProxyHost
proprietate la adresa IP sau numele de gazdă al serverului dumneavoastră proxy. Seteaza ProxyPort
proprietate la numărul portului TCP pe care serverul proxy îl folosește pentru a asculta conexiunile client. Vezi următorul cod:
Rezumat
În această postare, am configurat federația IAM cu Azure AD conectat la AD local și am configurat accesul granular la un grup de lucru Athena. De asemenea, am analizat cum să accesăm Athena prin consolă folosind portalul web Microsoft My Apps și instrumentul SQL Workbench/J. Am discutat, de asemenea, cum funcționează conexiunea printr-un proxy. Aceeași infrastructură de federație poate fi, de asemenea, utilizată pentru configurarea driverului ODBC. De asemenea, puteți utiliza instrucțiunile din această postare pentru a configura Azure IdP bazat pe SAML pentru a activa accesul federalizat la Athena Workgroups.
Despre autor
Niraj Kumar este director tehnic principal de cont pentru servicii financiare la AWS, unde îi ajută pe clienți să proiecteze, să proiecteze, să construiască, să opereze și să susțină sarcinile de lucru pe AWS într-o manieră sigură și robustă. Are peste 20 de ani de experiență IT diversă în domeniile arhitecturii de întreprindere, cloud și virtualizare, securitate, IAM, arhitectură de soluții și sisteme și tehnologii informaționale. În timpul liber, îi place mentorat, coaching, drumeții, vizionează documentare cu fiul său și citește ceva diferit în fiecare zi.
- '
- &
- 100
- 11
- 420
- 7
- 9
- acces
- Cont
- Acțiune
- activ
- Active Directory
- Ad
- admin
- TOATE
- Permiterea
- Amazon
- analiză
- api
- aplicaţia
- aplicatii
- Apps
- arhitectură
- articol
- Autentificare
- AWS
- Azuriu
- Blog
- browser-ul
- construi
- cazuri
- Cloud
- cod
- Comunicații
- conexiune
- Conexiuni
- Suport conectare
- consimţământ
- Covid-19
- scrisori de acreditare
- cross-platform
- clienţii care
- de date
- Lacul de date
- zi
- dc
- Amenajări
- Dezvoltator
- documentare
- şofer
- Afacere
- experienţă
- Domenii
- financiar
- Servicii financiare
- Gratuit
- Complet
- Caritate
- subvenții
- grup
- Cum
- Cum Pentru a
- HTTPS
- IAM
- Identitate
- informații
- Infrastructură
- interactiv
- IP
- Adresa IP
- IT
- Java
- Cheie
- Ultimele
- Nivel
- LINK
- local
- locaţie
- uitat
- administrare
- AMF
- Microsoft
- Mobil
- Navigare
- Oficiul pentru 365
- organizații
- Parolă
- conecteaza
- Politicile
- Politica
- Portal
- Principal
- proprietate
- împuternicit
- public
- Citind
- redirecționa
- Cerinţe
- resursă
- Alerga
- Caută
- securitate
- Servicii
- set
- simplu
- fiu
- SQL
- Declarație
- depozitare
- de streaming
- abonament
- succes
- a sustine
- Sprijină
- sisteme
- Tehnic
- Tehnologii
- temporar
- timp
- semn
- trafic
- utilizatorii
- valoare
- web
- browser web
- flux de lucru
- fabrică
- ani