Rumah  >  Soal Jawab  >  teks badan

java - Mengenai reka bentuk sistem log masuk Spring MVC

Idea semasa saya ialah untuk mentakrifkan User对象,其中包括uid, username, password, isLogined等。然后设置一个拦截器,在用户第一次请求(session开始)的时候,从数据库中根据user.isLogined判断用户是否登录,如果登录了就在session级别上设置isLogined sama dengan benar, jika tidak, ia akan mengubah hala ke halaman log masuk.

Tetapi dalam kes ini, bagaimanakah saya harus menentukan identiti pengguna apabila pengguna membuat permintaan pertama? Jika uid ditetapkan dalam kuki, uid ini boleh dipalsukan oleh orang lain, menimbulkan potensi risiko keselamatan.

Adakah penyelesaian yang baik untuk masalah ini?

Supplement

Masalah utama saya ialah cara menilai kesahihan identiti log masuk pengguna Sekarang idea saya adalah untuk menyulitkan ID pengguna dan menyimpannya dalam kuki Hanya saya yang tahu kunci ini, jadi orang lain tidak boleh berbuat apa-apa walaupun mereka tahu ID pengguna saya ingin bertanya sama ada ini munasabah.

天蓬老师天蓬老师2712 hari yang lalu539

membalas semua(4)saya akan balas

  • 滿天的星座

    滿天的星座2017-05-17 10:10:17

    Risiko ini sangat besar: jika uid ditukar kepada orang lain, dan orang itu kebetulan dilog masuk, maka mereka akan dilog masuk sebagai orang lain

    Ikuti rancangan anda:
    1 Tetapkan uid kuki untuk disulitkan, atau rentetan rawak yang tidak bermakna
    2 Gunakan rentetan ini untuk membandingkan dengan db, atau bandingkan dengan cache, dan sahkan IP pada masa yang sama Atau ejen pengguna untuk meningkatkan keselamatan
    3, pertimbangkan dasar tamat tempoh sesi

    balas
    0
  • 我想大声告诉你

    我想大声告诉你2017-05-17 10:10:17

    Pertama sekali, anda perlu menyimpan maklumat pengguna dalam pangkalan data anda dan menyediakannyaisLogined 默认为FALSE,每次登陆成功后更新为TRUE,退出后更新为FALSE;判断登陆成功的标志用userName userPass 匹配,还有isLogined 判断;最后设置判断级别,先isLogined用户密码

    balas
    0
  • PHP中文网

    PHP中文网2017-05-17 10:10:17

    Adalah disyorkan bahawa status log masuk tidak boleh disimpan dalam pangkalan data, sekurang-kurangnya tidak dalam pangkalan data hubungan anda boleh mengembalikan token selepas pengesahan log masuk pengguna selesai, dan semua permintaan pengguna seterusnya akan membawa token ini; medan kebenaran pengepala; Anda boleh belajar tentang jwt dan pelaksanaan yang berkaitan

    balas
    0
  • 过去多啦不再A梦

    过去多啦不再A梦2017-05-17 10:10:17

    Mengikut kaedah semasa anda, jika saya pengguna tanpa nama yang tidak log masuk dan meminta salah satu antara muka anda, dan kemudian dipintas daripada pangkalan data untuk menentukan sama ada pengguna log masuk berdasarkan pengguna.isLogined, maka masalah timbul . Siapakah pengguna dalam pengguna anda.isLogined?


    Adalah disyorkan untuk meletakkan maklumat kejayaan log masuk pengguna dalam sesi selepas log masuk secara langsung Apabila meminta, hanya gunakan pemintas untuk mengesahkan sesi Jangan mengakses pangkalan data ini sangat mahal untuk setiap permintaan.

    balas
    0
  • Batalbalas