花了一些时间阅读有关身份验证的信息,并注意到要做到这一点非常困难,所以我决定使用firebase-authentication对我的vue应用程序中的用户进行身份验证。
我正在列出此应用程序中使用的技术和流程,以显示每个零件的交互作用并清除问题:
因此,在我的Vue应用程序中,我显示了一个自定义登录表单,并使用它通过firebase对用户进行身份验证。用户登录后,我从自己的服务器(只是一个具有不同用户配置值的json)中检索了一些数据,这些数据定义了用户如何与应用程序进行交互(例如,他在应用程序中可以做什么或不能做什么) )。
如何检索此信息并以安全的方式在我的客户端应用程序中使用它?我的意思是,例如,说我在JSON中有一条信息来定义用户是普通用户还是管理员用户。如何避免用户修改服务器的响应并提升特权?
答案 0 :(得分:0)
您无法采取任何措施来阻止客户端DOM操作。如果可以通过JavaScript访问,则用户可以访问。您应该以一种敏感的信息和/或功能不依赖于客户端安全性的方式来实现应用程序(如果确实存在这种情况)。
您可以做的是防止对服务器的未经授权的访问。这是用于定义范围,ACL等的目的。如果精明的用户确实修改了响应数据,并且将其角色从user
更改为admin
,则您的响应中不应包含任何用于管理员的内容仅限用户。相反,只有在服务器代码已对请求进行身份验证/授权的情况下成功调用API后, 才能访问该信息。
从不信任客户端。这必须在服务器上完成。