技術

[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 を使っています。コメントデータの処理方法の詳細はこちらをご覧ください

関連記事

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

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

ブラウザでRailsのrouting設定を確認する

こんにちは Railsでroutingを確認する時、コマンドでrails rou …

[Xcode] The executable was signed with invalid entitlements. でアプリを実機確認できない!

こんにちは。たなかです。 作ったiOSアプリを実機確認したくて、Xcodeからデ …

[SSL] let’s encryptの更新でエラー?!

どうも中田です。 無料でSSL証明書が取得できる今日この頃、いかがお過ごしでしょ …

[Angular] has no exported member ‘XXXLoginComponent’.

どうも中田です Angularでコンポーネント名を階層構造にあった名前にしようと …