Soms moet u om veiligheidsredenen of anderszins de toegang tot de database in PostgreSQL beperken. In dit artikel zullen we bekijken hoe we de toegang tot de database in PostgreSQL kunnen beperken.
De toegang tot de database in PostgreSQL beperken
Hier zijn de stappen om de toegang tot de database in PostgreSQL te beperken. Kortom, we zullen een nieuwe rol maken en deze selectierechten toekennen aan onze databasetabellen. Vervolgens zullen we een databasegebruiker maken en deze de nieuwe rol toewijzen die we hebben gemaakt. Op deze manier heeft de databasegebruiker alleen toegang tot die tabellen die toegankelijk zijn voor onze nieuw aangemaakte rol.
1. Rol maken
Log in op PostgreSQL en voer de volgende opdracht uit voor een nieuwe rol. Vervang de rolnaam volgens uw vereisten.
postgres-# CREATE ROLE new_role;
2. Toestemming beperken
Voer de volgende opdrachten uit om de toegang van de nieuw gemaakte rol tot database sample_database te beperken .
postgres-# GRANT CONNECT ON DATABASE sample_database TO new_role;
Verder zullen we toegang verlenen tot alle tabellen in openbaar schema. U kunt de schemanaam wijzigen volgens uw vereisten.
postgres-# GRANT USAGE ON SCHEMA public TO new_role; postgres-# GRANT SELECT ON ALL TABLES IN SCHEMA public TO new_role;
Als u select-toestemming wilt verlenen voor specifieke tabellen (bijv. sample_table), voert u de volgende opdracht uit
postgres-# GRANT SELECT ON sample_table IN SCHEMA public TO new_role;
Evenzo, als u een weergave heeft (bijv. sample_view) waarvoor u toegang wilt verlenen tot new_role, voert u de volgende opdracht uit.
postgres-# GRANT SELECT ON sample_view IN SCHEMA public TO new_role;
3. Gebruiker maken
Ten slotte maken we een PostgreSQL-gebruiker aan en wijzen we de nieuw aangemaakte rol toe aan die gebruiker. Update nieuwe_gebruiker en user_password in onderstaande commando's met uw gebruikersnaam en wachtwoord.
postgres-# CREATE USER new_user WITH PASSWORD 'user_password'; postgres-# GRANT new_role TO new_user;
Hopelijk helpt dit artikel je om de gebruikerstoegang in PostgreSQL te beperken. Ubiq maakt het eenvoudig om data te visualiseren en te monitoren in realtime dashboards. Probeer Ubiq gratis.