在 Vuex 中存储敏感数据
Storing sensitive data in Vuex
总而言之,我们在前端使用 Vue
,在后端使用 Hapi JS
。前端使用 MSAL.js
对用户进行身份验证,然后将访问令牌传递给后端。访问令牌使用 hapi-auth-jwt2
和 validate()
函数 returns { isValid: true, credentials : { ps_ref: 12345, md_userid: asfasgsg@5874.com }}
解码。然后将此对象传递给路由的处理函数,该函数从我们的数据库和用户数据中提取身份验证 groups/user 角色 (i.e.Auids) 和 returns。
假设用户对象如下所示:
{
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
[ 的任何人都可以看到它=18=]
我们的问题是:
有人在生产环境中访问 Vuex 有多容易?
如果通过 public 访问 Vuex 足够容易,Vuex 是存储此对象的最佳方式吗?如果我们选择 Vuex,我们应该对用户对象或至少其中的 Auids 进行编码吗?
您存储在 js/html/cookies 中的所有内容都不会单独保存。但这都与您将如何管理它有关。基本上你可以在前端存储几乎所有的东西,只要它不是可用于道德黑客的敏感数据。地址、合同号、银行账户等内容
userIds(只要仅用于编程原因)或用户角色等数据可以存储在前端。但是如果你做对了,你总是在你的后端应用程序中也有每个客户端验证。
就vue的开发工具而言,它们仅在开发模式下可用,在生产模式下不可用。但是一个好的黑客不介意。
总而言之,我们在前端使用 Vue
,在后端使用 Hapi JS
。前端使用 MSAL.js
对用户进行身份验证,然后将访问令牌传递给后端。访问令牌使用 hapi-auth-jwt2
和 validate()
函数 returns { isValid: true, credentials : { ps_ref: 12345, md_userid: asfasgsg@5874.com }}
解码。然后将此对象传递给路由的处理函数,该函数从我们的数据库和用户数据中提取身份验证 groups/user 角色 (i.e.Auids) 和 returns。
假设用户对象如下所示:
{
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
[ 的任何人都可以看到它=18=]
我们的问题是:
有人在生产环境中访问 Vuex 有多容易?
如果通过 public 访问 Vuex 足够容易,Vuex 是存储此对象的最佳方式吗?如果我们选择 Vuex,我们应该对用户对象或至少其中的 Auids 进行编码吗?
您存储在 js/html/cookies 中的所有内容都不会单独保存。但这都与您将如何管理它有关。基本上你可以在前端存储几乎所有的东西,只要它不是可用于道德黑客的敏感数据。地址、合同号、银行账户等内容
userIds(只要仅用于编程原因)或用户角色等数据可以存储在前端。但是如果你做对了,你总是在你的后端应用程序中也有每个客户端验证。
就vue的开发工具而言,它们仅在开发模式下可用,在生产模式下不可用。但是一个好的黑客不介意。