Firefox nhanh chóng quên HTTP Basic Auth


87

Làm cách nào tôi có thể làm cho Firefox "không hợp lệ" được lưu thông tin xác thực HTTP Basic Auth cho một trang web từ phía khách hàng?

Hiện tại, tôi phải khởi động lại trình duyệt, khá cồng kềnh với nhiều tab đang mở.

Có cách nào để làm điều này mà không phải khởi động lại Firefox / xóa bộ nhớ cache / vv.

Câu trả lời:


75

Bạn có thể chọn Xóa lịch sử gần đây từ menu Lịch sử ( Ctrl+ Shift+ Del, Mac: Cmd ⌘+ Shift+ Del). Sau đó, bạn có thể chọn chỉ xóa Đăng nhập hoạt động từ các chi tiết để chỉ xóa các phiên đó.

Trong các phiên bản Firefox cũ hơn (như FF3), Clear Recent History nằm trong menu Tools . Các phím tắt là như nhau.


7
Trong Firefox hiện tại, tùy chọn menu này nằm trong Historymenu, không phải Tools. Tôi đã xác minh điều này với Firefox 29.0.1.
Mei

hoạt động trên firefox thanx
themhz 06/10/2016

63

Nếu bạn thay đổi tên người dùng và mật khẩu từ phiên ban đầu thành phiên không xác thực, Firefox sẽ hủy tất cả tham chiếu đến xác thực cũ và thử cái mới.

Bạn có thể thay đổi / đặt xác thực bằng cách thêm người dùng: pass @ vào đầu URL, ví dụ: http: // user: pass@www.example.com/

Nếu bạn đã đăng nhập vào www.example.com với người dùng: vượt qua rồi gõ (thêm vào đầu địa chỉ) bất cứ điều gì @ sẽ khiến điều này xảy ra, ví dụ: http: //abc@www.example.com/

Một bản sửa lỗi nhanh không yêu cầu bất kỳ plugin nào.

Xin lưu ý rằng điều này chỉ hoạt động cho HTTP Basic Auth.

Một lợi ích phụ khác là điều này sẽ chỉ ảnh hưởng đến trang web bạn đang tương tác. Tất cả các thông tin đăng nhập khác vào bất kỳ trang web nào khác sẽ vẫn hoạt động.


7
Đây là một câu trả lời tuyệt vời. Đơn giản, dễ sử dụng, không cần phần mềm bổ sung và thông minh theo cách không rõ ràng rõ ràng.
wfaulk

3
Bên cạnh đó, tính năng này cũng hoạt động với hầu hết các trình duyệt khác, bao gồm Chrome và Internet Explorer (IE)
Drew Anderson

@DrewAnderson lần trước tôi đã kiểm tra, chỉ có firefox hỗ trợ người dùng: pass @ ký hiệu trong thanh url.
masterxilo

10

Các nhà phát triển web trên thanh công cụ cho phép xác thực HTTP được thiết lập lại trong một phiên trình duyệt.

Từ Menu ngữ cảnh của Firefox, chọn Nhà phát triển web -> Khác -> Xóa dữ liệu riêng tư -> Xác thực HTTP.


1
Không thể tìm thấy điều này trên Firefox hiện tại
Scolytus 12/2/2015

2
Thật không may, tính năng đó dường như đã biến mất tại một số điểm kể từ khi tôi đăng câu trả lời này.
boot13

1
Chỉ cần thử nghiệm nó, hoạt động! Xin lưu ý: đó không phải là một phần của các công cụ phát triển được đóng gói của Firefox, bạn phải cài đặt tiện ích bổ sung được liên kết.
Diego V

2

không có cách nào để trang web cung cấp tùy chọn đăng xuất

Cái này sai. Có một số cách đơn giản để trang web cung cấp tùy chọn đăng xuất.

1) Liên kết đăng xuất sẽ trỏ đến một URL trên cùng một tên miền chứa thông tin đăng nhập không chính xác

2) Liên kết đăng xuất sẽ kích hoạt javascript với đoạn mã sau (chỉ dành cho Microsoft Internet Explorer):

<script>document.execCommand('ClearAuthenticationCache', 'false');</script>

3
dường như không có cách nào để vô hiệu hóa các thông tin đáng tin cậy hoạt động nhất quán trên lông mày và không bật lên một hộp đăng nhập không mong muốn.
Michael

Liên kết đăng xuất bằng thông tin đăng nhập không chính xác đã được đề cập trong một câu trả lời khác
Dmitry Grigoryev

2

Thực hiện yêu cầu từ một cửa sổ riêng.

