Rumah > Soal Jawab > teks badan
我们公司准备用前后端分离做项目, 前后端为了保持登录状态, 我看了网上很多都说的用token来保持登录, 现在我在token中直接存放md5(sessionid)可以么?有没有什么问题?
ringa_lee2017-05-16 13:00:06
Pada asasnya, bahagian hadapan menyulitkan data untuk mengurangkan kebolehbacaan, seperti data sensitif pengguna, untuk tujuan perlindungan privasi. Jika anda lulus seesion_id, tidak perlu menyulitkannya. Bagi kaedah md5 yang disebutkan di atas, ia adalah salah (untuk lulus seesion_id), kerana seesion_id itu sendiri digunakan sebagai kunci, dan md5 ialah kaedah hash (tidak boleh dipulihkan jika bahagian belakang ingin menggunakannya, ia boleh digunakan secara langsung). . Datang dan gunakannya, lapisan md5 anda tidak bermakna (jika ia dirampas, gunakannya terus)
Isu token yang anda nyatakan terletak pada cara bahagian belakang melaksanakan bahagian pengesahan, sama ada untuk memulihkan sesi untuk menyimpan maklumat atau menggunakan token untuk mengesahkan kuasa panggilan antara muka. Ia berbeza-beza bergantung pada cara bahagian belakang dilaksanakan.
Sesi disimpan oleh kuki yang diletakkan dalam penyemak imbas, dan bergantung pada masa tamat tempoh kuki penyemak imbas untuk mengawal masa pengekalan log masuk (perspektif pelanggan).
Untuk kandungan yang lain, sila rujuk kuki vs token sesi ini
習慣沉默2017-05-16 13:00:06
Token, anda hanya boleh mempunyai tarikh yang disulitkan MD5 semasa log masuk, kemudian masukkannya ke dalam redis, dan kemudian sekatnya dalam pemintas untuk membuat pertimbangan
PHP中文网2017-05-16 13:00:06
Selagi tiada kandungan sensitif (kata laluan, dll.) disimpan, tiada masalah untuk saya. Adalah disyorkan untuk menggunakan jwt yang popular Terdapat perpustakaan yang dilaksanakan dalam pelbagai bahasa, dan ia sangat mudah digunakan.
给我你的怀抱2017-05-16 13:00:06
Sangat baik, gunakan jwt. Beri perhatian untuk mengesahkan kesahihan token.