Digest Authentication là một cơ chế xác thực kiểm soát truy cập HTTP, cung cấp mức độ bảo mật cao hơn so với Basic Auth. Trong khi Basic Auth gửi thông tin xác thực ở dạng văn bản thuần túy (được mã hóa Base64), Digest Auth sử dụng băm mật mã để bảo vệ thông tin xác thực của người dùng trong quá trình truyền tải.Cách Digest Auth hoạt động#
Trong Basic Auth, client gửi tên người dùng và mật khẩu dưới dạng mã hóa Base64 đến máy chủ. Các thông tin xác thực này có thể được truyền qua mạng và có thể bị bên trung gian chặn bắt, và họ có thể dễ dàng giải mã chúng.Digest Authentication giải quyết vấn đề này bằng cách sử dụng các thuật toán mã hóa để bảo vệ quá trình truyền thông tin xác thực của người dùng. Thay vì gửi mật khẩu, client gửi một giá trị băm của mật khẩu kết hợp với các giá trị khác (nonce, realm, v.v.), khiến kẻ tấn công khó chặn bắt và tái sử dụng thông tin xác thực hơn nhiều.Basic Auth: Tên người dùng và mật khẩu được gửi dưới dạng Base64 (dễ dàng giải mã)
Digest Auth: Giá trị băm mật mã được gửi thay cho mật khẩu (không thể dễ dàng đảo ngược)
Cài đặt cơ bản#
Trên trang Auth, chọn Digest Auth làm phương thức ủy quyền và cấu hình thông tin xác thực của bạn:| Tham số | Mô tả | Bắt buộc |
|---|
| Username | Tên người dùng xác thực của bạn | Có |
| Password | Mật khẩu xác thực của bạn | Có |
Cài đặt nâng cao#
Nhấp vào tùy chọn Advanced để cấu hình các tham số mã hóa b ổ sung. Nếu để trống, chúng sẽ được tạo tự động dựa trên phản hồi của máy chủ.| Tham số | Mô tả | Nguồn |
|---|
| Realm | Định danh không gian bảo vệ | Do máy chủ cung cấp trong header WWW-Authenticate |
| Nonce | Một chuỗi duy nhất do máy chủ chỉ định | Do máy chủ cung cấp trong header WWW-Authenticate |
| Algorithm | Thuật toán băm mật mã | MD5, SHA-256, SHA-256-sess, SHA-512-256, SHA-512-256-sess |
| qop (Quality of Protection) | Mức chất lượng của thuật toán digest | auth (chỉ xác thực) hoặc auth-int (xác thực + tính toàn vẹn) |
| Client Nonce | Số ngẫu nhiên do client tạo | Được client tạo cho mỗi yêu cầu |
| Opaque | Chuỗi ngẫu nhiên do máy chủ cung cấp | Do máy chủ trả về, được gửi lại mà không thay đổi |
Giá trị Quality of Protection (qop)#
| Giá trị | Mô tả | Trường hợp sử dụng |
|---|
| auth | Đảm bảo chất lượng xác thực | Xác thực digest tiêu chuẩn |
| auth-int | Xác thực + bảo vệ tính toàn vẹn | Bảo mật nâng cao với xác minh tính toàn vẹn của thông điệp |
Trong hầu hết các trường hợp, bạn chỉ cần cung cấp tên người dùng và mật khẩu. Apidog sẽ tự động trích xuất Realm, Nonce và các tham số khác từ phản hồi ban đầu của máy chủ, đồng thời cấu hình chúng cho bạn.
Hãy bảo đảm endpoint API của bạn hỗ trợ thuật toán đã chọn. Các triển khai hiện đại thường hỗ trợ các biến thể SHA-256 hoặc SHA-512 nhằm tăng cường bảo mật so với thuật toán MD5 cũ.