Firefox cepat melupakan HTTP Basic Auth


87

Bagaimana saya bisa membuat Firefox "tidak valid" itu menyimpan kredensial HTTP Basic Auth untuk situs web dari sisi klien?

Saat ini, saya harus me-restart browser, yang agak rumit dengan beberapa tab terbuka.

Apakah ada cara untuk melakukan ini tanpa harus me-restart Firefox / menghapus cache / etc.

Jawaban:


75

Anda dapat memilih Bersihkan Riwayat Terakhir dari menu Riwayat ( Ctrl+ Shift+ Del, Mac: Cmd ⌘+ Shift+ Del). Anda kemudian dapat memilih untuk hanya menghapus Login Aktif dari detail untuk hanya menghapus sesi tersebut.

Di versi Firefox yang lebih lama (seperti FF3), Bersihkan Riwayat Terakhir ada di bawah menu Alat . Pintasannya sama.


7
Di Firefox saat ini, opsi menu ini ada di Historymenu, bukan Tools. Saya memverifikasi ini dengan Firefox 29.0.1.
Mei

bekerja pada firefox thanx
themhz

63

Jika Anda mengubah nama pengguna dan kata sandi dari sesi asli ke sesi yang tidak akan diautentikasi, Firefox akan memusnahkan semua referensi ke autentikasi lama dan mencoba yang baru.

Anda dapat mengubah / mengatur otentikasi dengan menambahkan pengguna: pass @ ke awal URL, contoh: http: // pengguna: pass@www.example.com/

Jika Anda masuk ke www.example.com dengan pengguna: pass lalu mengetik (menambahkan ke awal alamat) apa pun @ akan menyebabkan ini terjadi, contoh: http: //abc@www.example.com/

Perbaikan cepat yang tidak memerlukan plugin apa pun.

Harap perhatikan ini hanya berfungsi untuk HTTP Basic Auth.

Manfaat sampingan tambahan adalah ini hanya akan memengaruhi situs web yang berinteraksi dengan Anda. Semua login lain ke situs web lain akan tetap aktif.


7
Ini jawaban yang luar biasa. Sederhana, mudah digunakan, tidak ada perangkat lunak tambahan yang diperlukan, dan pintar dalam cara yang tidak jelas.
wfaulk

3
Sebagai tambahan, ini juga bisa digunakan pada sebagian besar browser lain, termasuk Chrome dan Internet Explorer (IE)
Drew Anderson

@DrewAnderson terakhir kali saya periksa, hanya firefox yang mendukung pengguna: pass @ notation di url bar.
masterxilo

10

The Web Developer toolbar memungkinkan otentikasi HTTP diatur ulang dalam sesi browser.

Dari Menu Konteks Firefox, pilih Pengembang Web -> Lain-lain -> Hapus Data Pribadi -> Otentikasi HTTP.


1
Tidak dapat menemukan ini di Firefox saat ini
Scolytus

2
Sayangnya, fitur itu tampaknya telah menghilang di beberapa titik sejak saya memposting jawaban ini.
boot13

1
Hanya mengujinya, berhasil! Harap dicatat: itu bukan bagian dari perangkat pengembang Firefox yang dibundel, Anda harus menginstal add-on yang tertaut.
Diego V

2

tidak ada cara bagi situs web untuk menawarkan opsi keluar

Ini salah. Ada beberapa cara sederhana bagi situs web untuk menawarkan opsi logout.

1) Tautan logout akan mengarah ke URL di domain yang sama berisi kredensial yang sengaja salah

2) Tautan keluar akan memicu javascript dengan cuplikan kode berikut (hanya Microsoft Internet Explorer):

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

3
sepertinya tidak ada cara untuk secara valid membatalkan kredensial yang berperilaku konsisten di seluruh browser dan tidak memunculkan kotak login yang tidak diinginkan.
Michael

Tautan keluar menggunakan kredensial yang salah sudah tercakup dalam jawaban lain
Dmitry Grigoryev

