Jika bahagian belakang diedarkan (seperti pelayan awan), disyorkan untuk menggunakan kaedah pengesahan token dalam oauth2.0 Jika ia hanya untuk pembangunan, anda boleh menggunakan kuki. proses log masuk oauth adalah seperti berikut:
Buat jadual token baharu dengan token medan, user_id, login_at, expire_at
Pengguna log masuk menggunakan akaun dan kata laluan
Jika log masuk berjaya, rekod akan dimasukkan ke dalam token jadual data, semua token pengguna sebelumnya akan dipadamkan atau ditetapkan untuk tamat tempoh, dan token akan dikembalikan ke hujung hadapan
Tambahkan pengepala apabila menggunakan ajax di bahagian hadapanAuthorization=token
Halaman belakang membaca Kebenaran dalam pengepala permintaan dan membandingkannya dengan pangkalan data Jika ia wujud dan belum tamat tempoh, ia dianggap sebagai pengguna yang sah, jika tidak, ralat dikembalikan
1 Log masuk pengguna biasanya kuki + sesi, walaupun pelayan tidak sama Alangkah baiknya jika salah satu daripada mereka mempunyai fungsi pemajuan permintaan Disebabkan sekatan dasar asal yang sama, kuki tidak boleh digunakan apabila mengakses nama domain lain.
2 Secara amnya, akan ada fungsi ringkasan di bahagian hadapan untuk menjana ringkasan data Walaupun ia disiarkan dengan data, bahagian belakang menggunakan fungsi ringkasan yang sama untuk menjana ringkasan data yang disiarkan dan membandingkan. ia dengan ringkasan data yang disiarkan Jika ia konsisten, ia membuktikan bahawa data tersebut tidak diubah suai. Tetapi jika pengguna mengetahui fungsi ringkasan yang anda gunakan, dia boleh menjana ringkasan data dan menyiarkannya Jadi secara teori, adalah mustahil untuk menilai, tetapi dalam praktiknya, pengguna biasa tidak tahu ini.
Pengesahan data bahagian belakang, ini diperlukan untuk keselamatan data apabila bahagian hadapan dan bahagian belakang dipisahkan. Cara biasa ialah melakukan penyulitan tanda Apa yang anda perlu gunakan ialah kunci dan rahsia Sebagai contoh, kaedah penyulitan API Taobao Tanda Taobao
Kunci ialah ID pengguna, nama ialah siapa anda dan rahsia mewakili kunci anda. Kunci dijana oleh pelayan dan hanya boleh digunakan apabila menyulitkan maklumat Sercet tidak boleh disertakan semasa penghantaran data. Selepas pelanggan menyulitkan semua data permintaan mengikut peraturan tertentu, bahagian belakang memperoleh bahawa data yang diserahkan disulitkan dengan cara yang sama, dan kemudian membandingkan parameter tanda untuk melihat sama ada ia konsisten, itu bermakna data tidak diganggu semasa proses penghantaran. Selain itu, pengesanan kesahan masa juga diperlukan, seperti parameter cap waktu, yang memerlukan ralat masa tidak boleh melebihi 5 minit sebelum dan selepas Perkara lain ialah data diminta berulang kali tanda, ia membuat cache untuk menyimpan tanda, dan masa tamat tempoh 5 minit (bersamaan dengan masa di atas), tanda yang sama menunjukkan bahawa permintaan ini telah diminta berulang kali, dan kemudian ditolak
Pada asasnya ini adalah proses untuk memastikan keselamatan data, ketepatan masa, pencegahan pertindihan, dll.
sessionStorage atau localStorage menyimpan kata laluan khas yang dijana oleh latar belakang itu sendiri. Setiap permintaan dibawa melalui kepala dan data disahkan sah melalui latar belakang
Jika bahagian belakang diedarkan (seperti pelayan awan), disyorkan untuk menggunakan kaedah pengesahan token dalam oauth2.0 Jika ia hanya untuk pembangunan, anda boleh menggunakan kuki.
proses log masuk oauth adalah seperti berikut:
Buat jadual token baharu dengan token medan, user_id, login_at, expire_at
Pengguna log masuk menggunakan akaun dan kata laluan
Jika log masuk berjaya, rekod akan dimasukkan ke dalam token jadual data, semua token pengguna sebelumnya akan dipadamkan atau ditetapkan untuk tamat tempoh, dan token akan dikembalikan ke hujung hadapan
Tambahkan pengepala apabila menggunakan ajax di bahagian hadapan
Authorization=token
Halaman belakang membaca Kebenaran dalam pengepala permintaan dan membandingkannya dengan pangkalan data Jika ia wujud dan belum tamat tempoh, ia dianggap sebagai pengguna yang sah, jika tidak, ralat dikembalikan
1 Log masuk pengguna biasanya kuki + sesi, walaupun pelayan tidak sama Alangkah baiknya jika salah satu daripada mereka mempunyai fungsi pemajuan permintaan Disebabkan sekatan dasar asal yang sama, kuki tidak boleh digunakan apabila mengakses nama domain lain.
2 Secara amnya, akan ada fungsi ringkasan di bahagian hadapan untuk menjana ringkasan data Walaupun ia disiarkan dengan data, bahagian belakang menggunakan fungsi ringkasan yang sama untuk menjana ringkasan data yang disiarkan dan membandingkan. ia dengan ringkasan data yang disiarkan Jika ia konsisten, ia membuktikan bahawa data tersebut tidak diubah suai. Tetapi jika pengguna mengetahui fungsi ringkasan yang anda gunakan, dia boleh menjana ringkasan data dan menyiarkannya Jadi secara teori, adalah mustahil untuk menilai, tetapi dalam praktiknya, pengguna biasa tidak tahu ini.
JWT
, token web json.Bagaimanakah bahagian belakang menentukan sama ada data telah ditukar Apakah maksudnya bukankah bahagian belakang db?
Pengesahan data bahagian belakang, ini diperlukan untuk keselamatan data apabila bahagian hadapan dan bahagian belakang dipisahkan.
Cara biasa ialah melakukan penyulitan tanda
Apa yang anda perlu gunakan ialah kunci dan rahsia
Sebagai contoh, kaedah penyulitan API Taobao Tanda Taobao
Kunci ialah ID pengguna, nama ialah siapa anda dan rahsia mewakili kunci anda. Kunci dijana oleh pelayan dan hanya boleh digunakan apabila menyulitkan maklumat Sercet tidak boleh disertakan semasa penghantaran data.
Selepas pelanggan menyulitkan semua data permintaan mengikut peraturan tertentu, bahagian belakang memperoleh bahawa data yang diserahkan disulitkan dengan cara yang sama, dan kemudian membandingkan parameter tanda untuk melihat sama ada ia konsisten, itu bermakna data tidak diganggu semasa proses penghantaran.
Selain itu, pengesanan kesahan masa juga diperlukan, seperti parameter cap waktu, yang memerlukan ralat masa tidak boleh melebihi 5 minit sebelum dan selepas
Perkara lain ialah data diminta berulang kali tanda, ia membuat cache untuk menyimpan tanda, dan masa tamat tempoh 5 minit (bersamaan dengan masa di atas), tanda yang sama menunjukkan bahawa permintaan ini telah diminta berulang kali, dan kemudian ditolak
Pada asasnya ini adalah proses untuk memastikan keselamatan data, ketepatan masa, pencegahan pertindihan, dll.
sessionStorage atau localStorage menyimpan kata laluan khas yang dijana oleh latar belakang itu sendiri. Setiap permintaan dibawa melalui kepala dan data disahkan sah melalui latar belakang