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
Tài liệu này dành cho phiên bản không được hỗ trợ của PostgreSQL.
Bạn có thể muốn xem cùng một trang chohiện tạiPhiên bản hoặc một trong các phiên bản được hỗ trợ khác được liệt kê ở trên thay thế.

20.5. Xác thực kèo bóng đá cúp c2

Có một số phương thức xác thực dựa trên kèo bóng đá cúp c2. Các phương thức này hoạt động tương tự nhưng khác nhau về cách kèo bóng đá cúp c2 của người dùng được lưu trữ trên máy chủ và cách kèo bóng đá cúp c2 do máy khách cung cấp qua kết nối.

Scram-Sha-256

Phương phápScram-Sha-256Thực hiện xác thực Scram-Sha-256, như được mô tả trongRFC 7677. Đây là một sơ đồ phản hồi thử thách ngăn chặn kèo bóng đá cúp c2 đánh hơi trên các kết nối không đáng tin cậy và hỗ trợ lưu trữ kèo bóng đá cúp c2 trên máy chủ ở dạng băm mật mã được cho là an toàn.

Đây là phương thức an toàn nhất trong số các phương thức hiện được cung cấp, nhưng nó không được hỗ trợ bởi các thư viện máy khách cũ.

MD5

Phương phápMD5sử dụng cơ chế phản hồi thử thách kém an toàn tùy chỉnh. Nó ngăn chặn việc đánh hơi kèo bóng đá cúp c2 và tránh lưu trữ kèo bóng đá cúp c2 trên máy chủ bằng văn bản đơn giản nhưng không cung cấp bảo vệ nếu kẻ tấn công quản lý để đánh cắp kèo bóng đá cúp c2 băm từ máy chủ.

TheMD5Phương thức không thể được sử dụng vớidb_user_namespacetính năng.

Để dễ dàng chuyển đổi từMD5Phương thức cho phương thức Scram mới hơn, nếuMD5được chỉ định làm phương thức trongpg_hba.confNhưng kèo bóng đá cúp c2 của người dùng trên máy chủ được mã hóa cho Scram (xem bên dưới), sau đó xác thực dựa trên Scram sẽ tự động được chọn thay thế.

kèo bóng đá cúp c2

Phương phápkèo bóng đá cúp c2Gửi kèo bóng đá cúp c2 trong văn bản rõ ràng và do đó dễ bị tổn thương với kèo bóng đá cúp c2HồiSniffingTấn công. Nó nên luôn luôn tránh nếu có thể.kèo bóng đá cúp c2Mặc dù vậy, có thể được sử dụng một cách an toàn. (Mặc dù xác thực chứng chỉ SSL có thể là lựa chọn tốt hơn nếu một người phụ thuộc vào việc sử dụng SSL).

PostgreSQLkèo bóng đá cúp c2 cơ sở dữ liệu tách biệt với kèo bóng đá cúp c2 người dùng hệ điều hành. kèo bóng đá cúp c2 cho mỗi người dùng cơ sở dữ liệu được lưu trữ trongpg_authidDanh mục hệ thống. kèo bóng đá cúp c2 có thể được quản lý bằng các lệnh SQLTạo vai tròVai trò thay đổi, ví dụ:Tạo vai trò foo với kèo bóng đá cúp c2 đăng nhập 'bí mật'hoặcPSQLlệnh\ kèo bóng đá cúp c2. Nếu không có kèo bóng đá cúp c2 nào được thiết lập cho người dùng, kèo bóng đá cúp c2 được lưu trữ là null và xác thực kèo bóng đá cúp c2 sẽ luôn thất bại cho người dùng đó.

Tính khả dụng của các phương thức xác thực dựa trên kèo bóng đá cúp c2 khác nhau phụ thuộc vào cách kèo bóng đá cúp c2 của người dùng trên máy chủ được mã hóa (hoặc băm, chính xác hơn). Điều này được kiểm soát bởi tham số cấu hìnhpassword_encryptionTại thời điểm kèo bóng đá cúp c2 được đặt. Nếu kèo bóng đá cúp c2 được mã hóa bằng cách sử dụngScram-Sha-256Cài đặt, sau đó nó có thể được sử dụng cho các phương thức xác thựcScram-Sha-256kèo bóng đá cúp c2(nhưng truyền kèo bóng đá cúp c2 sẽ có trong văn bản đơn giản trong trường hợp sau). Đặc tả phương thức xác thựcMD5Sẽ tự động chuyển sang sử dụngScram-Sha-256Phương thức trong trường hợp này, như được giải thích ở trên, vì vậy nó cũng sẽ hoạt động. Nếu kèo bóng đá cúp c2 được mã hóa bằng cách sử dụngMD5Cài đặt, sau đó nó chỉ có thể được sử dụng choMD5kèo bóng đá cúp c2Thông số kỹ thuật của phương thức xác thực (một lần nữa, với kèo bóng đá cúp c2 được truyền trong văn bản thuần túy trong trường hợp sau). .pg_authid.

Để nâng cấp cài đặt hiện có từMD5đếnScram-Sha-256, Sau khi đảm bảo rằng tất cả các thư viện máy khách đang sử dụng đều đủ mới để hỗ trợ Scram, SETpassword_encryption = 'scram-sha-256'inPostgreSql.conf, tạo tất cả người dùng đặt kèo bóng đá cúp c2 mới và thay đổi thông số kỹ thuật của phương thức xác thực trongpg_hba.confđếnScram-Sha-256.