Warning: file_get_contents(/data/phpspider/zhask/data//catemap/5/ruby/24.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181

Warning: file_get_contents(/data/phpspider/zhask/data//catemap/0/email/3.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Ruby on rails Rails对象和变量存储在哪里?是否允许用户访问它们?_Ruby On Rails_Ruby_Security - Fatal编程技术网

Ruby on rails Rails对象和变量存储在哪里?是否允许用户访问它们?

Ruby on rails Rails对象和变量存储在哪里?是否允许用户访问它们?,ruby-on-rails,ruby,security,Ruby On Rails,Ruby,Security,当我们在控制器/视图中创建新对象和变量时,它们存储在哪里;在浏览器的客户端,还是在服务器端 我目前在控制器和视图中的对象和变量中都存储了我不希望任何用户访问的信息,例如身份验证令牌等。变量和对象本身存储在服务器上 请记住,您的网站和其他任何网站一样,都是一个应用程序,代码中的变量和对象仅存在于该代码中。如果愿意,您可以选择在视图中输出它们的值,但如果您选择不输出,则用户无法获取它们。只有在您不将变量和对象写入磁盘、数据库或mem缓存以实现持久性或数据共享的情况下,变量和对象才会存储在服务主机的内

当我们在控制器/视图中创建新对象和变量时,它们存储在哪里;在浏览器的客户端,还是在服务器端


我目前在控制器和视图中的对象和变量中都存储了我不希望任何用户访问的信息,例如身份验证令牌等。

变量和对象本身存储在服务器上


请记住,您的网站和其他任何网站一样,都是一个应用程序,代码中的变量和对象仅存在于该代码中。如果愿意,您可以选择在视图中输出它们的值,但如果您选择不输出,则用户无法获取它们。

只有在您不将变量和对象写入磁盘、数据库或mem缓存以实现持久性或数据共享的情况下,变量和对象才会存储在服务主机的内存中

这些其他存储是否可以被访问/入侵是另一个问题,不适合堆栈溢出


有时,在大型集群/负载平衡系统上,我们必须将会话数据、购物车、cookie等写入某种共享存储,因为我们无法确定哪台主机将接收用户的连接,并且所有服务器都必须能够接收另一台主机中断的连接。安全性始终是一个问题,但在这些系统中,它变得更加困难,因为有更多的运动部件。但是,对于小型的单主机服务器,您应该可以在服务器内存中使用。

。您的用户将无法访问您的对象。+1,但我要指出的是,当代码运行时,变量不是存储在数据库中,而是存储在服务器的内存中。