技術

[Rails] deviseのパスワード認証を半角英数字だけ許可する

投稿日:

こんばんは

ログイン機能を作る時ってdeviseが便利ですよね。
ですが、デフォルトのままだとパスワードのバリデーションは文字の長さにしか設定されていません。(8~255文字だったと思います。)

今回はパスワード認証に半角英数字だけを許可するバリデーションを設定します。

やり方は簡単でmodelにvalidatesを追加する形で出来ます。

VALID_PASSWORD_REGEX = /\A[a-z0-9]+\z/i
validates :password, format: { with: VALID_PASSWORD_REGEX }

とっても簡単ですね!

他にもstrong_password等のgemを使う方法もあります。(devise公式ではこちらを推奨しています)
How To: Set up simple password complexity requirements

それはまた別の機会に。。

-技術

執筆者:


comment

メールアドレスが公開されることはありません。 が付いている欄は必須項目です

このサイトはスパムを低減するために Akismet を使っています。コメントデータの処理方法の詳細はこちらをご覧ください

関連記事

[AWS S3] This XML file does not appear to have any style information associated with it. The document tree is shown below.

はじめまして。田中です。 AWSを触りはじめてから1ヶ月ちょっと。七転び八起きな …

no image

【Grunt】楽々デプロイ(grunt-rsync)

どうも、中田です。 gruntでアプリをデプロイするときにどうやったらいいかぁ〜 …

[Angular6] 一つのタグに複数の条件分岐を書く

こんにちは どうしても一つのタグに複数の条件分岐を書きたい時があるかと思います。 …

no image

RailsとAngularの省略できるコマンドいくつか

こんにちはコーテッグのこやまです。 私はTypoが多い方なので、コマンドは短い方 …

no image

[リアクティブフォーム]バリデーションチェックを任意のタイミングで走らせる。

Angularのリアクティブフォームで使っていると、 バリデーションを後付けした …