2

Buat permintaan dari jendela pribadi.

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


0

Tidak yakin apakah ini akan membantu orang lain, tetapi dalam kasus saya saya pikir itu adalah kata sandi yang buruk yang disimpan firefox ketika saya tidak dapat mengakses situs dengan otentikasi HTTP dasar. Tetapi ternyata situs itu benar-benar menggunakan NTLMv1 (versi windows otentikasi http dasar) yang firefox sekarang telah dinonaktifkan secara default sejak versi 30.

Untuk mengaktifkan, buka about: config, dan atur pref.negotiate-auth.allow-insecure-ntlm-v1 ke True.

Firefox tidak meminta kata sandi untuk situs yang diautentikasi http, bagaimana membuatnya cepat?


-2

Yah, saya kedaluwarsa PHPSESSIONID klien. Ketika Anda kedaluwarsa, itu akan menghapusnya dari browser klien. Langkah kedua (yang belum saya ketahui) adalah menghapus cookie sesi di sisi server yang akan menghapus status auth pada server sebelum waktu habis dan akan mencegah server menghasilkan phpsessionid baru ketika melihat ini klien tanpa cookie.

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

Otentikasi dasar HTTP tidak menyiratkan sesi di server, bukan cookie. Juga, bahkan jika itu terjadi, solusi Anda tidak akan berfungsi di hampir semua kasus karena saat ini hampir semua cookie sesi ditandai sebagai secureyang melarang javascript untuk mengaksesnya.
NuTTyX

baik itu mengambil cookie dari browser firefox ketika saya melihat cookie, tetapi ada lebih dari itu. ketika saya menghapus cache bowser dan menghapus login aktif, maka ketika saya kembali ke direktori di situs web saya mendapatkan kotak dialog auth http. Saya ingin tahu apakah ada perintah global yang akan menghapus login aktifnya dari browser. Jika tidak, harus ada.
drtechno

Buruk saya, maksud saya bendera "http-only" yang melarang javascript untuk mengakses data di dalam cookie secara terprogram. Adapun pertanyaan asli itu sendiri, saya menemukan cara yang akan membuat beberapa browser lupa, tetapi dalam beberapa kasus (seperti di IE) mereka membuatnya tidak dapat digunakan untuk alasan keamanan: jika Anda mengetikkan url yang diawali oleh pengguna dan kata sandi yang tidak ada, mereka akan "menimpa" login Anda sebelumnya: logoff: nopasswd@www.site.com
NuTTyX

-4

Cara termudah adalah keluar dari situs alih-alih hanya menutup tab. Jika ini bukan opsi dan Anda tahu sebelumnya Anda akan mengunjungi situs yang ingin Anda lupakan Anda dapat menginstal Sandboxie dan menjalankan Firefox Anda (atau browser apa pun) di sandbox. Hapus isi kotak pasir ketika selesai dan semua yang telah Anda lakukan hilang.


12
Otentikasi HTTP adalah jenis khusus dari tajuk HTTP yang menyebabkan peramban web meminta Anda untuk nama pengguna dan kata sandi, kemudian mengirimnya kembali secara otomatis saat diperlukan. Ketika situs web menggunakan jenis otentikasi ini, tidak ada cara bagi situs web untuk menawarkan opsi keluar . Di sebagian besar browser, Anda harus menutup browser untuk melupakan informasi login Anda.
Bavi_H

@Bavi_H: Saya pernah mendengar bahwa beberapa browser akan melupakan sesi yang ada jika situs mengirim HTTP 401 saat login.
grawity

1
Hanya menghapus cookie situs tidak akan membatalkan nama pengguna dan kata sandi yang disimpan untuk otentikasi dasar.
Petr Gladkikh
Dengan menggunakan situs kami, Anda mengakui telah membaca dan memahami Kebijakan Cookie dan Kebijakan Privasi kami.
Licensed under cc by-sa 3.0 with attribution required.