我正在尝试了解反应还原应用程序中的安全性如何工作
这是一个示例缩减器代码
import { combineReducers } from 'redux'
import {
LOGIN_REQUEST, LOGIN_SUCCESS, LOGIN_FAILURE, LOGOUT_SUCCESS
} from './actions'
function auth(state = {
isFetching: false,
isAuthenticated: localStorage.getItem('id_token') ? true : false
}, action) {
switch (action.type) {
case LOGIN_REQUEST:
return Object.assign({}, state, {
isFetching: true,
isAuthenticated: false,
user: action.creds
})
case LOGIN_SUCCESS:
return Object.assign({}, state, {
isFetching: false,
isAuthenticated: true,
errorMessage: ''
})
case LOGIN_FAILURE:
return Object.assign({}, state, {
isFetching: false,
isAuthenticated: false,
errorMessage: action.message
})
case LOGOUT_SUCCESS:
return Object.assign({}, state, {
isFetching: true,
isAuthenticated: false
})
default:
return state
}
}
本地存储的安全性如何。客户端(浏览器)上的某个人可以在本地存储中篡改令牌吗?
此外,我正在使用boolen isAuthenticated在整个应用程序中使用。是否可以通过在浏览器上以某种方式手动将其设置为true来绕过安全性?
有人能指出任何提供良好安全性的模式。以下是我正在考虑实施的流程