Amazon RedShift påskyndar din tid till insikter med snabb, enkel och säker molndatalager i stor skala. Tiotusentals kunder litar på Amazon Redshift för att analysera exabyte av data och köra komplexa analytiska frågor.
Du kan använda dina föredragna SQL-klienter för att analysera dina data i en Amazon RedShift datalager. Anslut sömlöst genom att använda en identitetsleverantör (IdP) eller enkel inloggning (SSO) för att ansluta till Redshifts datalager för att återanvända befintliga användaruppgifter och undvika ytterligare användarinställningar och konfiguration. Använder sig av rollbaserad åtkomstkontroll (RBAC), kan du förenkla hanteringen av användarrättigheter, databasbehörigheter och hantering av säkerhetsbehörigheter i Amazon Redshift. Du kan också använda rödförskjutna databasroller för att definiera en uppsättning förhöjda behörigheter, till exempel för en systemövervakare eller databasadministratör.
Använda AWS identitets- och åtkomsthantering (IAM) med RBAC kan organisationer förenkla användarhantering eftersom du inte längre behöver skapa användare och mappa dem till databasroller manuellt. Du kan definiera de mappade databasrollerna som en huvudtagg för IdP-grupperna eller IAM-rollen, så Redshift-databasroller och användare som är medlemmar i dessa IdP-grupper tilldelas databasrollerna automatiskt.
Tidigare under 2023 har vi lanserade stöd för Okta-integration med Amazon Redshift Serverlös använder databasroller. I det här inlägget fokuserar vi på Okta som IdP och ger steg-för-steg-vägledning för att integrera ett Redshift-provisionerat kluster med Okta med hjälp av Redshift Query Editor v2 och med SQL-klienter som SQL Workbench/J. Du kan använda den här mekanismen med andra IdP-leverantörer som Azure Active Directory eller Ping med alla program eller verktyg som använder Amazons JDBC-, ODBC- eller Python-drivrutin.
Nyligen meddelade vi också Amazon RedShift integration med AWS IAM Identity Center, stöd spridning av pålitlig identitet, så att du kan använda tredjepartsidentitetsleverantörer (IdP) såsom Microsoft Entra ID (Azure AD), Okta, Ping och OneLogin. Denna integration förenklar autentiserings- och auktoriseringsprocessen för Amazon Redshift-användare som använder Frågeredigerare V2 or Amazon Quicksight, vilket gör det lättare för dem att säkert komma åt ditt datalager. AWS IAM Identity Center erbjuder automatisk användar- och gruppprovisionering från Okta till sig själv genom att använda SCIM 2.0-protokollet (System for Cross-domain Identity Management). Denna integration möjliggör sömlös synkronisering av information mellan två tjänster, vilket säkerställer korrekt och uppdaterad information i AWS IAM Identity Center. Hänvisa till Integrera Okta med Amazon Redshift Query Editor V2 med AWS IAM Identity Center för sömlös enkel inloggning blogginlägg för att lära dig mer om hur du ställer in enkel inloggning (SSO) till Amazon Redshift med hjälp av integration med IdC och Okta som identitetsleverantör.
Om du är intresserad av att använda IAM-baserad enkel inloggning med Amazon Redshift-databasroller kan du fortsätta läsa den här bloggen.
Lösningsöversikt
Följande diagram illustrerar autentiseringsflödet för Okta med ett Redshift-provisionerat kluster som använder federerade IAM-roller och automatisk databasrollmappning.
Arbetsflödet innehåller följande steg:
- Antingen väljer användaren en IdP-app i sin webbläsare, eller så initierar SQL-klienten en begäran om användarverifiering till IdP (Okta).
- Efter en lyckad autentisering skickar Okta en begäran till AWS-federationens slutpunkt med ett SAML-påstående som innehåller huvudtaggarna.
- AWS-federationens slutpunkt validerar SAML-påståendet och anropar AWS Security Token Service (AWS STS) API
AssumeRoleWithSAML
. SAML-påståendet innehåller IdP-användaren och gruppinformationen som lagras iRedshiftDbUser
ochRedshiftDbRoles
huvudtaggar, respektive. Tillfälliga IAM-uppgifter returneras till SQL-klienten eller, om du använder Query Editor v2, omdirigeras användarens webbläsare till Query Editor v2-konsolen med hjälp av de tillfälliga IAM-uppgifterna. - De tillfälliga IAM-uppgifterna används av SQL-klienten eller Query Editor v2 för att anropa Redshift API
GetClusterCredentialsWithIAM
. Detta API använder huvudtaggarna för att bestämma användar- och databasrollerna som användaren tillhör. En associerad databasanvändare skapas om användaren loggar in för första gången och tilldelas de matchande databasrollerna automatiskt. Ett tillfälligt lösenord returneras till SQL-klienten. - Med hjälp av databasanvändaren och det tillfälliga lösenordet ansluter SQL-klienten eller Query Editor v2 till Amazon Redshift. Vid inloggning är användaren auktoriserad baserat på Redshift-databasrollerna som tilldelades i steg 4.
Förutsättningar
Du behöver följande förutsättningar för att konfigurera den här lösningen:
Anslut till ett Redshift-provisionerat kluster som en federerad användare med hjälp av Query Editor v2
För att ansluta med Query Editor v2, utför följande steg:
- Följ alla steg som beskrivs i avsnitten Konfigurera din Okta-applikation och Ställ in AWS-konfiguration i följande inlägg.
- För Amazon Redshift-åtkomst IAM-policyn, ersätt policyn med följande JSON för att använda
GetClusterCredentialsWithIAM
API:
Nu är du redo att ansluta till ditt Redshift-förberedda kluster med hjälp av Query Editor v2 och federerad inloggning.
- Använd SSO URL från Okta och logga in på ditt Okta-konto med dina användaruppgifter. För denna demo loggar vi in med användaren Ethan.
- I Query Editor v2, välj ditt Redshift-serverade kluster (högerklicka) och välj Skapa anslutning.
- För Autentisering, Välj Tillfälliga autentiseringsuppgifter med din IAM-identitet.
- För Databas, ange databasnamnet du vill ansluta till.
- Välja Skapa anslutning.
- Kör följande kommando för att verifiera att du är inloggad som en federerad användare och även för att få listan över roller som är associerade med den användaren för den aktuella sessionen:
Eftersom Ethan är en del av säljgruppen och har fått tillstånd att komma åt tabeller i sales_schema
, borde han kunna komma åt dessa tabeller utan problem. Men om han försöker komma åt tabeller i finance_schema
, skulle han få ett tillstånd nekat fel eftersom Ethan inte är en del av finansgruppen i Okta.
Anslut till ett Redshift-provisionerat kluster som en federerad användare via en tredjepartsklient
För att ansluta som en federerad användare via en tredjepartsklient, slutför följande steg:
- Följ steg 1 och 2 som beskrivs i avsnittet ovan (Anslut till ett Redshift-serverat kluster som en federerad användare med hjälp av Query Editor v2).
- Använd Redshift JDBC-drivrutin v2.1.0.18 och senare eftersom den stöder autentisering med IAM-gruppfederation. Ange för URL
jdbc:redshift:iam://<cluster endpoint>:<port>:<databasename>?groupfederation=true.
Till exempel,jdbc:redshift:iam://redshift-cluster-1.abdef0abc0ab.us-west-2.redshift.amazonaws.com:5439/dev?groupfederation=true
I föregående URL, groupfederation
är en obligatorisk parameter som låter dig autentisera med IAM-uppgifterna för det Redshift-tillhandahöll klustret. Utan groupfederation
parametern kommer den inte att använda Redshift-databasroller.
- För Användarnamn och Lösenord, ange dina Okta-uppgifter.
- För att ställa in utökade egenskaper, följ steg 4–9 i avsnittet Konfigurera SQL-klienten (SQL Workbench/J) i följande inlägg.
Användaren Ethan kommer att kunna komma åt sales_schema
tabeller. Om Ethan försöker komma åt tabellerna i finance_schema
, kommer han att få ett tillstånd nekad fel.
Felsökning
Om din anslutning inte fungerade, överväg följande:
- Aktivera inloggning i drivrutinen. För instruktioner, se Konfigurera loggning.
- Se till att använda den senaste Amazon Redshift JDBC-drivrutin versionen.
- Om du får fel när du konfigurerar programmet på Okta, se till att du har administratörsåtkomst.
- Om du kan autentisera via SQL-klienten men får ett behörighetsproblem eller inte kan se objekt, ge relevant behörighet till rollen.
Städa upp
När du är klar med att testa lösningen, rensa upp resurserna för att undvika framtida avgifter:
- Ta bort det Redshift-serverade klustret.
- Ta bort IAM-rollerna, IAM IdPs och IAM-policyerna.
Slutsats
I det här inlägget gav vi steg-för-steg-instruktioner för att integrera ett Redshift-provisionerat kluster med Okta med hjälp av Redshift Query Editor v2 och SQL Workbench/J med hjälp av federerade IAM-roller och automatisk databasrollmappning. Du kan använda en liknande installation med andra SQL-klienter (som DBeaver eller DataGrip). Vi visade också hur Okta-gruppmedlemskap mappas automatiskt med Redshift-provisionerade klusterroller för att använda rollbaserad autentisering sömlöst.
Om du har feedback eller frågor, vänligen lämna dem i kommentarerna.
Om författarna
Debu Panda är Senior Manager, Product Management på AWS. Han är branschledande inom analys, applikationsplattform och databasteknologier och har mer än 25 års erfarenhet av IT-världen.
Ranjan Burman är en Analytics Specialist Solutions Architect på AWS. Han är specialiserad på Amazon Redshift och hjälper kunder att bygga skalbara analytiska lösningar. Han har mer än 16 års erfarenhet av olika databas- och datalagringsteknologier. Han brinner för att automatisera och lösa kundproblem med molnlösningar.
Maneesh Sharma är senior databasingenjör på AWS med mer än ett decenniums erfarenhet av att designa och implementera storskaliga datalager- och analyslösningar. Han samarbetar med olika Amazon Redshift-partners och kunder för att driva bättre integration.
- SEO-drivet innehåll och PR-distribution. Bli förstärkt idag.
- PlatoData.Network Vertical Generative Ai. Styrka dig själv. Tillgång här.
- PlatoAiStream. Web3 Intelligence. Kunskap förstärkt. Tillgång här.
- Platoesg. Kol, CleanTech, Energi, Miljö, Sol, Avfallshantering. Tillgång här.
- PlatoHealth. Biotech och kliniska prövningar Intelligence. Tillgång här.
- Källa: https://aws.amazon.com/blogs/big-data/federate-iam-based-single-sign-on-to-amazon-redshift-role-based-access-control-with-okta/
- : har
- :är
- :inte
- $UPP
- 1
- 100
- 13
- 16
- 2023
- 25
- 9
- a
- Able
- Om Oss
- ovan
- accelererar
- tillgång
- Konto
- exakt
- Handling
- aktiv
- Active Directory
- Ad
- Annat
- administration
- Alla
- tillåter
- tillåta
- tillåter
- också
- amason
- Amazon Web Services
- an
- Analytisk
- analytics
- analysera
- och
- meddelade
- vilken som helst
- api
- app
- Ansökan
- tillämpningar
- arkitektur
- ÄR
- AS
- delad
- associerad
- At
- autentisera
- Autentisering
- tillstånd
- tillstånd
- Automat
- automatiskt
- automatisera
- undvika
- AWS
- Azure
- baserat
- BE
- därför att
- varit
- tillhör
- Bättre
- mellan
- Blogg
- webbläsare
- SLUTRESULTAT
- men
- by
- Ring
- KAN
- Centrum
- avgifter
- Välja
- rena
- klient
- klienter
- cloud
- kluster
- COM
- kommentarer
- fullborda
- komplex
- konfiguration
- Kontakta
- anslutning
- ansluter
- Tänk
- Konsol
- innehåller
- fortsätta
- kontroll
- skapa
- skapas
- referenser
- Aktuella
- kund
- Kunder
- datum
- datalagret
- Databas
- årtionde
- definiera
- demo
- beskriven
- design
- Bestämma
- olika
- gjort
- driv
- chaufför
- lättare
- lätt
- redaktör
- effekt
- förhöjd
- Slutpunkt
- ingenjör
- säkerställa
- ange
- fel
- fel
- ethan
- Eter (ETH)
- exempel
- befintliga
- erfarenhet
- förlängas
- SNABB
- Federation
- återkoppling
- finansiering
- Förnamn
- första gången
- flöda
- Fokus
- följer
- efter
- För
- från
- framtida
- skaffa sig
- få
- gif
- bevilja
- beviljats
- Grupp
- Gruppens
- vägleda
- Har
- he
- hjälpa
- hjälper
- Hur ser din drömresa ut
- Men
- html
- http
- HTTPS
- IAM
- ID
- IDC
- Identitet
- identitetshantering
- if
- illustrerar
- genomföra
- in
- industrin
- branschledare
- informationen
- initierar
- insikter
- instruktioner
- integrera
- integrering
- intresserad
- anropar
- fråga
- problem
- IT
- sig
- jpg
- json
- storskalig
- senaste
- ledare
- LÄRA SIG
- Lämna
- hävstångs
- tycka om
- Lista
- log
- inloggad
- skogsavverkning
- logga in
- längre
- göra
- Framställning
- ledning
- chef
- hantera
- obligatoriskt
- manuellt
- karta
- kartläggning
- matchande
- mekanism
- Medlemmar
- medlemskap
- Microsoft
- Övervaka
- mer
- namn
- Behöver
- Nej
- objekt
- of
- Erbjudanden
- OKTA
- on
- or
- organisationer
- Övriga
- parameter
- del
- partner
- brinner
- Lösenord
- tillstånd
- behörigheter
- ping
- plattform
- plato
- Platon Data Intelligence
- PlatonData
- snälla du
- Strategier
- policy
- Inlägg
- föredragen
- förutsättningar
- Principal
- privilegier
- problem
- process
- Produkt
- produktledning
- egenskaper
- protokoll
- ge
- förutsatt
- leverantör
- leverantörer
- Python
- sökfrågor
- frågor
- Läsning
- redo
- motta
- hänvisa
- relevanta
- förlita
- ersätta
- begära
- resurs
- Resurser
- respektive
- återanvända
- Högerklicka
- Roll
- roller
- Körning
- försäljning
- skalbar
- Skala
- sömlös
- sömlöst
- §
- sektioner
- säkra
- säkert
- säkerhet
- säkerhetstoken
- se
- välj
- senior
- Tjänster
- session
- in
- inställning
- inställning
- skall
- visade
- signering
- liknande
- förenklar
- förenkla
- enda
- So
- lösning
- Lösningar
- Lösa
- specialist
- specialiserat
- SQL
- .
- Steg
- Steg
- lagras
- framgångsrik
- sådana
- stödja
- Stöder
- säker
- synkronisering
- system
- MÄRKA
- Tekniken
- temporär
- tiotals
- Testning
- än
- den där
- Smakämnen
- deras
- Dem
- sedan
- tredje part
- detta
- de
- tusentals
- tid
- till
- token
- verktyg
- två
- TIDSENLIG
- på
- URL
- användning
- Begagnade
- Användare
- användare
- användningar
- med hjälp av
- Använda
- BEKRÄFTA
- validerar
- olika
- version
- via
- vill
- Warehouse
- Lagring
- we
- webb
- webbservice
- były
- som
- medan
- VEM
- kommer
- med
- utan
- Arbete
- arbetsflöde
- världen
- skulle
- år
- dig
- Din
- zephyrnet