Amazonas Athena er en interaktiv forespørgselstjeneste, der gør det nemmere at analysere data direkte i Amazon Simple Storage Service (Amazon S3) ved hjælp af standard SQL. Cloud-driftsteams kan bruge AWS identitets- og adgangsstyring (IAM) federation til centralt at administrere adgangen til Athena. Dette forenkler administrationen ved at tillade et styringsteam at kontrollere brugeradgang til Athena-arbejdsgrupper fra en centralt administreret Azure AD, der er forbundet til en lokal Active Directory. Denne opsætning reducerer overheadoplevelsen for cloud-driftsteams, når de administrerer IAM-brugere. Athena understøtter føderation med Active Directory Federation Service (ADFS), PingFederate, Okta og Microsoft Azure Active Directory (Azure AD) føderation.
Dette blogindlæg illustrerer, hvordan man konfigurerer AWS IAM-føderation med Azure AD forbundet til lokal AD og konfigurerer adgang til Athena-arbejdsgruppeniveau for forskellige brugere. Vi vil dække to scenarier:
- Azure AD-administrerede brugere og grupper og on-premises AD.
- Lokale Active Directory-administrerede brugere og grupper synkroniseret til Azure AD.
Vi dækker ikke, hvordan du opsætter synkronisering mellem lokal AD og Azure AD ved hjælp af Azure AD connect. For flere oplysninger om, hvordan du integrerer Azure AD med en AWS-administreret AD, se Aktiver Office 365 med AWS Managed Microsoft AD uden brugeradgangskodesynkronisering og hvordan du integrerer Azure AD med en lokal AD , se Microsoft-artiklen Brugerdefineret installation af Azure Active Directory Connect.
Løsningsoversigt
Denne løsning hjælper dig med at konfigurere IAM-føderation med Azure AD forbundet til lokal AD og konfigurere adgang til Athena-arbejdsgruppeniveau for brugere. Du kan kontrollere adgangen til arbejdsgruppen af enten en lokal AD-gruppe eller Azure AD-gruppe. Løsningen består af fire sektioner:
- Konfigurer Azure AD som din identitetsudbyder (IdP):
- Konfigurer Azure AD som din SAML IdP for en AWS-enkeltkonto-app.
- Konfigurer Azure AD-appen med delegerede tilladelser.
- Konfigurer din IAM IdP og roller:
- Konfigurer en IdP-tillidsfuld Azure AD.
- Konfigurer en IAM-bruger med læserolletilladelse.
- Opsæt en IAM-rolle og -politikker for hver Athena-arbejdsgruppe.
- Konfigurer brugeradgang i Azure AD:
- Konfigurer automatisk IAM-rolleklargøring.
- Konfigurer brugeradgang til Athena-arbejdsgrupperollen.
- Få adgang til Athena:
- Få adgang til Athena ved hjælp af det webbaserede Microsoft Mine apps portal.
- Få adgang til Athena vha SQL Workbench/J et gratis, DBMS-uafhængigt SQL-forespørgselsværktøj på tværs af platforme.
Følgende diagram illustrerer løsningens arkitektur.
Løsningsarbejdsgangen omfatter følgende trin:
- Udviklerarbejdsstationen opretter forbindelse til Azure AD via en SQL Workbench/j JDBC Athena-driver for at anmode om et SAML-token (to-trins OAuth-proces).
- Azure AD sender godkendelsestrafik tilbage til det lokale via en Azure AD pass-through-agent eller ADFS.
- Azure AD pass-through-agenten eller ADFS opretter forbindelse til den lokale DC og godkender brugeren.
- Pass-through-agenten eller ADFS sender et succestoken til Azure AD.
- Azure AD konstruerer et SAML-token, der indeholder den tildelte IAM-rolle, og sender det til klienten.
- Klienten opretter forbindelse til AWS Security Token Service (AWS STS) og præsenterer SAML-tokenet for at påtage sig Athena-rollen og genererer midlertidige legitimationsoplysninger.
- AWS STS sender midlertidige legitimationsoplysninger til klienten.
- Klienten bruger de midlertidige legitimationsoplysninger til at oprette forbindelse til Athena.
Forudsætninger
Du skal opfylde følgende krav, før du konfigurerer løsningen:
- På Azure AD-siden skal du fuldføre følgende:
- Konfigurer Azure AD Connect-serveren og synkroniser med lokal AD
- Konfigurer Azure AD pass-through- eller Microsoft ADFS-føderationen mellem Azure AD og on-premises AD
- Opret tre brugere (
user1
,user2
,user3
) og tre grupper (athena-admin-adgroup
,athena-datascience-adgroup
,athena-developer-adgroup
) for tre respektive Athena-arbejdsgrupper
- På Athena-siden skal du oprette tre Athena-arbejdsgrupper:
athena-admin-workgroup
,athena-datascience-workgroup
,athena-developer-workgroup
For mere information om brug af eksempler på Athena-arbejdsgrupper, se En offentlig datasø til analyse af COVID-19-data.
Konfigurer Azure AD
I dette afsnit vil vi dække Azure AD-konfigurationsdetaljer for Athena i Microsoft Azure-abonnement. Hovedsageligt vil vi registrere en app, konfigurere føderation, delegere app-tilladelse og generere app-hemmelighed.
Indstil Azure AD som SAML IdP for en AWS-enkeltkonto-app
For at konfigurere Azure AD som din SAML IdP skal du udføre følgende trin:
- Log ind på Azure Portal med Azure AD globale administratorlegitimationsoplysninger.
- Vælg Azure Active Directory.
- Vælg Enterprise applikationer.
- Vælg Ny ansøgning.
- Søg efter
Amazon
i søgefeltet. - Vælg AWS enkeltkontoadgang.
- Til navn, indtaste
Athena-App
. - Vælg Opret.
- I Kom godt i gang afsnit under Opsæt single sign-on, vælg Kom i gang.
- Til Vælg en enkelt log-on-metode, vælg SAML.
- Til Grundlæggende SAML-konfiguration, vælg Redigere.
- Til Identifikator (enheds-id), gå ind
https://signin.aws.amazon.com/saml#1
. - Vælg Gem.
- Under SAML-signeringscertifikat, For Federation Metadata XML, vælg Hent.
Denne fil er påkrævet for at konfigurere din IAM IdP i næste afsnit. Gem denne fil på din lokale maskine til brug senere, når du konfigurerer IAM på AWS.
Konfigurer din Azure AD-app med delegerede tilladelser
For at konfigurere din Azure AD-app skal du udføre følgende trin:
- Vælg Azure Active Directory.
- Vælg App-registreringer , Alle applikationer.
- Søg efter og vælg Athena-app.
- Bemærk værdierne for Program (klient) ID , Directory (lejer) ID.
Du skal bruge disse værdier i JDBC-forbindelsen, når du opretter forbindelse til Athena.
- Under API-tilladelser, vælg Tilføj en tilladelse.
- Vælg Microsoft Graph , Delegerede tilladelser.
- Til Vælg tilladelser, søge efter
user.read
. - Til Bruger, vælg Bruger.Læs.
- Vælg Tilføj tilladelse.
- Vælg Giv administratorsamtykke , Ja.
- Vælg Godkendelse , Tilføj en platform.
- Vælg Mobile og Desktop applikationer.
- Under Tilpassede omdirigerings-URI'er, gå ind
http://localhost/athena
. - Vælg Konfigurer .
- Vælg Certifikater & hemmeligheder , Ny klienthemmelighed.
- Indtast en beskrivelse.
- Til Udløber, vælg 24 måneder.
- Kopiér den klienthemmelige værdi, der skal bruges, når JDBC-forbindelsen konfigureres.
Konfigurer IAM IdP og roller
I dette afsnit vil vi dække IAM-konfiguration i AWS-konto. Vi vil primært oprette en IAM-bruger, roller og politikker.
Konfigurer en IdP-tillidsfuld Azure AD
For at konfigurere din IdP-tillidsfulde Azure AD skal du udføre følgende trin:
- På IAM-konsollen skal du vælge Identitetsudbydere i navigationsruden.
- Vælg Tilføj udbyder.
- Til Udbydertype, vælg SAML.
- Til Navn på udbyder, gå ind
AzureADAthenaProvider
. - Til Metadata dokument, upload filen, der er downloadet fra Azure Portal.
- Vælg Tilføj udbyder.
Konfigurer en IAM-bruger med læserolletilladelse
For at konfigurere din IAM-bruger skal du udføre følgende trin:
- På IAM-konsollen skal du vælge Brugere i navigationsruden.
- Vælg Tilføj bruger.
- Til brugernavn, gå ind
ReadRoleUser
. - Til Adgangstype, Vælg Programatisk adgang.
- Vælg Næste: Tilladelser.
- Til Angiv tilladelser, vælg Vedhæft eksisterende politikker direkte.
- Vælg Lav politik.
- Type JSON og indtast følgende politik, som giver læseadgang til at opregne roller i IAM:
- Vælg Næste: Mærker.
- Vælg Næste: Anmeldelse.
- Til Navn, gå ind
readrolepolicy
. - Vælg Lav politik.
- På Tilføj bruger fanen, søg efter og vælg rollen
readrole
. - Vælg Næste: tags.
- Vælg Næste: Anmeldelse.
- Vælg Opret bruger.
- Download .csv-filen, der indeholder adgangsnøgle-id'et og den hemmelige adgangsnøgle.
Vi bruger disse, når vi konfigurerer Azure AD automatisk klargøring.
Opsæt en IAM-rolle og -politikker for hver Athena-arbejdsgruppe
For at konfigurere IAM-roller og -politikker for dine Athena-arbejdsgrupper skal du udføre følgende trin:
- På IAM-konsollen skal du vælge roller i navigationsruden.
- Vælg Opret rolle.
- Til Vælg typen af betroet enhed, vælg SAML 2.0 forbund.
- Til SAML udbyder, vælg AzureADAthenaProvider.
- Vælg Tillad programmatisk og AWS Management Console-adgang.
- Under Betingelse, vælg Nøgle.
- Type SAML:aud.
- Til Betingelse, Vælg StringEquals.
- Til Værdi, gå ind
http://localhost/athena
. - Vælg Næste: Tilladelser.
- Vælg Lav politik.
- Vælg JSON og indtast følgende politik (giv din arbejdsgruppes ARN):
Politikken giver fuld adgang til Athena-arbejdsgruppen. Det er baseret på AWS-styret politik AmazonAthenaFullAccess
, arbejdsgruppeeksempler på politikker.
- Vælg Næste: Mærker.
- Vælg Næste: Anmeldelse.
- Til Navn, gå ind
athenaworkgroup1policy
. - Vælg Lav politik.
- På Opret rolle fane, søg efter
athenaworkgroup1policy
og vælg politikken. - Vælg Næste: Mærker.
- Vælg Næste: Anmeldelse.
- Vælg Opret rolle.
- Til Navn, gå ind
athenaworkgroup1role
. - Vælg Opret rolle.
Konfigurer brugeradgang i Azure AD
I dette afsnit vil vi konfigurere automatisk klargøring og tildele brugere til app fra Microsoft Azure Portal.
Konfigurer automatisk IAM-rolleklargøring
For at konfigurere automatisk IAM-rolleklargøring skal du udføre følgende trin:
- Log ind på Azure Portal med Azure AD globale administratorlegitimationsoplysninger.
- Vælg Azure Active Directory.
- Vælg Virksomhedsapplikationer Og vælg Athena-app.
- Vælg Opret brugerkonti.
- I Provisioning sektion, skal du vælge Kom i gang.
- Til Klargøringstilstand, vælg Automatisk Ur.
- Udvid Admin-legitimationsoplysninger og befolke klienthemmelighed , Hemmeligt token med adgangsnøgle-id og hemmelig adgangsnøgle på
ReadRoleUser
, henholdsvis. - Vælg Test forbindelse , Gem.
- Vælg Start klargøring.
Den indledende cyklus kan tage noget tid at fuldføre, hvorefter IAM-rollerne udfyldes i Azure AD.
Konfigurer brugeradgang til Athena-arbejdsgrupperollen
For at konfigurere brugeradgang til arbejdsgrupperollen skal du udføre følgende trin:
- Log ind på Azure Portal med Azure AD globale administratorlegitimationsoplysninger.
- Vælg Azure Active Directory.
- Vælg Virksomhedsapplikationer Og vælg Athena-app.
- Vælg Tildel brugere og grupper , Tilføj bruger/gruppe.
- Under Brugere og grupper, vælg den gruppe, du vil tildele Athena-tilladelse til. Til dette indlæg bruger vi
athena-admin-adgroup
; alternativt kan du vælge bruger1. - Vælg Type.
- Til Vælg en rolle, vælg rollen
athenaworkgroup1role
. - Vælg Type.
- Vælg Tildel.
Få adgang til Athena
I dette afsnit vil vi demonstrere, hvordan du får adgang til Athena fra AWS-konsollen og udviklerværktøjet SQL Workbench/J
Få adgang til Athena ved hjælp af den webbaserede Microsoft My Apps-portal
For at bruge Microsoft My Apps-portalen til at få adgang til Athena skal du udføre følgende trin:
- Log ind på Azure Portal med Azure AD globale administratorlegitimationsoplysninger.
- Vælg Azure Active Directory
- Vælg Virksomhedsapplikationer Og vælg Athena-app.
- Vælg
- Ejendomme.
- Kopier værdien for Brugeradgangs-URL.
- Åbn en webbrowser og indtast URL'en.
Linket omdirigerer dig til en Azure-loginside.
- Log på med de lokale brugerlegitimationsoplysninger.
Du bliver omdirigeret til AWS Management Console.
Få adgang til Athena ved hjælp af SQL Workbench/J
I stærkt regulerede organisationer har interne brugere ikke tilladelse til at bruge konsollen til at få adgang til Athena. I sådanne tilfælde kan du bruge SQL Workbench/J, et open source-værktøj, der muliggør forbindelse til Athena ved hjælp af en JDBC-driver.
- Download den nyeste Athena JDBC driver (vælg den relevante driver baseret på din Java-version).
- Download og installer SQL Workbench/J.
- Åbn SQL Workbench/J.
- På File (Felt) menu, vælg Tilslut vindue.
- Vælg Administrer drivere.
- Til Navn, indtast et navn til din chauffør.
- Gennemse til den mappeplacering, hvor du downloadede og udpakkede driveren.
- Vælg OK.
Nu hvor vi konfigurerede Athena-driveren, er det tid til at oprette forbindelse til Athena. Du skal udfylde forbindelsens URL, brugernavn og adgangskode.
Brug følgende forbindelsesstreng til at oprette forbindelse til Athena med en brugerkonto uden MFA (angiv værdierne indsamlet tidligere i indlægget):
For at oprette forbindelse ved hjælp af en brugerkonto med MFA aktiveret skal du bruge browserens Azure AD Credentials Provider. Du skal konstruere forbindelsens URL og udfylde brugernavnet Brugernavn og adgangskode
Brug følgende forbindelsesstreng til at oprette forbindelse til Athena med en brugerkonto, der har MFA aktiveret (angiv de værdier, du har indsamlet tidligere):
Erstat tekst i rødt med detaljer indsamlet tidligere i artiklen.
Når forbindelsen er etableret, kan du køre forespørgsler mod Athena.
Proxy konfiguration
Hvis du opretter forbindelse til Athena via en proxyserver, skal du sørge for, at proxyserveren tillader port 444. Resultatsættet for streaming API bruger port 444 på Athena-serveren til udgående kommunikation. Indstil ProxyHost
egenskab til IP-adressen eller værtsnavnet på din proxyserver. Indstil ProxyPort
egenskab til nummeret på den TCP-port, som proxyserveren bruger til at lytte efter klientforbindelser. Se følgende kode:
Resumé
I dette indlæg konfigurerede vi IAM-føderation med Azure AD forbundet til on-premises AD og konfigurerede granulær adgang til en Athena-arbejdsgruppe. Vi så også på, hvordan man får adgang til Athena gennem konsollen ved hjælp af Microsoft My Apps-webportalen og SQL Workbench/J-værktøjet. Vi diskuterede også, hvordan forbindelsen fungerer over en proxy. Den samme føderationsinfrastruktur kan også udnyttes til ODBC-driverkonfiguration. Du kan også bruge instruktionerne i dette indlæg til at konfigurere SAML-baseret Azure IdP til at aktivere fødereret adgang til Athena Workgroups.
Om forfatteren
Niraj Kumar er Principal Technical Account Manager for finansielle tjenester hos AWS, hvor han hjælper kunder med at designe, arkitekte, bygge, drive og understøtte arbejdsbelastninger på AWS på en sikker og robust måde. Han har over 20 års forskelligartet IT-erfaring inden for områderne virksomhedsarkitektur, cloud og virtualisering, sikkerhed, IAM, løsningsarkitektur og informationssystemer og -teknologier. I sin fritid nyder han at vejlede, coache, vandre, se dokumentarfilm med sin søn og læse noget anderledes hver dag.
- '
- &
- 100
- 11
- 420
- 7
- 9
- adgang
- Konto
- Handling
- aktiv
- Active Directory
- Ad
- admin
- Alle
- tillade
- Amazon
- analyse
- api
- app
- applikationer
- apps
- arkitektur
- artikel
- Godkendelse
- AWS
- Azure
- Blog
- browser
- bygge
- tilfælde
- Cloud
- kode
- Kommunikation
- tilslutning
- Tilslutninger
- Connectivity
- samtykke
- Covid-19
- Legitimationsoplysninger
- cross-platform
- Kunder
- data
- Data Lake
- dag
- dc
- Design
- Udvikler
- dokumentarfilm
- driver
- Enterprise
- erfaring
- Fields
- finansielle
- finansielle tjenesteydelser
- Gratis
- fuld
- Global
- tilskud
- gruppe
- Hvordan
- How To
- HTTPS
- IAM
- Identity
- oplysninger
- Infrastruktur
- interaktiv
- IP
- IP-adresse
- IT
- Java
- Nøgle
- seneste
- Niveau
- LINK
- lokale
- placering
- kiggede
- ledelse
- MFA
- microsoft
- Mobil
- Navigation
- Office 365
- organisationer
- Adgangskode
- plugin
- politikker
- politik
- Portal
- Main
- ejendom
- proxy
- offentlige
- Læsning
- omdirigere
- Krav
- ressource
- Kør
- Søg
- sikkerhed
- Tjenester
- sæt
- Simpelt
- dens
- SQL
- Statement
- opbevaring
- streaming
- abonnement
- succes
- support
- Understøtter
- Systemer
- Teknisk
- Teknologier
- midlertidig
- tid
- token
- Trafik
- brugere
- værdi
- web
- webbrowser
- workflow
- virker
- år