总而言之,我们在前端使用Vue
,在后端使用Hapi JS
。前端使用MSAL.js
对用户进行身份验证,然后将访问令牌传递给后端。访问令牌用hapi-auth-jwt2
解码,并且validate()
函数返回{ isValid: true, credentials : { ps_ref: 12345, md_userid: asfasgsg@5874.com }}
。然后将此对象传递给路由的处理程序功能,该路由从我们的数据库和用户数据中提取身份验证组/用户角色(即Auid)并返回。
假设用户对象看起来像这样:
{
Auids: (4) ["user", "webadmin", "accounts"]
md_clock: 5678
md_picture: "./images/"
ps_fname1: "Test Name"
ps_surname: "Test Surname"
psname: "Test Name Test Surname"
psref: 125125
}
现在,我们想将此对象存储在Vuex中,但是,我们担心,对于在浏览器中安装了Vue Devtools的任何人或执行类似rootElementOfApp.__vue__.$store
我们的问题是:
有人在生产中访问Vuex有多容易?
如果公众很容易访问Vuex,Vuex是存储该对象的最佳方法吗?如果我们选择Vuex,是否应该对用户对象或其中的Auid进行编码?
答案 0 :(得分:1)
您存储在js / html / cookies中的所有内容都不是单独保存的。但这与您如何管理它有关。基本上,您可以将几乎所有内容存储在前端,只要不是对道德黑客有用的敏感数据即可。地址,合同号,银行帐户等内容。
诸如userIds(仅出于编程目的而长期使用)或用户角色之类的数据可以存储在前端。但是,如果您做对了,您的后端应用程序中也将始终具有所有客户端验证。
就Vue的开发工具而言,它们仅在开发模式下可用,而在生产模式下不可用。但是好黑客并不介意。