Следуя примеру в документации Ansible :
- name: GRANT ALL PRIVILEGES ON SCHEMA public, math TO librarian
postgresql_privs:
db: library
privs: ALL
type: schema
objs: public,math
role: librarian
Я пытаюсь отозвать все права на схему publi c для данного пользователя:
- name: revoke all rights on public schema to data_sink
postgresql_privs:
db: "{{ app_name }}_data"
privs: ALL
state: absent
type: schema
objs: public
role: data_sink_db_user
playbook работает правильно, но пользователь все еще может получить доступ к схеме publi c в базе данных и может создавать новые таблицы ...
Я также попробовал немного другой подход:
- name: revoke all rights on public schema to data_sink
postgresql_privs:
db: "{{ app_name }}_data"
privs: ALL
state: absent
objs: ALL_IN_SCHEMA
schema: public
role: data_sink_db_user
, но пользователь по-прежнему может создавать таблицы в схеме publi c.
Каким будет правильный путь? Как я могу сделать так, чтобы данный пользователь не мог получить доступ к схеме publi c и мог работать только в своей собственной схеме?