Amazone Athene is een interactieve queryservice die het eenvoudiger maakt om gegevens rechtstreeks in te analyseren Amazon eenvoudige opslagservice (Amazon S3) met behulp van standaard SQL. Cloudoperatieteams kunnen gebruiken AWS Identiteits- en toegangsbeheer (IAM)-federatie om de toegang tot Athena centraal te beheren. Dit vereenvoudigt het beheer doordat een bestuursteam de gebruikerstoegang tot Athena-werkgroepen kan controleren vanuit een centraal beheerde Azure AD die is verbonden met een lokale Active Directory. Deze opzet vermindert de overheadervaring van cloudoperatieteams bij het beheren van IAM-gebruikers. Athena ondersteunt federatie met Active Directory Federation Service (ADFS), PingFederate, Okta en Microsoft Azure Active Directory (Azure AD)-federatie.
In deze blogpost wordt geïllustreerd hoe u AWS IAM-federatie instelt met Azure AD verbonden met on-premises AD en hoe u Athena-toegang op werkgroepniveau voor verschillende gebruikers configureert. We gaan twee scenario’s behandelen:
- Door Azure AD beheerde gebruikers en groepen, en on-premises AD.
- On-premises door Active Directory beheerde gebruikers en groepen gesynchroniseerd met Azure AD.
We bespreken niet hoe u synchronisatie tussen on-premises AD en Azure AD instelt met behulp van Azure AD Connect. Zie voor meer informatie over het integreren van Azure AD met een AWS Managed AD Schakel Office 365 in met AWS Managed Microsoft AD zonder synchronisatie van gebruikerswachtwoorden en hoe u Azure AD integreert met een on-premises AD , zie Microsoft-artikel Aangepaste installatie van Azure Active Directory Connect.
Overzicht oplossingen
Met deze oplossing kunt u IAM-federatie configureren waarbij Azure AD is verbonden met on-premises AD en Athena-toegang op werkgroepniveau voor gebruikers configureren. U kunt de toegang tot de werkgroep beheren via een on-premises AD-groep of een Azure AD-groep. De oplossing bestaat uit vier delen:
- Stel Azure AD in als uw identiteitsprovider (IdP):
- Stel Azure AD in als uw SAML IdP voor een AWS-app met één account.
- Configureer de Azure AD-app met gedelegeerde machtigingen.
- Stel uw IAM IdP en rollen in:
- Stel een IdP in die Azure AD vertrouwt.
- Stel een IAM-gebruiker in met leesrolrechten.
- Stel een IAM-rol en -beleid in voor elke Athena-werkgroep.
- Gebruikerstoegang instellen in azure AD:
- Automatische IAM-rolinrichting instellen.
- Stel gebruikerstoegang tot de Athena-werkgroeprol in.
- Toegang Athene:
- Krijg toegang tot Athena via het webgebaseerde Microsoft Mijn Apps-portaal.
- Toegang tot Athena via SQL-werkbank/J een gratis, DBMS-onafhankelijke, platformonafhankelijke SQL-querytool.
Het volgende diagram illustreert de architectuur van de oplossing.
De workflow van de oplossing omvat de volgende stappen:
- Het ontwikkelaarswerkstation maakt verbinding met Azure AD via een SQL Workbench/j JDBC Athena-stuurprogramma om een SAML-token aan te vragen (OAuth-proces in twee stappen).
- Azure AD verzendt verificatieverkeer terug naar on-premises via een Azure AD pass-through-agent of ADFS.
- De Azure AD pass-through-agent of ADFS maakt verbinding met on-premises DC en verifieert de gebruiker.
- De pass-through-agent of ADFS verzendt een succestoken naar Azure AD.
- Azure AD bouwt een SAML-token met de toegewezen IAM-rol en verzendt dit naar de client.
- De klant maakt verbinding met AWS-beveiligingstoken-service (AWS STS) en presenteert het SAML-token om de Athena-rol op zich te nemen en tijdelijke inloggegevens te genereren.
- AWS STS verzendt tijdelijke inloggegevens naar de client.
- De client gebruikt de tijdelijke inloggegevens om verbinding te maken met Athena.
Voorwaarden
U moet aan de volgende vereisten voldoen voordat u de oplossing configureert:
- Voer aan de Azure AD-kant het volgende uit:
- Stel de Azure AD Connect-server in en synchroniseer met on-premises AD
- Stel de Azure AD pass-through- of Microsoft ADFS-federatie in tussen Azure AD en on-premises AD
- Maak drie gebruikers aan (
user1
,user2
,user3
) en drie groepen (athena-admin-adgroup
,athena-datascience-adgroup
,athena-developer-adgroup
) voor drie respectieve Athena-werkgroepen
- Maak aan de Athena-kant drie Athena-werkgroepen:
athena-admin-workgroup
,athena-datascience-workgroup
,athena-developer-workgroup
Voor meer informatie over het gebruik van voorbeelden van Athena-werkgroepen, zie Een openbaar datameer voor analyse van COVID-19-gegevens.
Azure AD instellen
In deze sectie bespreken we de Azure AD-configuratiedetails voor Athena in een Microsoft Azure-abonnement. We zullen voornamelijk een app registreren, federatie configureren, app-toestemming delegeren en app-geheim genereren.
Stel Azure AD in als SAML IdP voor een AWS-app met één account
Voer de volgende stappen uit om Azure AD in te stellen als uw SAML IdP:
- Log in op Azure-portaal met globale beheerdersreferenties van Azure AD.
- Kies Azure Active Directory.
- Kies Enterprise applicaties.
- Kies Nieuwe applicatie.
- Zoek naar
Amazon
in de zoekbalk. - Kies AWS-toegang met één account.
- Voor te noemen, invoeren
Athena-App
. - Kies Maken.
- In het Ermee beginnen sectie, onder Eenmalige aanmelding instellen, kiezen Start.
- Voor Selecteer een eenmalige aanmeldingsmethode, kiezen SAML.
- Voor Basis SAML-configuratie, kiezen Bewerk.
- Voor Identificatie (Entiteits-ID), ga naar binnen
https://signin.aws.amazon.com/saml#1
. - Kies Bespaar.
- Onder SAML-ondertekeningscertificaatvoor Federatie Metadata XML, kiezen Downloaden.
Dit bestand is vereist om uw IAM IdP in de volgende sectie te configureren. Bewaar dit bestand op uw lokale computer om later te gebruiken bij het configureren van IAM op AWS.
Configureer uw Azure AD-app met gedelegeerde machtigingen
Voer de volgende stappen uit om uw Azure AD-app te configureren:
- Kies Azure Active Directory.
- Kies App-registraties en Werkt met alle applicaties.
- Zoek en kies Athena-app.
- Noteer de waarden voor Applicatie (klant) ID en Directory-ID (tenant)..
Deze waarden heb je nodig in de JDBC-verbinding als je verbinding maakt met Athena.
- Onder API-machtigingen, kiezen Een toestemming toevoegen.
- Kies Microsoft Graph en Gedelegeerde machtigingen.
- Voor Selecteer machtigingen, zoeken
user.read
. - Voor Gebruiker, kiezen Gebruiker.Lees.
- Kies Toestemming toevoegen.
- Kies Beheer toestemming verlenen en Ja.
- Kies authenticatie en Voeg een platform toe.
- Kies Mobiele en desktopapplicaties.
- Onder Aangepaste omleidings-URI's, ga naar binnen
http://localhost/athena
. - Kies Configure .
- Kies Certificaten en geheimen en Nieuw klantgeheim.
- Voer een omschrijving in.
- Voor Verloopt, kiezen 24 maanden.
- Kopieer de clientgeheimwaarde die u wilt gebruiken bij het configureren van de JDBC-verbinding.
Stel de IAM IdP en rollen in
In deze sectie bespreken we de IAM-configuratie in een AWS-account. We zullen voornamelijk een IAM-gebruiker, rollen en beleid aanmaken.
Stel een IdP in die Azure AD vertrouwt
Voer de volgende stappen uit om uw IdP in te stellen op vertrouwend op Azure AD:
- Kies op de IAM-console Identiteitsproviders in het navigatievenster.
- Kies Aanbieder toevoegen.
- Voor Type provider, kiezen SAML.
- Voor Naam van de leverancier, ga naar binnen
AzureADAthenaProvider
. - Voor Metagegevensdocument, upload het bestand dat is gedownload van Azure Portal.
- Kies Aanbieder toevoegen.
Stel een IAM-gebruiker in met leesrolrechten
Om uw IAM-gebruiker in te stellen, voert u de volgende stappen uit:
- Kies op de IAM-console Gebruikers in het navigatievenster.
- Kies Gebruiker toevoegen.
- Voor gebruikersnaam, ga naar binnen
ReadRoleUser
. - Voor Toegangstypeselecteer Programmatische toegang.
- Kies Volgende: Machtigingen.
- Voor Stel machtigingen in, kiezen Voeg direct bestaand beleid toe.
- Kies Maak beleid.
- kies JSON en voer het volgende beleid in, dat leestoegang geeft om rollen in IAM op te sommen:
- Kies Volgende: Tags.
- Kies Volgende: Review.
- Voor Naam, ga naar binnen
readrolepolicy
. - Kies Maak beleid.
- Op de Add User
tabblad, zoek en kies de rol
readrole
. - Kies Volgende: tags.
- Kies Volgende: Review.
- Kies Gebruiker maken.
- Download het .csv-bestand met de toegangssleutel-ID en de geheime toegangssleutel.
We gebruiken deze bij het configureren van de automatische inrichting van Azure AD.
Stel een IAM-rol en -beleid in voor elke Athena-werkgroep
Voer de volgende stappen uit om IAM-rollen en -beleid voor uw Athena-werkgroepen in te stellen:
- Kies op de IAM-console rollen in het navigatievenster.
- Kies Rol creëren.
- Voor Selecteer het type vertrouwde entiteit, kiezen SAML 2.0-federatie.
- Voor SAML-provider, kiezen AzureADAthenaProvider.
- Kies Programmatische en AWS Management Console-toegang toestaan.
- Onder Conditie, kiezen sleutel.
- kies SAML:aud.
- Voor Conditieselecteer Tekenreeks is gelijk aan.
- Voor Waarde, ga naar binnen
http://localhost/athena
. - Kies Volgende: Machtigingen.
- Kies Maak beleid.
- Kies JSON en voer het volgende beleid in (geef de ARN van uw werkgroep op):
Het beleid verleent volledige toegang tot de Athena-werkgroep. Het is gebaseerd op de Door AWS beheerd beleid AmazonAthenaFullAccess
en voorbeeldbeleid van een werkgroep.
- Kies Volgende: Tags.
- Kies Volgende: Review.
- Voor Naam, ga naar binnen
athenaworkgroup1policy
. - Kies Maak beleid.
- Op de Rol creëren tabblad, zoek naar
athenaworkgroup1policy
en selecteer het beleid. - Kies Volgende: Tags.
- Kies Volgende: Review.
- Kies Rol creëren.
- Voor Naam, ga naar binnen
athenaworkgroup1role
. - Kies Rol creëren.
Stel gebruikerstoegang in azure AD in
In deze sectie zullen we automatische inrichting instellen en gebruikers toewijzen aan een app vanuit de Microsoft Azure-portal.
Automatische IAM-rolinrichting instellen
Voer de volgende stappen uit om automatische IAM-rolinrichting in te stellen:
- Log in op Azure-portaal met globale beheerdersreferenties van Azure AD.
- Kies Azure Active Directory.
- Kies Enterprise applicaties En kies Athena-app.
- Kies Gebruikersaccounts inrichten.
- In het Provisioning sectie, kies Start.
- Voor Inrichtingsmodus, kiezen Automatisch.
- Uitvouwen Beheerdersreferenties en bevolken klantgeheim en Geheime token met de toegangssleutel-ID en geheime toegangssleutel van
ReadRoleUser
, Respectievelijk. - Kies Verbinding testen en Bespaar.
- Kies Provisioning starten.
Het kan enige tijd duren voordat de eerste cyclus is voltooid, waarna de IAM-rollen worden ingevuld in Azure AD.
Stel gebruikerstoegang tot de Athena-werkgroeprol in
Voer de volgende stappen uit om gebruikerstoegang tot de werkgroeprol in te stellen:
- Inloggen Azure-portaal met globale beheerdersreferenties van Azure AD.
- Kies Azure Active Directory.
- Kies Enterprise applicaties En kies Athena-app.
- Kies Gebruikers en groepen toewijzen en Gebruiker/groep toevoegen.
- Onder Gebruikers en groepenSelecteer de groep waaraan u Athena-rechten wilt toewijzen. Voor dit bericht gebruiken we
athena-admin-adgroup
; Als alternatief kunt u gebruiker1 selecteren. - Kies kies.
- Voor Selecteer een rol, selecteer de rol
athenaworkgroup1role
. - Kies kies.
- Kies Toewijzen.
Toegang tot Athene
In deze sectie laten we zien hoe u toegang krijgt tot Athena vanaf de AWS-console en de ontwikkelaarstool SQL Workbench/J
Krijg toegang tot Athena via de webgebaseerde Microsoft My Apps-portal
Voer de volgende stappen uit om de Microsoft My Apps-portal te gebruiken om toegang te krijgen tot Athena:
- Inloggen Azure-portaal met globale beheerdersreferenties van Azure AD.
- Kies Azure Active Directory
- Kies Enterprise applicaties En kies Athena-app.
- Kies
- Properties.
- Kopieer de waarde voor URL voor gebruikerstoegang.
- Open een webbrowser en voer de URL in.
De koppeling leidt u om naar een Azure-inlogpagina.
- Meld u aan met de lokale gebruikersreferenties.
U wordt doorgestuurd naar de AWS-beheerconsole.
Toegang tot Athena met behulp van SQL Workbench/J
In sterk gereguleerde organisaties mogen interne gebruikers de console niet gebruiken om toegang te krijgen tot Athena. In dergelijke gevallen kunt u SQL Workbench/J gebruiken, een open source-tool die connectiviteit met Athena mogelijk maakt met behulp van een JDBC-stuurprogramma.
- Download de laatste Athena JDBC-stuurprogramma (kies het juiste stuurprogramma op basis van uw Java-versie).
- Download en installeer SQL-werkbank/J.
- Open SQL Workbench/J.
- Op de Dien in menu, kies Sluit venster aan.
- Kies Beheer chauffeurs.
- Voor Naam, voer een naam in voor uw chauffeur.
- Blader naar de maplocatie waar u het stuurprogramma hebt gedownload en uitgepakt.
- Kies OK.
Nu we het Athena-stuurprogramma hebben geconfigureerd, is het tijd om verbinding te maken met Athena. U moet de verbindings-URL, gebruikersnaam en wachtwoord invullen.
Gebruik de volgende verbindingsreeks om verbinding te maken met Athena met een gebruikersaccount zonder MFA (geef de waarden op die eerder in het bericht zijn verzameld):
Als u verbinding wilt maken met een gebruikersaccount waarvoor MFA is ingeschakeld, gebruikt u de browser Azure AD Credentials Provider. U moet de verbindings-URL samenstellen en de gebruikersnaam, gebruikersnaam en wachtwoord invullen
Gebruik de volgende verbindingsreeks om verbinding te maken met Athena met een gebruikersaccount waarvoor MFA is ingeschakeld (geef de waarden op die u eerder hebt verzameld):
Vervang de rode tekst door details die eerder in het artikel zijn verzameld.
Wanneer de verbinding tot stand is gebracht, kunt u query's uitvoeren op Athena.
Proxyconfiguratie
Als u via een proxyserver verbinding maakt met Athena, zorg er dan voor dat de proxyserver poort 444 toestaat. De streaming-API voor de resultatenset gebruikt poort 444 op de Athena-server voor uitgaande communicatie. Stel de ProxyHost
eigenschap naar het IP-adres of de hostnaam van uw proxyserver. Stel de ProxyPort
eigenschap toe aan het nummer van de TCP-poort die de proxyserver gebruikt om naar clientverbindingen te luisteren. Zie de volgende code:
Samengevat
In dit bericht hebben we IAM-federatie geconfigureerd met Azure AD verbonden met on-premises AD en gedetailleerde toegang tot een Athena-werkgroep ingesteld. We hebben ook gekeken hoe je toegang krijgt tot Athena via de console met behulp van de Microsoft My Apps-webportal en de SQL Workbench/J-tool. We hebben ook besproken hoe de verbinding werkt via een proxy. Dezelfde federatie-infrastructuur kan ook worden gebruikt voor de configuratie van ODBC-stuurprogramma's. U kunt ook de instructies in dit bericht gebruiken om op SAML gebaseerde Azure IdP in te stellen om federatieve toegang tot Athena Workgroups mogelijk te maken.
Over de auteur
Niraj Kumar is een Principal Technical Account Manager voor financiële diensten bij AWS, waar hij klanten helpt bij het ontwerpen, ontwerpen, bouwen, bedienen en ondersteunen van workloads op AWS op een veilige en robuuste manier. Hij heeft meer dan 20 jaar uiteenlopende IT-ervaring op het gebied van enterprise-architectuur, cloud en virtualisatie, beveiliging, IAM, oplossingsarchitectuur en informatiesystemen en -technologieën. In zijn vrije tijd houdt hij van mentorschap, coaching, wandelen, documentaires kijken met zijn zoon en elke dag iets anders lezen.
- '
- &
- 100
- 11
- 420
- 7
- 9
- toegang
- Account
- Actie
- actieve
- Active Directory
- Ad
- beheerder
- Alles
- Het toestaan
- Amazone
- analyse
- api
- gebruiken
- toepassingen
- apps
- architectuur
- dit artikel
- authenticatie
- AWS
- Azuur
- Blog
- browser
- bouw
- gevallen
- Cloud
- code
- Communicatie
- versterken
- aansluitingen
- Connectiviteit
- toestemming
- Covid-19
- Geloofsbrieven
- cross-platform
- Klanten
- gegevens
- Datameer
- dag
- dc
- Design
- Ontwikkelaar
- documentaires
- bestuurder
- Enterprise
- ervaring
- Velden
- financieel
- financiële diensten
- Gratis
- vol
- Globaal
- subsidies
- Groep
- Hoe
- How To
- HTTPS
- IAM
- Identiteit
- informatie
- Infrastructuur
- interactieve
- IP
- IP-adres
- IT
- Java
- sleutel
- laatste
- Niveau
- LINK
- lokaal
- plaats
- keek
- management
- MFA
- Microsoft
- Mobile
- Navigatie
- Office 365
- organisaties
- Wachtwoord
- inpluggen
- beleidsmaatregelen door te lezen.
- beleidsmaatregelen
- Portaal
- Principal
- eigendom
- volmacht
- publiek
- lezing
- redirect
- Voorwaarden
- hulpbron
- lopen
- Ontdek
- veiligheid
- Diensten
- reeks
- Eenvoudig
- zijn
- SQL
- Statement
- mediaopslag
- streaming
- abonnement
- succes
- ondersteuning
- steunen
- Systems
- Technisch
- Technologies
- tijdelijk
- niet de tijd of
- teken
- verkeer
- gebruikers
- waarde
- web
- web browser
- workflow
- Bedrijven
- jaar