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

20.5. Xác thực kèo bóng đá c1#

Có một số phương thức xác thực dựa trên kèo bóng đá c1. 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 đá c1 của người dùng được lưu trữ trên máy chủ và cách kèo bóng đá c1 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 đá c1 đá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 đá c1 trên máy chủ ở dạng băm mật mã được cho là an toàn.

Đây là phương pháp 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 khách hàng 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 đá c1 và tránh lưu trữ kèo bóng đá c1 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 đá c1 băm từ máy chủ.

Để 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à phương thức trongpg_hba.confNhưng kèo bóng đá c1 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 đá c1

Phương phápkèo bóng đá c1Gửi kèo bóng đá c1 trong văn bản rõ ràng và do đó dễ bị tổn thương với kèo bóng đá c1SniffingHồiTấn công. Nó nên luôn luôn tránh nếu có thể.kèo bóng đá c1Mặ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 đá c1 cơ sở dữ liệu tách biệt với kèo bóng đá c1 người dùng hệ điều hành. kèo bóng đá c1 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 đá c1 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 đá c1 đăng nhập 'bí mật'hoặcPSQLlệnh\ kèo bóng đá c1. Nếu không có kèo bóng đá c1 nào được thiết lập cho người dùng, kèo bóng đá c1 được lưu trữ là null và xác thực kèo bóng đá c1 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 đá c1 khác nhau phụ thuộc vào cách kèo bóng đá c1 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 đá c1 được đặt. Nếu kèo bóng đá c1 đượ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 đá c1(nhưng truyền kèo bóng đá c1 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ư đã giải thích ở trên, vì vậy nó cũng sẽ hoạt động. Nếu kèo bóng đá c1 đượ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 đá c1Thô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 đá c1 đượ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 đá c1 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.

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ớpMẫu nàyĐể báo cáo vấn đề tài liệu.