Ruby   发布时间:2022-04-03  发布网站:大佬教程  code.js-code.com
大佬教程收集整理的这篇文章主要介绍了ruby-on-rails – 随机生成的密码Rails 3.1大佬教程大佬觉得挺不错的,现在分享给大家,也给大家做个参考。
为了一个新的网络应用程序的目的,我需要在我的注册页面(仅限管理员)只有一个电子邮件字段.

事情是,在轨道上完全是新的,所以甚至基本的东西,对我来说真的很困难…

使用Railscast#270创建了我的身份验证,使用has_secure_password方法.
现在,一切工作都很好,我不需要所有这些恶棍…
我也想使用Action Mailer将生成的密码发送到他的电子邮件地址.
一个十六进制(8)的密码将是完美的(我已经看到了SecureRandom,但似乎被贬值)

Users_Controller:

class UsersController < ApplicationController
  skip_before_filter :is_connected?,:only => [:new,:create]

  def new
    @user = User.new
  end

  def create
    @user = User.new(params[:user])
    if @user.save
      # Tell the Mailer to send a welcome Email after save
      Mailer.confirm_email(@user).deliver

      redirect_to root_url,:notice => "Signed up!"
    else
      render "new"
    end
  end
end

user_R_586_11845@odel:

class User < ActiveRecord::Base
  attr_accessible :email
  has_secure_password
  validates_presence_of :password,:email,:on => :create
end

现在,在我看来,我有2个字段.但正如我刚才所说,我只想要一个.
我想继续使用has_secure_password巫婆似乎提供了一个很好的安全关于哈希/盐.

解决方法

Rails提供ActiveSupport :: SecureRandom(根据Ruby版本)只是Ruby的SecureRandom的桥梁,或者在旧版本的Ruby上重新实现它(如果我的内存正确,SecureRandom在1.8.7中被添加)

现在,Rails支持的所有Ruby版本都已经不再需要SecureRandom内置的ActiveSupport :: SecureRandom,并已被弃用. SecureRandom本身无处可去 –

require 'securerandom'
SecureRandom.hex(8)

应该做的很好(你可能想虑SecureRandom.urlsafe_base64更紧凑的表示相同数量的实际随机性)

大佬总结

以上是大佬教程为你收集整理的ruby-on-rails – 随机生成的密码Rails 3.1全部内容,希望文章能够帮你解决ruby-on-rails – 随机生成的密码Rails 3.1所遇到的程序开发问题。

如果觉得大佬教程网站内容还不错,欢迎将大佬教程推荐给程序员好友。

本图文内容来源于网友网络收集整理提供,作为学习参考使用,版权属于原作者。
如您有任何意见或建议可联系处理。小编QQ:384754419,请注明来意。