sql >> Base de Datos >  >> RDS >> PostgreSQL

Cómo limitar el acceso a la base de datos en PostgreSQL

A veces, es posible que deba restringir el acceso a la base de datos en PostgreSQL, por razones de seguridad o de otro tipo. En este artículo, veremos cómo limitar el acceso a la base de datos en PostgreSQL.


Cómo limitar el acceso a la base de datos en PostgreSQL

Estos son los pasos para limitar el acceso a la base de datos en PostgreSQL. Básicamente, crearemos un nuevo rol y le otorgaremos permisos de selección a nuestras tablas de base de datos. Luego crearemos un usuario de base de datos y le asignaremos el nuevo rol que hemos creado. De esta forma, el usuario de la base de datos solo tendrá acceso a aquellas tablas a las que pueda acceder nuestro rol recién creado.


1. Crear Rol

Inicie sesión en PostgreSQL y ejecute el siguiente comando para un nuevo rol. Reemplace el nombre del rol según sus requisitos.

postgres-# CREATE ROLE new_role;


2. Límite de permiso

Ejecute los siguientes comandos para restringir el acceso del rol recién creado a la base de datos sample_database .

postgres-# GRANT CONNECT ON DATABASE sample_database TO new_role;

Además, otorgaremos acceso a todas las tablas en public esquema. Puede cambiar el nombre del esquema según sus requisitos.

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

Si desea otorgar permiso de selección para tablas específicas (por ejemplo, sample_table), ejecute el siguiente comando

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

Del mismo modo, si tiene alguna vista (por ejemplo, sample_view) para la que desea proporcionar acceso a new_role, ejecute el siguiente comando.

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


3. Crear Usuario

Finalmente, creamos un usuario de PostgreSQL y asignamos el rol recién creado a ese usuario. Actualizar nuevo_usuario y usuario_contraseña en los comandos a continuación con su nombre de usuario y contraseña.

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

Con suerte, este artículo lo ayudará a limitar el acceso de los usuarios en PostgreSQL. Ubiq facilita la visualización de datos y la supervisión en paneles en tiempo real. Prueba Ubiq gratis.