ruby-on-rails – 使用Ruby on Rails的angular.js中的安全性

进行身份验证的最佳方式是什么?

在前端我使用Angular.js

在后端:Ruby on Rails

Rails应用程序使用API​​作为我的前端.

更新:
这将是单页应用程序.
前端将在Angular.js中开发,后缀为Ruby on Rails.
在理想的情况下,我想建立后端作为json返回的资源的集合.

搜索最佳的安全实施方法.

用户打开应用程序时,我需要检查用户是否进行身份验证.
如果没有 – 去登录页面,
如果认证 – 打开他想要并从后端返回所需的资源.

我认为我需要在客户端存储auth令牌.
什么是最好的方法生成它,或者Rails已经为我生成了它?

解决方法

我根本不知道Angular.JS,但是我会尝试为您提供可以使用任何 Javascript框架的rails的一般信息.

对于身份验证,您只需要:

>用户模型
>一个处理登录的控制器,该方法检查用户登录/密码,创建一个具有所需信息的会话对象(会话存储在服务器端,客户端使用一个cookie将每个请求关联到一个会话)
>用于处理注销的控制器,基本上只会破坏用户的会话

你有一个很好的实现in the rails tutorial here,或者你可以找到几个插件(authlogic似乎是stackoverflow usershere的推荐).

然后,使用静态HTML页面或AJAX处理身份验证之间几乎没有区别:

> HTML请求将向控制器发送登录名和密码,这将在会话创建后自动将其重定向到另一个内部页面
>在AJAX中,客户端的JavaScript应该发送ajax请求,查找服务器的答案(成功/失败)并启动适应的动作(如果失败,消息如果成功则重定向)

在这两种情况下,重要的是检查用户是否在每个控制器上进行身份验证,否则任何人都可以启动操作或访问内部信息.

相关文章

validates:conclusion,:presence=>true,:inclusion=>{...
一、redis集群搭建redis3.0以前,提供了Sentinel工具来监控各...
分享一下我老师大神的人工智能教程。零基础!通俗易懂!风趣...
上一篇博文 ruby传参之引用类型 里边定义了一个方法名 mo...
一编程与编程语言 什么是编程语言? 能够被计算机所识别的表...
Ruby类和对象Ruby是一种完美的面向对象编程语言。面向对象编...