Reactjs 是否可以篡改反应状态以绕过安全措施?

Reactjs 是否可以篡改反应状态以绕过安全措施?,reactjs,Reactjs,我有两个部分。一个组件,用户必须使用它登录,另一个组件显示一些内容 我想通过让一个组件具有某种反应状态来实现我的应用程序,该状态告诉它呈现登录组件或另一个组件 如果我这样做,客户端是否可以手动设置状态,从而绕过登录屏幕并显示内容 编辑:添加了一些示例代码 渲染(){ 如果(本州授权){ 返回 }否则{ 返回 } } 考虑到此代码,考虑到只有组件能够将授权的状态设置为真,客户端是否可以通过手动设置状态来解决此问题?例如,通过chrome react开发工具或其他什么?客户端JavaScript

我有两个部分。一个组件,用户必须使用它登录,另一个组件显示一些内容

我想通过让一个组件具有某种反应状态来实现我的应用程序,该状态告诉它呈现登录组件或另一个组件

如果我这样做,客户端是否可以手动设置状态,从而绕过登录屏幕并显示内容

编辑:添加了一些示例代码


渲染(){
如果(本州授权){
返回
}否则{
返回
}
}


考虑到此代码,考虑到只有
组件能够将
授权的
状态设置为
,客户端是否可以通过手动设置状态来解决此问题?例如,通过chrome react开发工具或其他什么?

客户端JavaScript在设计上是不安全的,即用户完全控制在用户浏览器中运行的脚本。考虑到用户在本地有足够的访问权限,代码始终可以读取和修改。适用于客户端代码的安全措施只会使此过程更加复杂

这与安全性无关,只要对敏感数据的访问由后端控制

当然,可以更改组件状态并显示不应该显示的组件。例如,React dev工具可用于将
authorized
设置为
true


用户基本上破坏了自己的应用程序体验。由于用户跳过了后端身份验证过程,将显示没有敏感数据的空白组件。

客户端JS在设计上不安全。浏览器中运行的所有内容都可能被用户篡改和利用。授权和身份验证应在服务器端执行。实际的身份验证将在服务器端执行。登录组件将调用服务器。但我的问题主要是关于客户端呈现的——客户端是否可以简单地更改react状态,从而根本不呈现登录组件。是的。它将显示未填充数据的内容组件。因为后端没有为未经授权的用户提供数据。@estus我添加了一些代码的编辑。那么有什么办法可以解决我的问题吗?到底是什么问题?如果这是个问题,那么就没有安全问题。哦,对不起,你是说只要登录屏幕保护的所有东西都有安全性,那么就没有安全问题?没错。考虑到用户可以完全控制在其浏览器中评估的脚本,这是我们唯一的选择。