sql >> Database teknologi >  >> RDS >> PostgreSQL

Sådan begrænser du adgang til databasen i PostgreSQL

Nogle gange kan det være nødvendigt at begrænse adgangen til databasen i PostgreSQL, af sikkerhedsmæssige årsager eller andet. I denne artikel vil vi se på, hvordan man begrænser adgangen til databasen i PostgreSQL.


Sådan begrænser du adgangen til databasen i PostgreSQL

Her er trinene til at begrænse adgangen til databasen i PostgreSQL. Grundlæggende vil vi oprette en ny rolle og give den udvalgte tilladelser til vores databasetabeller. Så vil vi oprette en databasebruger og tildele den den nye rolle, som vi har oprettet. På denne måde vil databasebrugeren kun have adgang til de tabeller, som kan tilgås af vores nyoprettede rolle.


1. Opret rolle

Log ind på PostgreSQL og kør følgende kommando til en ny rolle. Erstat rollenavnet efter dit krav.

postgres-# CREATE ROLE new_role;


2. Begræns tilladelse

Kør følgende kommandoer for at begrænse adgangen til den nyoprettede rolle til databasen sample_database .

postgres-# GRANT CONNECT ON DATABASE sample_database TO new_role;

Yderligere vil vi give adgang til alle tabeller i offentlige skema. Du kan ændre skemanavnet efter dit behov.

postgres-# GRANT USAGE ON SCHEMA public TO new_role;
postgres-# GRANT SELECT ON ALL TABLES IN SCHEMA public TO new_role;

Hvis du vil give select-tilladelse til specifikke tabeller (f.eks. sample_table), skal du køre følgende kommando

postgres-# GRANT SELECT ON sample_table IN SCHEMA public TO new_role;

På samme måde, hvis du har en visning (f.eks. sample_view), som du vil give adgang til new_role, skal du køre følgende kommando.

postgres-# GRANT SELECT ON sample_view IN SCHEMA public TO new_role;


3. Opret bruger

Til sidst opretter vi en PostgreSQL-bruger og tildeler den nyoprettede rolle til denne bruger. Opdater ny_bruger og user_password i kommandoerne nedenfor med dit brugernavn og adgangskode.

postgres-# CREATE USER new_user WITH PASSWORD 'user_password';
postgres-# GRANT new_role TO new_user;

Forhåbentlig hjælper denne artikel dig med at begrænse brugeradgang i PostgreSQL. Ubiq gør det nemt at visualisere data og overvåge dem i dashboards i realtid. Prøv Ubiq gratis.

  1. Hvordan dropper man en kolonne i SQL?

  2. Bestemmelse af påskedatoerne for ethvert år i Oracle PLSQL

  3. Hukommelse/lagringsteknologihierarki og SQL Server

  4. SQL-opdatering af felter i en tabel fra felter i en anden