Dari sisi klien ia kelihatan seperti pemutusan rawak sejam selepas sesi berjalan. Ikon dulang hilang, terowong dibina semula, dan log menunjukkan kegagalan pengesahan dan bukan ralat rangkaian. Apa yang sebenarnya berlaku ialah sesi itu berunding semula dan jabat tangan kedua memerlukan kelayakan yang klien tidak lagi mempunyai salinan yang sah. Kod sekali guna yang berfungsi semasa log masuk tidak boleh berfungsi lagi, jadi pertukaran kunci gagal tepat seperti yang direka.

Pembetulannya ialah keputusan tentang apa yang perlu dibentangkan oleh jabat tangan kedua, bukan pemasa cuba semula yang lebih panjang.

Ikuti pertukaran dari sudut pandang klien

Semasa log masuk klien menghantar nama pengguna, kata laluan dan kod daripada peranti token, dan pelayan menerima gabungan itu. Sesi kemudian berjalan sehingga pencetus rundingan semula tercetus, yang memulakan jabat tangan TLS baharu di dalam terowong sedia ada. Jabat tangan itu meminta pengesahan sekali lagi. Jika laluan pengesahan pelayan menjangkakan kata laluan serta kod sekali guna semasa, klien tiada kod baharu untuk ditawarkan melainkan pengguna hadir untuk menaipnya.

Kebanyakan klien tidak membuka gesaan di tengah sesi, jadi jabat tangan tamat masa dan terowong terputus. Pengguna melihat sambungan semula, bukan gesaan pengesahan, sebab itulah laporan pertama biasanya menyalahkan rangkaian.

auth-gen-token menukar siapa yang menjawab soalan kedua

Pilihan auth-gen-token membenarkan pelayan mengeluarkan token selepas log masuk berjaya, dan rundingan semula kemudian membentangkan token itu dan bukannya mengulangi kata laluan dan kod. Manual mendokumenkan jangka hayat dan tingkah laku pembaharuannya, dan token mesti diperlakukan sebagai kelayakan dengan tamat tempohnya sendiri. Dalam laluan lalai pelayan mengesahkan token itu sendiri dan bukan memanggil pengesah kata laluan luaran sekali lagi.

Dengan integrasi pengesahan luaran, pembahagian itu berubah. Pemalam mesti memahami keadaan token dan menggunakan pemeriksaannya sendiri, kerana pelayan bukan lagi satu-satunya komponen yang menentukan sama ada sesi diteruskan. Memperlakukan token sebagai satu lagi kod sekali guna berangka bukanlah pelaksanaan ciri ini.

Tentukan apa yang berlaku kepada status akaun

Token yang hidup lebih lama daripada akses akaun ialah lubang dasar. Tentukan bagaimana akaun yang dilumpuhkan, keahlian kumpulan yang dibuang atau peranti yang dicabut berkuat kuasa semasa token masih sah. Jangka hayat token yang pendek mengecilkan tetingkap; laluan pencabutan yang jelas menjadikannya disengajakan. Tulis jawapannya sebelum mendayakan pilihan itu, kerana laluan lalai tidak merujuk pengesah luaran pada setiap rundingan semula.

Dalam penggunaan berbilang pelayan, rahsia tandatangan token mesti dikongsi, jika tidak klien boleh dihantar ke nod yang tidak dapat mengesahkan tokennya.

Uji tamat tempoh dan sambungan semula, bukan hanya log masuk

Rendahkan selang rundingan semula dalam profil ujian supaya jabat tangan kedua berlaku semasa anda menonton, kemudian ikuti kedua-dua log. Sahkan token dikeluarkan semasa log masuk, dibentangkan semasa pertukaran kunci, dan diperbaharui atau dikeluarkan semula mengikut jangka hayat yang dikonfigurasikan. Kemudian paksa tamat tempoh token dan sambungan semula penuh, kerana klien yang bersambung semula dengan bersih masih boleh gagal pada laluan pertukaran kunci.

Uji pembuangan akaun paling akhir. Kes itu memberitahu anda sama ada dasar yang anda tulis dikuatkuasakan atau hanya didokumenkan.

Jangan betulkannya dengan melumpuhkan pembaharuan

Menetapkan selang rundingan semula kepada sifar pada kedua-dua rakan menghapuskan gejala itu dan bersama-sama dengannya putaran kunci. Itu menyembunyikan masalah main semula kelayakan di sebalik perubahan dasar yang tiada siapa semak. Kekalkan pembaharuan, dan pilih antara token yang dikeluarkan pelayan dan cabaran interaktif baharu berdasarkan sama ada pengguna hadir.

Pemasa cuba semula yang lebih panjang tidak menjadikan kod yang telah dibelanjakan sah semula. Ia hanya melambatkan pemutusan dan menjadikan log lebih sukar dibaca.

Artikel berkaitan