Управление пользователями PostgreSQL TimescaleDB
Для доступа к базам данных в кластере PostgreSQL TimescaleDB создаются пользователи.
Чтобы создать базу данных в кластере, нужно сначала создать пользователя.
Пользователям для работы доступен только сам кластер — доступа к нодам кластера нет, так как они находятся на стороне Servercore. По умолчанию у всех пользователей в кластере одинаковые права.
К одной базе данных PostgreSQL TimescaleDB можно выдать доступ нескольким пользователям, но владелец базы данных может быть только один. На объекты базы данных пользователям можно выдавать привилегии.
Владелец базы данных
При создании базы данных PostgreSQL TimescaleDB нужно выбрать пользователя-владельца.
Владелец базы данных PostgreSQL TimescaleDB — это пользователь, которому переходят права владения объектами удаленных пользователей. После удаления пользователя вы не потеряете доступ к объектам, которые он создал, а сможете управлять ими через владельца. В отличие от пользователя, владелец базы данных имеет доступ ко всем ее объектам и может совершать операции с ними.
Создать пользователя
- В панели управления в верхнем меню нажмите Продукты и выберите Облачные базы данных.
- Откройте вкладку Активные.
- Откройте страницу кластера баз данных → вкладка Пользователи.
- Нажмите Создать пользователя.
- Введите имя и пароль. Сохраните пароль — в панел и управления он храниться не будет.
- Нажмите Сохранить.
Изменить пароль пользователя
После создания кластера пароль пользователя можно изменить. Не забудьте изменить пароль в своем приложении.
- В панели управления в верхнем меню нажмите Продукты и выберите Облачные базы данных.
- Откройте вкладку Активные.
- Откройте страницу кластера → вкладка Пользователи.
- В меню пользователя выберите Изменить пароль.
- Введите или сгенерируйте новый пароль и сохраните изменения.
Настроить доступ к базе данных
Выдать доступ пользователю
К одной базе данных PostgreSQL TimescaleDB можно выдать доступ нескольким пользователям.
- В панели управления в верхнем меню нажмите Продукты и выберите Облачные базы данных.
- Откройте вкладку Активные.
- Откройте страницу кластера баз данных → вкладка Базы данных → страница базы данных.
- В блоке Имеют доступ нажмите Добавить и выберите пользователя.
Пользователь может только подключиться к базе данных (CONNECT
) и не может выполнять операции с объектами. Чтобы дать пользователю доступ к объектам, выдайте ему нужные привилегии.
Изменить владельца базы данных
Владелец базы данных PostgreSQL TimescaleDB назначается при ее создании. Владельца нельзя удалить (у каждой базы должен быть владе лец), но его можно сменить на другого.
- В панели управления в верхнем меню нажмите Продукты и выберите Облачные базы данных.
- Откройте вкладку Активные.
- Откройте страницу кластера баз данных → вкладка Базы данных → страница базы данных.
- В списке Владелец базы выберите другого владельца.
Удалить доступ для пользователя
- В панели управления в верхнем меню нажмите Продукты и выберите Облачные базы данных.
- Откройте вкладку Активные.
- Откройте страницу кластера баз данных → вкладка Базы данных → страница базы данных.
- В блоке Имеют доступ удалите пользователя.
Настроить привилегии пользователя
По умолчанию у пользователя нет доступа к операциям над любыми объектами базы данных (схемам, таблицам, функциям), если он не владелец этой базы данных. Вы можете выдать пользователям привилегию (право доступа) на объект.
По умолчанию владельцы объекта имеют доступ и все права на объект.
Выдать привилегии
Выдать пользователям привилегии на объекты базы данных можно с помощью команды GRANT. Привилегии могут быть следующими: SELECT
, INSERT
, DELETE
, USAGE
.
Пример выдачи доступа на чтение (SELECT
) к таблице table
пользователю user
:
GRANT SELECT ON table TO user;