Trong Firefox: File - New Private Window(Ubuntu Ctrl+Shift+P)
Trong Chrome New incognito Window(Ubuntu Ctrl+Shift+N)


0

Không chắc điều này có giúp được ai khác không, nhưng trong trường hợp của tôi, tôi đã nghĩ rằng đó là một mật khẩu xấu mà firefox đang lưu trữ khi tôi không thể truy cập một trang web có xác thực HTTP cơ bản. Nhưng hóa ra trang web đó thực sự đã sử dụng NTLMv1 (phiên bản windows của xác thực http cơ bản) mà firefox hiện đã bị tắt theo mặc định kể từ phiên bản 30.

Để bật go about about: config và đặt mạng pref.negotiate-auth.allow-insecure-ntlm-v1 thành True.

Firefox không nhắc mật khẩu cho các trang web xác thực http, làm thế nào để nhắc nó?


-2

Chà, tôi hết hạn PHPSESSIONID của khách hàng. Khi bạn hết hạn, nó sẽ xóa nó khỏi trình duyệt máy khách. Bước thứ hai (mà tôi chưa tìm ra) sẽ là xóa cookie phiên ở phía máy chủ sẽ xóa trạng thái xác thực trên máy chủ trước khi hết thời gian và sẽ ngăn máy chủ tạo phpsessionid mới khi thấy điều này khách hàng không có cookie.

    <script type="text/javascript">
        document.cookie = "PHPSESSID=;Path=/;expires=Thu, 01 Jan 1970 00:00:01 GMT;";     
    </script>

Xác thực cơ bản HTTP không ngụ ý một phiên trong máy chủ, cũng không phải là cookie. Ngoài ra, ngay cả khi có, giải pháp của bạn sẽ không hoạt động trong hầu hết mọi trường hợp vì hiện nay hầu như tất cả các cookie phiên đều được đánh dấu là securecấm javascript truy cập chúng.
NuTTyX

Vâng, nó lấy một cookie ra khỏi trình duyệt firefox khi tôi nhìn vào các cookie, nhưng có nhiều hơn thế. Khi tôi xóa bộ đệm bowser và xóa thông tin đăng nhập đang hoạt động, sau đó khi tôi quay lại thư mục trên trang web, tôi nhận được hộp thoại http auth. Tôi tự hỏi nếu có một lệnh toàn cầu sẽ xóa đăng nhập hoạt động của nó từ trình duyệt. Nếu không, nên có.
drtechno

Thật tệ, tôi có nghĩa là cờ "chỉ http" cấm javascript truy cập dữ liệu bên trong cookie theo lập trình. Đối với câu hỏi ban đầu, tôi đã vấp phải một cách khiến một số trình duyệt quên, nhưng trong một số trường hợp (như trong IE), họ đã khiến nó không sử dụng được vì lý do bảo mật: nếu bạn nhập url do người dùng không có tiền tố và mật khẩu, họ sẽ "ghi đè" thông tin đăng nhập trước đó của bạn: logoff: nopasswd@www.site.com
NuTTyX

-4

Cách dễ nhất là đăng xuất khỏi trang web thay vì chỉ đóng tab. Nếu đây không phải là một tùy chọn và bạn biết trước khi truy cập một trang web mà bạn muốn quên, bạn có thể cài đặt Sandboxie và chạy Firefox (hoặc bất kỳ trình duyệt nào) trong hộp cát. Xóa nội dung của hộp cát khi hoàn thành và mọi thứ bạn đã làm sẽ biến mất.


12
Xác thực HTTP là một loại tiêu đề HTTP đặc biệt khiến trình duyệt web của bạn nhắc bạn nhập tên người dùng và mật khẩu, sau đó gửi lại tự động khi cần. Khi một trang web sử dụng loại xác thực này, không có cách nào để trang web cung cấp tùy chọn đăng xuất . Trong hầu hết các trình duyệt, bạn phải đóng trình duyệt để quên thông tin đăng nhập.
Bavi_H

@Bavi_H: Tôi đã nghe nói rằng một số trình duyệt sẽ quên các phiên hiện có nếu trang web gửi HTTP 401 khi đăng nhập.
grawity

1
Chỉ cần xóa cookie trang web không làm mất hiệu lực tên người dùng và mật khẩu đã lưu để xác thực cơ bản.
Petr Gladkikh
Khi sử dụng trang web của chúng tôi, bạn xác nhận rằng bạn đã đọc và hiểu Chính sách cookieChính sách bảo mật của chúng tôi.
Licensed under cc by-sa 3.0 with attribution required.