Shoeisha Technology Media

CodeZine(コードジン)

特集ページ一覧

GrailsのAuthenticationプラグインによる認証

Groovy+GrailsでRailsなWeb開発 第5回

  • ブックマーク
  • LINEで送る
  • このエントリーをはてなブックマークに追加
2009/07/22 14:00

 この連載ではJavaプログラマを対象に、Groovyというスクリプト言語を使ってRuby on Railsライクな開発を行えるWebアプリケーションフレームワーク「Grails」を紹介します。今回は、Grails用のプラグイン「Authentication」を使い、アプリケーションに認証機能を組み込む方法について説明します。

目次

はじめに

 Webサイトでは、認証を必要とするものがあります。ユーザー名とパスワードを登録し、それらを使ってログインするとアクセスできるようになる、というものです。こうした認証機能をGrailsで実装するにはどうすればよいのでしょうか。

 ユーザーとパスワードをデータベースに登録し、それをチェックしてログイン処理する……といった仕組みを自分で作ることは可能です。が、もっと簡単にそれを行ってくれる機能がGrailsには用意されています。それは、「Authentication」というプラグインです。

対象読者

  • JSPを書くのは正直しんどい……と近頃感じる人。
  • Ruby on Railsスタイルの開発に興味があるという人。
  • MVCフレームワークをJavaで学びたい、という人。

認証とAuthenticationプラグイン

 Grailsというフレームワークは、比較的小さなものです。これ本体だけでは足りない機能というのもたくさんあります。が、こうしたものを後から追加して利用できるようにする仕組みが、Grailsには用意されています。それが「プラグイン」です。

 認証機能は、Grailsに標準で組み込まれてはいませんが、プラグインとして流通しています。これはいくつかのものがありますが、最も簡単に利用できるのは「Authentication」というプラグインでしょう。これはインストールするだけで、ユーザーの登録やログインのための基本機能が自動的に使えるようになってしまう、というものです。そのためにデータベースを用意したり、ドメインクラスを定義したりする必要もありません。ただインストールするだけで使えるようになってしまうのです。

 このAuthenticationは、grails.orgのプラグインのページで配布されています。

図1 Authenticationプラグインのページ。ここからファイルをダウンロードできる。
図1 Authenticationプラグインのページ。ここからファイルをダウンロードできる。

 ここから、「Download」のリンクをクリックして、最新版をダウンロードしてください。本記事執筆時、1.0というバージョンが最新版として配布されています。ここでは、このバージョンをベースに説明を行います。

 ダウンロードしたファイルは、「grails-authentication-1.0.zip」という圧縮ファイルになっています。これは、ファイルを展開などする必要はありません。このZipファイルのまま利用します。

プロジェクトにインストールする

 Grailsのプラグインは、個々のアプリケーションごとに、必要なものをインストールして利用します。前回までの記事で、gappというWebアプリケーションを作成しましたが、今回もこれをそのまま利用することにしましょう。

 まず、ダウンロードしたZipファイルを、アプリケーションのフォルダ(「gapp」フォルダ)の中にコピーしてください。そして、コマンドプロンプトを起動し、cdコマンドでアプリケーションフォルダの中にカレントディレクトリを移動します。そして、次のようにコマンドを実行してください。

grails install-plugin authentication
図2 コマンドプロンプトからgrails install-plugin authenticationを実行し、アプリケーションにauthenticationプラグインをインストールする。
図2 コマンドプロンプトからgrails install-plugin authenticationを実行し、アプリケーションにauthenticationプラグインをインストールする。

 これは、現在カレントディレクトリのアプリケーションにプラグインをインストールするためのコマンドで、「grails install-plugin プラグイン名」といった形で実行します。インストールが完了したら、コピーしたZipファイルは不要です。フォルダから取り除いてかまいません。


  • ブックマーク
  • LINEで送る
  • このエントリーをはてなブックマークに追加

著者プロフィール

  • 掌田 津耶乃(ショウダ ツヤノ)

    三文ライター&三流プログラマ。主にビギナーに向けたプログラミング関連の執筆を中心に活動している。 ※現在、入門ドキュメントサイト「libro」、カード型学習サイト「CARD.tuyano.com」を公開中。またGoogle+プロフィールはこちら。

バックナンバー

連載:Groovy+GrailsでRailsなWeb開発

もっと読む

All contents copyright © 2005-2019 Shoeisha Co., Ltd. All rights reserved. ver.1.5