* アクセス制御 [#c5d325ae]

** 概要 [#a299108e]
+ DBやテキストファイル(HTPASSWD)にユーザIDとパスワードを登録する。
+ 各種アクセス制御モジュールをロードするようにアプリケーションクラスに下のような記述をする。
 Authentication
 Authentication::Credential::Password
 Authentication::Store::Htpasswd
 Authorization::Roles
+ アクションクラスに下のような記述をし、ユーザ確認できなければログイン画面に飛ばすようにする。
 if (!$c->user_exists) {
     $c->res->redirect($c->uri_for('/login'));
   return 0;
 }
+ アプリケーションルートクラス(MyApp::Controller::Root)のautoメソッドに上のような記述をすれば、全てのアクションクラスにアクセス制御をかけられる。

** ドキュメント [#u90da186]
*** 普通のアクセス制御 [#m9e291e4]
http://search.cpan.org/perldoc?Catalyst::Manual::Tutorial::05_Authentication

*** 役割(role)を持たせたアクセス制御 [#j0aac160]
http://search.cpan.org/perldoc?Catalyst::Manual::Tutorial::06_Authorization

*** ロールの具体的な設定方法 [#q773a7a5]
選択したストアモジュールのマニュアルのroleの項を参考にする。
- Catalyst::Plugin::Authentication::Store::DBIC
- Catalyst::Plugin::Authentication::Store::Htpasswd::User
- など

** Catalyst::Plugin::Authentication::Store::Htpasswd [#tfd5ac75]
ロールはHTPASSWDファイルの第3フィールドにカンマ区切りで記述する。詳しくは[[ここ>http://search.cpan.org/perldoc?Catalyst::Plugin::Authentication::Store::Htpasswd::User]]。

トップ   編集 差分 バックアップ 添付 複製 名前変更 リロード   新規 一覧 検索 最終更新   ヘルプ   最終更新のRSS