Pertanyaan saya berkaitan dengan keamanan JavaScript.
Bayangkan sebuah sistem otentikasi tempat Anda menggunakan kerangka kerja JavaScript seperti Backbone atau AngularJS , dan Anda membutuhkan titik akhir yang aman. Itu bukan masalah, karena server selalu memiliki kata terakhir dan akan memeriksa apakah Anda berwenang untuk melakukan apa yang Anda inginkan.
Tetapi bagaimana jika Anda membutuhkan sedikit keamanan tanpa melibatkan server? Apakah itu mungkin?
Misalnya, Anda memiliki sistem perutean sisi klien dan Anda ingin rute konkret dilindungi untuk pengguna yang masuk. Jadi Anda melakukan ping ke server menanyakan apakah Anda diizinkan untuk mengunjungi rute yang dilindungi dan Anda melanjutkan. Masalahnya adalah ketika Anda melakukan ping ke server, Anda menyimpan respons dalam sebuah variabel, jadi lain kali Anda pergi ke rute pribadi, itu akan memeriksa bahwa jika Anda sudah masuk (tidak ada ping ke server), dan tergantung pada respon itu akan pergi atau tidak.
Seberapa mudah bagi pengguna untuk memodifikasi variabel itu dan mendapatkan akses?
Pengetahuan keamanan (dan JavaScript) saya tidak bagus. Tetapi jika variabel tidak dalam lingkup global dan berada di bagian pribadi dari pola modul yang hanya memiliki getter tetapi tidak setter, bahkan dalam kasus itu, dapatkah Anda meretasnya?
manipulate any part of the sight without long lines
situs vs sight