Firefox szybko zapomina o uwierzytelnianiu podstawowym HTTP

87

Jak mogę „unieważnić” Firefoksa, że ​​zapisał on poświadczenia uwierzytelniania podstawowego HTTP dla strony internetowej po stronie klienta?

Obecnie muszę ponownie uruchomić przeglądarkę, co jest dość kłopotliwe, gdy otwartych jest wiele kart.

Czy można to zrobić bez ponownego uruchamiania przeglądarki Firefox / czyszczenia pamięci podręcznej / etc.

MiffTheFox
źródło

Odpowiedzi:

75

Możesz wybrać Wyczyść najnowszą historię z menu Historia ( Ctrl+ Shift+ Del, Mac: Cmd ⌘+ Shift+ Del). Następnie możesz usunąć tylko szczegółowe dane logowania aktywnego, aby wyczyścić te sesje.

W starszych wersjach Firefoksa (takich jak FF3) Wyczyść najnowszą historię znajduje się w menu Narzędzia . Skrót jest taki sam.

ciężki
źródło
7
W bieżącym Firefoksie ta opcja menu znajduje się w Historymenu, a nie Tools. Sprawdziłem to w przeglądarce Firefox 29.0.1.
Mei
działa na firefox thanx
themhz
63

Jeśli zmienisz nazwę użytkownika i hasło z oryginalnej sesji na taką, która się nie uwierzytelni, Firefox zniszczy wszystkie odniesienia do starego uwierzytelnienia i spróbuje wykonać nowe.

Możesz zmienić / ustawić uwierzytelnianie, dodając user: pass @ na początku adresu URL, przykład: http: // user: [email protected]/

Jeśli jesteś zalogowany na stronie www.example.com z użytkownikiem: podaj, a następnie wpisując (dodając na początku adresu) dowolne @ spowoduje, że tak się stanie, na przykład: http: //[email protected]/

Szybka poprawka, która nie wymaga żadnych wtyczek.

Uwaga: działa to tylko w przypadku uwierzytelniania podstawowego HTTP.

Dodatkową korzyścią dodatkową jest to, że wpłynie to tylko na stronę, z którą wchodzisz w interakcje. Wszystkie inne dane logowania do dowolnej innej witryny pozostaną aktywne.

Drew Anderson
źródło
7
To niesamowita odpowiedź. Proste, łatwe w użyciu, nie wymaga dodatkowego oprogramowania i sprytne w sposób nieoczywisty.
wfaulk
3
Na marginesie, powinno to działać również z większością innych przeglądarek, w tym Chrome i Internet Explorer (IE)
Drew Anderson,
@DrewAnderson, kiedy ostatnio sprawdzałem, tylko Firefox wspierał użytkownika: pass @ notacja na pasku adresu URL.
masterxilo
10

Web Developer Toolbar umożliwia uwierzytelnianie HTTP należy zresetować w sesji przeglądarki.

Z menu kontekstowego Firefoksa wybierz Web Developer -> Różne -> Wyczyść prywatne dane -> Uwierzytelnianie HTTP.

boot13
źródło
1
Nie można tego znaleźć w bieżącym Firefoksie
Scolytus
2
Niestety ta funkcja w pewnym momencie zniknęła, odkąd opublikowałem tę odpowiedź.
boot13
1
Właśnie to przetestowałem, działa! Uwaga: to nie jest część dołączonych narzędzi programistycznych Firefoksa, musisz zainstalować połączony dodatek.
Diego V,
2

strona nie ma możliwości zaoferowania opcji wylogowania

To jest źle. Istnieje kilka prostych sposobów, dzięki którym witryna oferuje opcje wylogowania.

1) Link wylogowania wskaże adres URL w tej samej domenie zawierający poświadczenia, które są celowo niepoprawne

2) Link wylogowania spowoduje uruchomienie javascript z następującym fragmentem kodu (tylko Microsoft Internet Explorer):

<script>document.execCommand('ClearAuthenticationCache', 'false');</script>
Jan Cinert
źródło
3
wydaje się, że nie ma sposobu na wiarygodne unieważnienie poświadczeń, które zachowują się spójnie w różnych przeglądarkach i nie wyskakują niechcianego pola logowania.
Michael
Link do wylogowania z użyciem niepoprawnych danych uwierzytelniających jest już ujęty w innej odpowiedzi
Dmitrij Grigoryjew
2

Złóż wniosek z prywatnego okna.

