Tài liệu cho lo_compat_privileges
giải thích tình huống:
Lưu ý rằng điều này có thể được đặt cho mỗi cơ sở dữ liệu với:
ALTER DATABASE dbname SET lo_compat_privileges=on;
Khi lo_compat_privileges
được đặt thành OFF
mặc định , quyền truy cập không giới hạn ở superusers, nhưng được kiểm soát. Mỗi vật thể lớn đều có chủ sở hữu và chủ sở hữu đó có toàn quyền. Quyền đọc có thể được cấp cho từng đối tượng lớn tại một thời điểm (bởi chủ sở hữu hoặc người dùng cấp trên) với:
GRANT SELECT ON LARGE OBJECT loid TO rolename;
nơi rolename
cũng có thể là PUBLIC
nghĩa là "mọi người", hãy xem GRANT
để biết chi tiết.
Mặt khác, tôi không nghĩ rằng có thể đặt quyền trên tất cả các đối tượng lớn của cơ sở dữ liệu bằng một lệnh duy nhất hoặc trước trên các nội dung chưa tồn tại, vì ALTER DEFAULT PRIVILEGES
không hỗ trợ các đối tượng lớn và như bạn lưu ý, trình kích hoạt không phải là một tùy chọn.
Người không phải cấp trên có quyền CHỌN trên tất cả các đối tượng lớn của cơ sở dữ liệu có thể pg_dump cơ sở dữ liệu này mà không bị lỗi.