Сделать LocalStorage Data только для чтения - PullRequest
0 голосов
/ 15 октября 2018

Я работаю над приложением AngularJs.

Я храню данные в localStorage как

localStorageService.set("selectedUserCategory",'Circle');

Теперь, когда я вижу данные браузера LocalStorage

- Приложение
---- LocalStorage

Я нахожу мой key-value как

selectedUserCategory: 'Circle'

Но эти данные редактируемые .то есть

Если я редактирую данные из Circle в Ci через сам браузер, они сохраняются как Ci, и это может оказаться вредным, потому что любой может изменить данные оттуда.
Поэтому я подумал оделая это только для чтения .Есть ли способ сделать это?

Также есть ли способ защитить мои данные localStorage?
Поскольку данные легко читаются, я должен их зашифровать и затем сохранить ??

1 Ответ

0 голосов
/ 15 октября 2018

Как сказал @Carcigenicate, ничто не является безопасным, если оно находится в браузере.Еще один шаг, который вы можете сделать, это сохранить зашифрованные данные в локальном хранилище.Так что обычному пользователю будет сложно редактировать.И если он редактирует, он не будет расшифровываться, и, таким образом, вы можете сделать недействительными следующие задачи.

Чтобы предотвратить дальнейшее, вы можете обфусцировать / минимизировать ваши файлы javascript, чтобы обычному пользователю было трудно добраться до вашего алгоритма шифрования.

Или, если возможно, зашифровать значения с сервера и с использованием открытого ключа, только логика дешифрования будет на внешней стороне.Таким образом, даже если пользователь получает ваши данные ( И открытый ключ, даже ), он не сможет зашифровать их (без вашего личного ключа), поэтому он не сможет изменить данные.

веб-токен JSON использует этот принцип, посетите https://jwt.io/

...