Sau đây là danh sách các lệnh dường như hoạt động để tạo người dùng mới (đăng nhập) và cấp quyền truy cập chỉ đọc cho một bảng được chỉ định trên PostgreQuery.
Giả sử rằng các lệnh này được thực thi khi đăng nhập với đủ đặc quyền (nghĩa là postgresđăng nhập trong cài đặt mặc định).
CREATE ROLE user_name NOSUPERUSER NOCREATEDB
NOCREATEROLE NOINHERIT LOGIN PASSWORD 'pwd' VALID UNTIL 'infinity';
Bây giờ tôi muốn cấp selecttrên bảng tab_abctrên cơ sở dữ liệu db_xyz, vì vậy nó đi (cơ sở dữ liệu db_xyzđược chọn là hiện tại thông qua PGAdmin hoặc đại loại như thế):
grant select on tab_abc to user_name;
Câu hỏi là: điều này là đủ hay nên có nhiều khoản tài trợ (cơ sở dữ liệu connect, usagecó thể)?
Các lệnh này dường như hoạt động với tôi, nhưng cài đặt mặc định của tôi có cài đặt bảo mật mặc định. Tôi nên thêm những khoản trợ cấp nào nếu quản trị viên máy chủ cấu hình bảo mật mạnh hơn?
Có vẻ như tôi không cần phải cấp connectcũng không usage- điều đó có liên quan trong khi cấp selectkhông? Có phải luôn luôn như vậy?