Tiêu đề yêu cầu HTTP Authorization
có thể được sử dụng để cung cấp thông tin đăng nhập xác thực tác nhân người dùng với máy chủ, cho phép truy cập vào tài nguyên được bảo vệ
Tiêu đề Authorization
thường, nhưng không phải luôn luôn, được gửi sau khi tác nhân người dùng lần đầu tiên cố gắng yêu cầu tài nguyên được bảo vệ mà không có thông tin xác thực. Máy chủ phản hồi bằng thông báo 401
Unauthorized
bao gồm ít nhất một tiêu đề WWW-Authenticate
. Tiêu đề này cho biết sơ đồ xác thực nào có thể được sử dụng để truy cập tài nguyên [và bất kỳ thông tin bổ sung nào mà khách hàng cần để sử dụng chúng]. Tác nhân người dùng nên chọn lược đồ xác thực an toàn nhất mà nó hỗ trợ từ những lược đồ được cung cấp, nhắc người dùng cung cấp thông tin đăng nhập của họ, sau đó yêu cầu lại tài nguyên [bao gồm thông tin đăng nhập được mã hóa trong tiêu đề Authorization
]
Ghi chú. Tiêu đề này là một phần của. Nó có thể được sử dụng với một số
Loại tiêu đề Tiêu đề yêu cầu Tên tiêu đề bị cấm khôngAuthorization:
xác thực cơ bản
Authorization: Basic
xác thực thông báo
Authorization: Digest username=,
realm="",
uri="",
algorithm=,
nonce="",
nc=,
cnonce="",
qop=,
response="",
opaque=""
Authorization: Basic
0Điều đó xác định cách thông tin đăng nhập được mã hóa. Một số loại phổ biến hơn là [phân biệt chữ hoa chữ thường]. ,
Authorization: Basic
2, Authorization: Basic
3 và Authorization: Basic
4Ghi chú. Để biết thêm thông tin/tùy chọn xem
Ngoài
Authorization: Basic
0, các chỉ thị còn lại dành riêng cho từng. Nói chung, bạn sẽ cần kiểm tra các thông số kỹ thuật có liên quan cho những điều này [các khóa cho một tập hợp con nhỏ các sơ đồ được liệt kê bên dưới]Thông tin đăng nhập, được mã hóa theo sơ đồ đã chỉ định
Ghi chú. Để biết thông tin về thuật toán mã hóa, hãy xem các ví dụ. bên dưới, trong WWW-Authenticate
, trong Xác thực HTTP và trong các thông số kỹ thuật có liên quan
Một chuỗi các chữ số hex chứng minh rằng người dùng biết mật khẩu. Thuật toán mã hóa tên người dùng và mật khẩu, lĩnh vực, cnonce, qop, nc, v.v. Nó được mô tả chi tiết trong đặc điểm kỹ thuật
Authorization: Basic
7Một chuỗi được trích dẫn chứa tên người dùng cho
Authorization: Basic
8 được chỉ định ở dạng văn bản thuần túy hoặc mã băm ở dạng ký hiệu thập lục phân. Nếu tên chứa các ký tự không được phép sử dụng trong trường này, thì có thể sử dụng Authorization: Basic
9 để thay thế [không phải "as well"]Authorization: Basic
9Tên người dùng được định dạng bằng ký hiệu mở rộng được xác định trong RFC5987. Điều này chỉ nên được sử dụng nếu tên không thể được mã hóa trong
Authorization: Basic
7 và nếu ____2_______2 được đặt ____2_______3Authorization: Digest username=,
realm="",
uri="",
algorithm=,
nonce="",
nc=,
cnonce="",
qop=,
response="",
opaque=""
4URI yêu cầu hiệu quả. Xem thông số kỹ thuật để biết thêm thông tin
Authorization: Basic
8Lĩnh vực của tên người dùng/mật khẩu được yêu cầu [một lần nữa, phải khớp với giá trị trong phản hồi WWW-Authenticate
tương ứng cho tài nguyên được yêu cầu]
Authorization: Digest username=,
realm="",
uri="",
algorithm=,
nonce="",
nc=,
cnonce="",
qop=,
response="",
opaque=""
7Giá trị trong phản hồi WWW-Authenticate
tương ứng cho tài nguyên được yêu cầu
Authorization: Digest username=,
realm="",
uri="",
algorithm=,
nonce="",
nc=,
cnonce="",
qop=,
response="",
opaque=""
9Thuật toán được sử dụng để tính toán thông báo. Phải là thuật toán được hỗ trợ từ phản hồi WWW-Authenticate
cho tài nguyên được yêu cầu
Authorization: Basic YWxhZGRpbjpvcGVuc2VzYW1l
1Mã thông báo cho biết chất lượng bảo vệ được áp dụng cho tin nhắn. Phải khớp với một giá trị trong tập hợp được chỉ định trong phản hồi WWW-Authenticate
đối với tài nguyên được yêu cầu
3. xác thựcAuthorization: Basic YWxhZGRpbjpvcGVuc2VzYW1l
4. Xác thực với bảo vệ toàn vẹnAuthorization: Basic YWxhZGRpbjpvcGVuc2VzYW1l
Authorization: Basic YWxhZGRpbjpvcGVuc2VzYW1l
5Giá trị chuỗi chỉ ASCII được trích dẫn do khách hàng cung cấp. Điều này được cả máy khách và máy chủ sử dụng để cung cấp xác thực lẫn nhau, cung cấp một số biện pháp bảo vệ tính toàn vẹn của thông báo và tránh "các cuộc tấn công bằng văn bản đã chọn". Xem thông số kỹ thuật để biết thêm thông tin
Authorization: Basic YWxhZGRpbjpvcGVuc2VzYW1l
6số lần đếm. Số thập lục phân của các yêu cầu trong đó khách hàng đã gửi giá trị
Authorization: Basic YWxhZGRpbjpvcGVuc2VzYW1l
5 hiện tại [bao gồm cả yêu cầu hiện tại]. Máy chủ có thể sử dụng các giá trị Authorization: Basic YWxhZGRpbjpvcGVuc2VzYW1l
6 trùng lặp để nhận ra các yêu cầu phát lạiAuthorization: Digest username=,
realm="",
uri="",
algorithm=,
nonce="",
nc=,
cnonce="",
qop=,
response="",
opaque=""
2 Tùy chọnAuthorization
0 nếu tên người dùng đã được băm.
Authorization: Digest username=,
realm="",
uri="",
algorithm=,
nonce="",
nc=,
cnonce="",
qop=,
response="",
opaque=""
3 theo mặc địnhĐối với xác thực Authorization
2, thông tin xác thực được tạo bằng cách trước tiên kết hợp tên người dùng và mật khẩu với dấu hai chấm [Authorization
3], sau đó bằng cách mã hóa chuỗi kết quả thành Authorization
4 [Authorization
5]
Authorization: Basic YWxhZGRpbjpvcGVuc2VzYW1l
Cảnh báo. Có thể dễ dàng đảo ngược mã hóa Base64 để lấy tên và mật khẩu ban đầu, do đó, xác thực Cơ bản hoàn toàn không an toàn. HTTPS luôn được khuyến nghị khi sử dụng xác thực, nhưng thậm chí còn hơn thế khi sử dụng xác thực
Authorization: Basic
1Xem thêm xác thực HTTP để biết các ví dụ về cách định cấu hình máy chủ Apache hoặc Nginx để bảo vệ trang web của bạn bằng mật khẩu với xác thực cơ bản HTTP