Phiên bản được hỗ trợ:hiện tại(17) /16 / 15 / 14 / 13
Phiên bản phát triển:18 / Devel
Phiên bản không được hỗ trợ:12 / 11 / 10 / 9.6 / 9.5 / 9.4 / 9.3 / 9.2 / 9.1 / 9.0 / 8.4 / 8.3 / 8.2 / 8.1

21.3. Tư cách kèo bóng đá c1#

Nó thường xuyên thuận tiện cho người dùng nhóm lại với nhau để dễ dàng quản lý các đặc quyền: theo kèo bóng đá c1 đó, các đặc quyền có thể được cấp cho hoặc thu hồi từ một nhóm nói chung. TRONGPostgreSQLĐiều này được thực hiện bằng kèo bóng đá c1 tạo một vai trò đại diện cho nhóm, sau đó cấpkèo bóng đá c1Trong vai trò nhóm cho các vai trò người dùng riêng lẻ.

Để thiết lập vai trò nhóm, trước tiên hãy tạo vai trò:

Tạo vai tròtên;

Thông thường một vai trò được sử dụng như một nhóm sẽ không cóĐăng nhậpthuộc tính, mặc dù bạn có thể đặt nó nếu bạn muốn.

Một khi vai trò nhóm tồn tại, bạn có thể thêm và xóa các kèo bóng đá c1 bằng cách sử dụngGrantthu hồilệnh:

GrantGroup_roleđếnVai trò1, ...;
Thu hồiGroup_roletừVai trò1, ...;

Bạn cũng có thể cấp tư cách kèo bóng đá c1 cho các vai trò nhóm khác (vì thực sự không có bất kỳ sự phân biệt nào giữa vai trò nhóm và vai trò không nhóm). Cơ sở dữ liệu sẽ không cho phép bạn thiết lập các vòng kèo bóng đá c1 tròn. Ngoài ra, nó không được phép cấp tư cách kèo bóng đá c1 trong vai tròcông khai.

11369_11510setTùy chọn có thể làmĐặt vai tròđể tạm thờitrở kèo bóng đá c1HồiVai trò nhóm. Ở trạng thái này, phiên cơ sở dữ liệu có quyền truy cập vào các đặc quyền của vai trò nhóm thay vì vai trò đăng nhập ban đầu và bất kỳ đối tượng cơ sở dữ liệu nào được tạo ra được sở hữu bởi vai trò nhóm không phải là vai trò đăng nhập. Thứ hai, các vai trò kèo bóng đá c1 đã được cấp kèo bóng đá c1 vớikế thừaTùy chọn tự động đã sử dụng các đặc quyền của những người trực tiếp hoặc gián tiếp là kèo bóng đá c1 của, mặc dù chuỗi dừng tại các kèo bóng đá c1 thiếu tùy chọn kế thừa. Ví dụ, giả sử chúng ta đã làm:

12292_12505

Ngay sau khi kết nối như vai tròJoe12584_12655Joecộng với bất kỳ đặc quyền nào được cấp choadminĐảo, vìJoe kế thừaNhững đặc quyền đó. Tuy nhiên, các đặc quyền được cấp chobánh xekhông có sẵn, vì mặc dùJoelà kèo bóng đá c1 củabánh xe, kèo bóng đá c1 là thông quaQuản trị kèo bóng đá c1được cấp bằng kèo bóng đá c1 sử dụngvới kế thừa sai. Sau đó:

Đặt Quản trị kèo bóng đá c1;

Phiên sẽ chỉ sử dụng các đặc quyền đó được cấp choadmin, và không phải những người được cấp choJoehoặcĐảo. Sau đó:

Đặt bánh xe vai trò;

Phiên sẽ chỉ sử dụng các đặc quyền đó được cấp chobánh xe, và không phải là những người được cấp choJoehoặcadmin. Trạng thái đặc quyền ban đầu có thể được khôi phục với bất kỳ:

Đặt vai trò Joe;
Thiết lập vai trò không;
Đặt lại vai trò;

Lưu ý

TheĐặt vai tròLệnh luôn cho phép chọn bất kỳ vai trò nào mà vai trò đăng nhập ban đầu trực tiếp hoặc gián tiếp là kèo bóng đá c1 của, với điều kiện là có một chuỗi các kèo bóng đá c1 cấp cho mỗi người cóĐặt đúng(đó là mặc định). Do đó, trong ví dụ trên, không cần thiết phải trở kèo bóng đá c1adminTrước khi trở kèo bóng đá c1bánh xe. Mặt khác, không thể trở kèo bóng đá c1Đảoall;Joe14540_14592

Lưu ý

Trong tiêu chuẩn SQL, có một sự khác biệt rõ ràng giữa người dùng và vai trò và người dùng không tự động kế thừa các đặc quyền trong khi vai trò. kèo bóng đá c1 này có thể được lấy trongPostgreSQLBằng kèo bóng đá c1 đưa ra các vai trò được sử dụng làm vai trò SQLkế thừathuộc tính, trong khi đưa ra các vai trò được sử dụng làm người dùng SQLNoinheritThuộc tính. Tuy nhiên,PostgreSQLMặc định cho tất cả các vai tròkế thừathuộc tính, để tương thích ngược với các bản phát hành trước 8.1 trong đó người dùng luôn sử dụng các quyền được cấp cho các nhóm mà họ là kèo bóng đá c1 của.

Các thuộc tính vai tròĐăng nhập, Superuser, createdbCreaterolecó thể được coi là đặc quyền đặc biệt, nhưng chúng không bao giờ được kế thừa như các đặc quyền thông thường trên các đối tượng cơ sở dữ liệu. Bạn phải thực sựĐặt vai tròĐối với một vai trò cụ thể có một trong các thuộc tính này để sử dụng thuộc tính. Tiếp tục ví dụ trên, chúng ta có thể chọn cấpcreatedbCreateroleđếnQuản trị kèo bóng đá c1Vai trò. Sau đó một phiên kết nối như vai tròJoeSẽ không có các đặc quyền này ngay lập tức, chỉ sau khi làmĐặt vai trò.

Để phá hủy vai trò nhóm, sử dụngVai trò thả:

Vai trò thảtên;

Bất kỳ kèo bóng đá c1 nào trong vai trò nhóm đều tự động bị thu hồi (nhưng vai trò kèo bóng đá c1 không bị ảnh hưởng khác).

Gửi hiệu chỉnh

Nếu bạn thấy bất cứ điều gì trong tài liệu không chính xác, không khớp Kinh nghiệm của bạn với tính năng cụ thể hoặc yêu cầu làm rõ thêm, Vui lòng sử dụngMẫu nàyĐể báo cáo vấn đề tài liệu.