Senty2はLaravel4で使用できる高機能認証パッケージでLaravel以外にFuelPHP、CodeIgntiterでも使用できます。パッケージの依存管理は、composerで行っていますので、composer.jsonにパッケージを追加記述して、composer updateを実行し、プロバイダーの追加とエイリアスの追加を行えば、使用できるようになります。
詳細は、Winroad徒然草の「Laravel4でSentry2パッケージの追加」、「Sentry2でデータベーステーブルの作成」を参照していただければ分かると思いますが、、簡単に手順を記載しておきます。
- composer.jsonに追加記述
"cartalyst/sentry":"2.0.*"
- composer updateの実行
laravelをインストールしているルートフォルダ(ディレクトリ)へ移動して、コマンドプロンプトからcomposer updateを実行します。 - app/config/app.phpにプロバイダーの追加記述
環境ファイルapp.phpの115行目にプロバイダーを追加します。'Cartalyst\Sentry\SenryServiceProvider',
- Senty::メソッド名で、使用できるようにするために同じくapp.phpの180行目にエイリアスを追加します。
'Sentry'=>'Cartalyst\Sentry\Facades\Laravel\Sentry',
- データベーステーブルの作成
ルートフォルダ(ディレクトリ)へ移動して、Artisanコマンドで、データベーステーブルを作成します。php artisan migrate --package=cartalyst/sentry
※packageの前のハイフォンは2個です。
※Artisanコマンドが初めての方は、先にmigrationsテーブルを作成して下さい。php artisan migrate:install
- 基本となるのグループを作成します。※最低AdninistratorsグループとUsersグループは作成した方がいいと思います。
- Adminユーザーを作成します。
- Loginコントローラーの作成
ルーターでログイン用のロジックを作成してもいいのですが、Login関連のメソッドを作成するために、Loginコントローラを作成します。 - Loginフィルターの作成
ログインしたユーザーによって閲覧できるサイトを振り分けるためにLoginフィルターを作成します。
以上の手順で作成していきたいと思いますが、1~7迄は、WinRoad徒然草でご紹介していますので、より実践的に使用するためにLoginコントローラの作成から次回以降、ご紹介していきたいと思います。
いつも参考にさせて頂いております!
Laravelを使って簡単なサービスを作ってみたところです。これからロールベースの認証を導入しようかと思ってます。
下記、タイポがありましたのでお知らせします。
3. app/config/app.phpにプロバイダーの追加記述
‘Cartalyst\Sentry\SenrySeviceProvider’,
ー>’Cartalyst\Sentry\SenrtyServiceProvider’,
5. データベーステーブルの作成
php artisan migrate –package=cartalyst/sentry