Ruby on Railsで認証機能を実装する方法を現役エンジニアが解説【初心者向け】

初心者向けにRuby on Railsで認証機能を実装する方法について現役エンジニアが解説しています。認証機能とはログインフォームなどにIDやパスワードを入力してユーザーを確認するものです。Ruby on Railsではgemを利用することで認証機能を作成することができます。

TechAcademyマガジンはオンラインのプログラミングスクールTechAcademy [テックアカデミー]が運営。初心者向けに解説した記事が4,000以上あります。現役エンジニアの方はこちらをご覧ください。

Ruby on Railsで認証機能を実装する方法について、TechAcademyのメンター(現役エンジニア)が実際のコードを使用して初心者向けに解説します。

Rubyについてそもそもよく分からないという方は、Rubyとは何なのか解説した記事を読むとさらに理解が深まります。

 

なお本記事は、TechAcademyのオンラインブートキャンプ、Ruby講座の内容をもとに紹介しています。

田島悠介

今回は、Rubyに関する内容だね!

大石ゆかり

どういう内容でしょうか?

田島悠介

Ruby on Railsで認証機能を実装する方法について詳しく説明していくね!

大石ゆかり

お願いします!

 

目次

 

認証とは

認証とは、Webアプリを作成した際に誰でもデータの入出力を出来るようにするのではなく、特定のユーザーを認証させて利用権限を確認することを言います。

多くのWebアプリでは、ユーザー名とパスワードなどのセットでユーザーが認証され、Webアプリを利用できるようになっています。

Ruby on Railsでは、ログイン画面などのフォーム入力欄にエラーがないかを確認するバリデーションを設定することが出来ます。この場合には空欄になっている場合のpresenceやパスワードの文字数を数えるlengthなどを一つ一つ設定していくことが必要になります。

これらの認証と同じことをRuby on Railsではgemを利用することで容易に実現することが出来ます。

[PR] Rubyのプログラミングで挫折しない学習方法を動画で公開中

Railsで認証機能を実装する方法

Ruby on Railsでは、公開されているライブラリが多数あり、gemと呼びます。認証機能を実装するためにはdeviseというgemを入れる必要があります。

Gemfileの中に、

gem 'devise'

と加筆し、

bundle install

をすることでdeviseというgemをインストールすることが出来ます。deviseの設定ファイルとdevise用のmodelを作成することで、利用できるようになります。

サンプルコード

(Gemfile)

gem 'devise'

 

(ターミナルで以下を打ち込み)

bundle install

rails g devise:install

rails g devise User

rails db:migrate

アドレスの末尾に「users/sign_up」を加えることでrails serverで以下の画面が表示されれば成功です。

 

筆者プロフィール

木村勇土

TechAcademyの現役メンター。

現在は行政書士事務所を運営しており、お客様にはプログラマーやフリーランサーも多い。
WordPressを中心とした自社のWebサイトの修正などを行なっている。

 

大石ゆかり

内容分かりやすくて良かったです!

田島悠介

ゆかりちゃんも分からないことがあったら質問してね!

大石ゆかり

分かりました。ありがとうございます!

 

TechAcademyでは、初心者でも最短4週間で、Ruby on Railsを使ったプログラミングを習得できる、オンラインブートキャンプを開催しています。

また、現役エンジニアから学べる無料体験も実施しているので、ぜひ参加してみてください。