アクセス制御
概要
- 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;
}
- アプリケーションルートクラス(Missha::Controller::Root)のautoメソッドに上のような記述をすれば、全てのアクションクラスにアクセス制御をかけられる。
ドキュメント
普通のアクセス制御
http://search.cpan.org/~jrockway/Catalyst-Manual-5.701003/lib/Catalyst/Manual/Tutorial/Authentication.pod
役割(role)を持たせたアクセス制御
http://search.cpan.org/~jrockway/Catalyst-Manual-5.701003/lib/Catalyst/Manual/Tutorial/Authorization.pod