W przeglądarce Firefox: File - New Private Window(Ubuntu Ctrl+Shift+P)
W przeglądarce Chrome New incognito Window(Ubuntu Ctrl+Shift+N)

tobias.h
źródło
0

Nie jestem pewien, czy to pomoże komukolwiek innemu, ale w moim przypadku pomyślałem, że to złe hasło, które firefox przechowuje, gdy nie mogłem uzyskać dostępu do strony z podstawowym uwierzytelnianiem HTTP. Ale okazuje się, że strona faktycznie używała NTLMv1 (wersja podstawowego uwierzytelniania HTTP w Windows), który Firefox teraz domyślnie wyłącza od wersji 30.

Aby włączyć przejdź do about: config i ustaw wartość pref network.negotiate-auth.allow-insecure-ntlm-v1 na True.

Firefox nie monituje o hasło do stron uwierzytelnionych HTTP, jak to zrobić?

deweydb
źródło
-2

Cóż, wygasam PHPSESSIONID klienta. Po wygaśnięciu usunie go z przeglądarki klienta. Drugim krokiem (którego nie zorientowałem się) byłoby usunięcie pliku cookie sesji po stronie serwera, który usunąłby stan uwierzytelnienia na serwerze przed przekroczeniem limitu czasu i uniemożliwiłby serwerowi wygenerowanie nowego phpsessionid, gdy to zobaczy. klient bez pliku cookie.

    <script type="text/javascript">
        document.cookie = "PHPSESSID=;Path=/;expires=Thu, 01 Jan 1970 00:00:01 GMT;";     
    </script>
drtechno
źródło
Podstawowe uwierzytelnianie HTTP nie oznacza sesji na serwerze ani pliku cookie. Ponadto, nawet gdyby tak się stało, Twoje rozwiązanie nie działałoby w prawie żadnym przypadku, ponieważ obecnie prawie wszystkie sesyjne pliki cookie są oznaczone jako securezabraniające dostępu do nich w javascript.
NuTTyX,
Cóż, kiedy przeglądam pliki cookie, usuwa ciasteczko z przeglądarki Firefox, ale jest coś więcej. po wyczyszczeniu pamięci podręcznej Bowsera i usunięciu aktywnych loginów, po powrocie do katalogu na stronie internetowej pojawia się okno dialogowe uwierzytelniania http. Zastanawiam się, czy istnieje globalne polecenie, które opróżni aktywne logowanie z przeglądarki. Jeśli nie, powinno być.
drtechno
Mój zły, miałem na myśli flagę „tylko http”, która zabrania programistycznego dostępu do danych wewnątrz pliku cookie. Jeśli chodzi o samo pierwotne pytanie, natknąłem się na sposób, który sprawiłby, że niektóre przeglądarki zapomniałyby, ale w niektórych przypadkach (np. W IE) uniemożliwiły one korzystanie z niego ze względów bezpieczeństwa: jeśli wpiszesz adres URL poprzedzony nieistniejącym użytkownikiem i hasłem, „ nadpisaliby
NuTTyX
-4

Najłatwiej jest wylogować się z witryny zamiast po prostu zamknąć kartę. Jeśli nie jest to opcja i wiesz wcześniej, że odwiedzisz stronę, o której zapomniałeś, możesz zainstalować Sandboxie i uruchomić Firefoksa (lub dowolną przeglądarkę) w piaskownicy. Po zakończeniu usuń zawartość piaskownicy, a wszystko, co zrobiłeś, zniknęło.

Fasola
źródło
12
Uwierzytelnianie HTTP to specjalny typ nagłówka HTTP, który powoduje, że przeglądarka wyświetla monit o podanie nazwy użytkownika i hasła, a następnie automatycznie wysyła je ponownie, gdy jest potrzebne. Gdy witryna korzysta z tego rodzaju uwierzytelnienia, nie ma możliwości zaoferowania opcji wylogowania . W większości przeglądarek musisz zamknąć przeglądarkę, aby zapomniała twoich danych logowania.
Bavi_H
@Bavi_H: Słyszałem, że niektóre przeglądarki zapomną o istniejących sesjach, jeśli witryna wyśle ​​HTTP 401 po zalogowaniu.
grawity
1
Samo wyczyszczenie plików cookie witryny nie unieważnia zapisanej nazwy użytkownika i hasła do podstawowego uwierzytelnienia.
Petr Gladkikh