- 浏览: 43784 次
- 性别:
- 来自: 大连
文章分类
最新评论
-
wangluo19:
刚刚好解决了我的问题,原来session factory可以把 ...
hibernate annotations和hbm.xml配置文件并存配置 -
vivei:
能者为师
ruby 1,9 多字节字符
使用restful_authentication插件时,进行更新密码操作时,如果传来密码为空时,会发现有关密码验证空值验证会失效
这是因为在
by_password.rb文件中,是这样记录的
# Stuff directives into including module def self.included(recipient) recipient.extend(ModelClassMethods) recipient.class_eval do include ModelInstanceMethods # Virtual attribute for the unencrypted password attr_accessor :password validates_presence_of :password, :if => :password_required? validates_presence_of :password_confirmation, :if => :password_required? validates_confirmation_of :password, :if => :password_required? validates_length_of :password, :within => 6..40, :if => :password_required? before_save :encrypt_password end end # #included directives
def password_required? crypted_password.blank? || !password.blank? end
此时crypted_password存在, crypted_password.blank?返回false, 而!password.blank?也返回false
所以password空值验证就失效了
validates_presence_of :password, :if => :password_required?
解决这个问题可以在更新之前,把crypted_password设置成nil
@user = User.find_by_id(params[:id]) @user.crypted_password = nil if @user.update_attributes(:password => params[:password], :password_confirmation => params[:password_confirmation]) flash.now[:notice] = "success" else flash.now[:notice] = "error" end
发表评论
-
rails 开源blog typo
2011-12-26 16:23 697rails open source blog: htt ... -
ROR网站
2011-07-07 10:56 912# gems http://rubygems.org/ ... -
Rail3 Plugs
2011-02-11 11:24 730Rails3 Plugs Gemfile [1] t ... -
rails3 update_all 使用:order, :limit条件时,忽略条件问题
2011-02-11 11:08 1290这个bug是在使用delay_job(2.1.2)查出来的,后 ... -
Notifications in Rails 3
2011-02-11 10:34 1036249: Notifications in Rails 3 ... -
rails3 jquery ajax
2011-01-30 14:56 2548rails3中使用非form提交的ajax操作,这里使用的js ... -
插件扩展(2)
2011-01-28 16:41 812ruby:1.9.2 rails3.0.3 学习编写 ... -
插件扩展
2011-01-28 11:24 797在ruby on rails3 的guides,插件扩展中有这 ... -
rails3 flash 清除问题
2011-01-05 21:35 1199rails3请求之后,flash内容没有被清除? fl ... -
rails3 更新时间问题
2010-12-18 21:52 1257rails3 更新时间问题(updated_at) (未完) ... -
Ruby基本数据类型
2010-12-09 08:55 928d (转)http://blog.csdn.net/fore ... -
ruby 1,9 多字节字符
2010-12-08 08:53 957ruby 1.9 String类 length ... -
Here document
2010-12-07 08:55 780Here document 用于引入一段较复杂的内容, ... -
About Resouce
2010-12-02 21:40 832关于RESTful风格的URL设计 Singul ... -
Migration and Database Column Types
2010-11-30 23:09 944rails下迁移类与数据库类型对照表: M ... -
rails3 scope dead???
2010-11-29 18:37 1366看到一篇关于rails中是否还继续推荐使用scope的文章 ... -
Ruby Blocks
2010-11-22 08:41 862Ruby Blocks Block构成 ... -
each, map, collect
2010-11-22 08:38 751each, map, collect arr = ... -
使用cookie的session
2010-11-22 08:36 760使用cookie 的session 修改/depot/ ... -
Validation Helpers(数据验证)
2010-11-22 08:33 742validates_acceptance_of # c ...
相关推荐
`restful-authentication`的核心组件包括会话管理、密码哈希存储、基于角色的权限控制等。在使用`restful-authentication`时,开发者需要配置数据库迁移,创建必要的模型和控制器,以及调整路由以支持认证流程。 在...
这个过程通常涉及到密码哈希和盐值,以确保密码安全。 2. **JWT生成**:服务器使用私钥对Header和Payload进行编码(Base64URL无填充编码),然后将这两个编码后的字符串用"."连接。接着,使用私钥对整个字符串进行...
**Flask_Authentication** 是一个基于 Python 的轻量级框架,用于在 Flask 应用程序中实现用户认证和授权。Flask 是一个微型 web 框架,它以其灵活性和简洁性受到开发者喜爱,而 Flask_Authentication 则是为 Flask ...
在当今信息技术飞速发展的时代,RESTful API已经成为构建互联网应用的基础。RESTful API提供了一种简单、高效、与语言无关的方法来构建Web服务。Python作为一种广泛使用的高级编程语言,以其简洁明了的语法、丰富的...
使用 rest-auth-proxy 微服务rest-auth-proxy 是一个基于 Java 的 restful ldap-authentication 微服务,可用于根据 ldap 和活动目录对用户进行身份验证。 它充当调用应用程序和 ldap 服务器之间的身份验证代理。 ...
Node.js基于Chrome V8引擎,其非阻塞I/O模型和事件驱动架构使得它非常适合于构建高性能的网络应用,包括RESTful API。 2. **REST API**:REST (Representational State Transfer) 是一种网络应用程序的设计风格和...
2008年5月更新了一些功能。 “稳定的较新版本”: : ““经典”(向后兼容)版本”: : “实验版”: : (更多模块化,需要测试和审查) 重要说明:如果您升级站点,则除非使用--old-passwords,否则现有的用户...
这可能涉及到向服务器发送用户名和密码,或者使用令牌(token-based authentication)进行认证。C#的HttpClient类可以方便地添加HTTP头以包含这些认证信息。 然后是“SQLite”数据库的使用。SQLite是一个轻量级的...
CAS(Central Authentication Service)是一种开源的单点登录协议和服务实现。它旨在减轻单一Web应用的登录流程,并为多个服务提供一个集中式的认证机制。CAS支持多种认证协议,包括但不限于HTTP Basic、...
Shiro 内部的 `AuthenticationInfo` 和 `AuthenticationToken` 类参与这一过程,`Realm` 负责实际的认证逻辑,比如查询数据库验证用户名和密码。 2. **密码加密**:为了保护用户密码不被明文存储,Shiro 支持多种...
5. **认证和授权**:用户登录涉及身份验证(Authentication)和授权(Authorization)。认证通常是通过校验用户名和密码完成,而授权则是确定用户可以访问哪些资源。在RESTful服务中,常用的认证方式有Basic Auth、...
**WCF RESTful服务表单身份验证** WCF(Windows Communication Foundation)是微软提供的一种用于构建分布式应用程序的服务框架,它支持多种通信模式,包括REST(Representational State Transfer)。RESTful服务以...
"Authentication-React_bcrypt"项目就是这样一个示例,它演示了如何在React应用中集成bcrypt库进行用户密码的安全存储和验证。bcrypt是一种流行的密码哈希算法,特别适合于存储用户的敏感信息,如密码。 首先,我们...
- **API接口**:Keystone提供了一套RESTful API接口,允许开发者通过编程方式调用服务。 #### 五、Keystone与其他OpenStack服务的集成 Keystone作为OpenStack的核心服务之一,在整个OpenStack架构中起着至关重要的...
JWT(JSON Web Token)则是一种轻量级的身份验证机制,而Swagger则是一个用于设计、构建、文档化和使用RESTful web服务的工具。在这个CRM(客户关系管理)系统中,这三者共同构建了一个安全且易用的后台接口。 首先...
8. **安全性**:在实现用户认证时,必须考虑安全性问题,如密码哈希和盐值加密,防止SQL注入,以及防御跨站脚本(XSS)和跨站请求伪造(CSRF)攻击。 9. **测试**:为了确保应用的功能性和安全性,开发者通常会编写单元...
本文将深入探讨如何利用Spring Boot、CAS 5.3、Shiro、Pac4J这四个强大的工具来构建一个高效且用户友好的REST接口,以获取CAS(Central Authentication Service)票据,避免用户被重定向到CAS服务器的登录页面。...
#RESTful Web服务基本身份验证 基本身份验证是保护任何URL的最简单方法。 用户应具有服务器访问URL的权限。 这是容器管理的身份验证。 #什么是身份验证? 是识别可以访问系统的用户的过程。 Http基本身份验证是...