对不起,我有心理障碍:在服务器上进行用户身份验证后,我不确定应该将哪些内容发送到JavaScript前端(客户端)。我知道需要有一些控件供用户(用户/管理员)点击,但我不确定发送什么是安全的,什么不发送不安全。我被告知隐藏的控件不安全。我知道如何在服务器上实现用户身份验证。我理解,如果在服务器执行控制功能(在服务器上)之前单击控件以检查用户(用户/管理员)是否具有该控件的权限,则需要对服务器进行检查。我知道我可以设置一个变量并将其发送到前端,一旦收到它(Ajax响应)添加控件(appendChild)。如果我这样做,我觉得它不安全,因为浏览器(页面源)可以轻松查看所有执行此操作的代码。
答案 0 :(得分:1)
权限检查在服务器端,所以即使代码可见,为什么你害怕呢?
成功登录操作后,如果是单页应用程序,您可以将cookie发送到客户端的存储会话或JavaScript变量。
另一方面 - 登录后,您可以重定向到安全的地方,并使用所有必要的输入/字段显示HTML。没有登录的用户将看不到安全模板。
但始终记得不要相信来自客户端的任何数据,检查后端端的权限只是一件好事。