I denne artikkelen vil vi forklare bruken av Redshift Alter -brukerkommandoen i detalj for å endre egenskapene til de eksisterende brukerne i Redshift.”
Tillatelser til å bruke ALTER -brukeren
Før vi beveger oss med Endre brukeren Kommando, vi må huske på at ikke alle brukere har rett til å bruke alter -brukerkommandoen i Redshift. Enten superbrukeren eller noen annen bruker med Endre brukeren Privilegier kan utføre denne kommandoen i Redshift for å endre brukerattributtene. Dessuten kan det brukes hvis noen ønsker å oppdatere passordet til sin egen databasebruker. I denne delen vil vi se hvordan vi kan gi superbrukerrettigheter til enhver bruker i Redshift Cluster.
Først må vi opprette en ny bruker ved hjelp av følgende Redshift Create User Function.
OPPRETT BRUKER<'password'>
Nå er brukeren vår opprettet, og vi kan gi denne brukeren superbrukerrettighetene ved hjelp av alterbruker -kommandoen. Følgende vil være Redshift SQL -spørringen som kan utføres i Redshift for å endre tillatelsene til en bruker.
Endre brukerenOPPRETT BRUKER
Nå har denne brukeren de fulle rettighetene til å utføre enhver handling i rødforskyvning, inkludert bruken av Endre brukeren kommando.
For å se om denne brukeren faktisk har fått superbrukerrettighetene, kan du spørre systemtabellen PG_USER, som viser alle brukerne og de tildelte privilegiene til disse brukerne.
Velg * fra PG_USER
Fra bordet kan vi se at demo_user har nå superbruker tillatelser i rødforskyvning.
Endre brukerkommando
I denne delen skal du lære alt du trenger å vite om å bruke og mestre Redshift Alter -brukerkommandoen. Dette er en av de mest kritiske kommandoene og brukes ofte av systemadministratorer, ettersom det mest brukes til administrative oppgaver som å gi eller ta tilbake tilgang fra forskjellige brukere eller administrere andre brukerinnstillinger.
Endre brukernavn
Ta en sak der du har flere brukere i rødskiftklyngen din. Et nytt medlem blir med i databaseteamet ditt, og du har opprettet en bruker for ham, men etter en tid står teamet overfor problemer på grunn av brukernavnet til den nye personen, og det er grunnen til at administratoren ønsker å endre dette brukernavnet. Du kan endre brukernavnet for å løse dette problemet ved hjelp av ALTER brukerkommando.
Endre brukeren
Gi nytt navn til
Ovennevnte spørring endret brukernavnet, som du kan se på skjermbildet ovenfor. En ting å huske er at du alltid må oppdatere brukerpassordet når du endrer brukernavnet; Ellers vil du møte problemer i påloggingen. I neste avsnitt vil vi se hvordan vi kan tilbakestille Redshift -brukerpassordet ved hjelp av Alter -brukerkommandoen.
Tilbakestill brukerpassord
Endring av brukerpassordet er en vanlig rutine, men viktig i den forstand at det er ansvarlig for sikkerheten og personvernet til dataene dine. For å endre brukerpassordet i Redshift -klyngen, kan følgende spørring utføres.
Endre brukeren
PASSORD <'New Password'>
Mens du endrer brukerpassordet, kan du også angi utløpsdatoen for passord eller valideringstid. Dette gjøres for å sikre at passordet blir rotert etter en bestemt tidsperiode. Følgende Redshift -spørring forklarer hvordan passordet er satt til en bestemt tid.
Endre brukeren
PASSORD <'New Password'>
GYLDIG TIL <'Date and Time'>
Superbrukeren i Redshift -klyngen kan endre passordet for enhver bruker uten engang å kjenne det nåværende brukerpassordet, så du må være forsiktig med alle du tildeler superbrukerrettigheten til. Imidlertid kan en bruker endre sitt eget passord når som helst uten superbrukerprivilegiet.
Angi brukertillatelser
Hver gang du legger til en ny bruker i Redshift, må du angi noen tillatelser for at den skal gi de begrensede brukerrettighetene. Du kan gi disse begrensede tillatelsene til den nye brukeren ved å bruke Endre brukeren kommando. Du kan bestemme om den nye brukeren kan legge til nye databaser i systemet ditt eller kan legge til eller fjerne andre brukere ytterligere fra systemet eller ikke. Her skal du se hvordan det er mulig å angi tillatelsen for brukeren til å tillate å opprette nye databaser. Du kan opprette en ny Redshift -database ved å bruke følgende spørsmål.
Endre brukerdemo_user1 createB;
Begrens tilgangen til systemtabeller
Har du noen gang tenkt på å fjerne en brukers evne til å se alle databasesystemtabellene? Redshift Alter -brukerkommandoen kan brukes til å fjerne brukerrettighetene for å se databasesystemtabellene. Anta å følge med noen av organisasjonens personvernregler; Du vil ikke at alle brukerne skal få tilgang til informasjon om hva andre brukere gjør eller har gjort. For å gjøre dette, må du begrense brukeren ved å bruke følgende metode.
Endre brukeren
Syslog -tilgang < RESTRICTED | UNRESTRICTED >
Nå kan denne brukeren bare se endringene som han gjorde seg i systemtabellene, og tilgang til full systemtabeller er fjernet fra brukeren.
Angi tilkoblingsgrense
Hver bruker i rødforskyvning kan være begrenset til å lage et bestemt antall samtidige databaseforbindelser med rødforskyvning. Dette er de samtidige tilkoblingene, og du kan stille dem til å være ubegrenset hvis du vil. Følgende Redshift -spørring kan brukes til å angi de begrensede samtidige tilkoblingene for en bruker.
Endre brukeren
Tilkoblingsgrense < UNLIMITED |Limit Value >
Sett timeout
Session timeout definerer hvor lang tid det tar å forlate den for øyeblikket løpende økten hvis den er i ledig tilstand. Vanligvis er det satt til standard hvis du ikke spesifiserer når du oppretter en ny bruker, men det kan endres i rødforskyvning hvis du vil. Anta at du vil angi tidsavbruddstid på ti minutter for en bestemt bruker; Du vil utføre følgende spørsmål i Redshift.
Endre brukeren
Session timeout
Ovennevnte Redshift -spørringen vil sette tidsavbrudd for økt til 10 minutter, og du kan tilbakestille den igjen ved å utføre den samme kommandoen i Redshift.
Endre brukeren
Tilbakestill økt timeout
Konklusjon
Det er flere brukerinnstillinger som enkelt kan administreres ved hjelp av den innebygde rødforskyvningen Endre brukeren funksjon. Hvis du har rett til å bruke dette Endre brukeren Kommando, den lar deg angi brukertillatelser, oppdatere og tilbakestille brukernavnet og passordene, angi timeout for økt for brukerne, angi eller tilbakestille parametere for forskjellige bruksområder, og mye mer. Så det kan trekkes fra all denne diskusjonen at det er en nyttig kommando, og du må vite det hvis du er ansvarlig for å håndtere ting i Redshift.