アクセス制御

概要

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

ドキュメント

普通のアクセス制御

http://search.cpan.org/perldoc?Catalyst::Manual::Tutorial::05_Authentication

役割(role)を持たせたアクセス制御

http://search.cpan.org/perldoc?Catalyst::Manual::Tutorial::06_Authorization

ロールの具体的な設定方法

選択したストアモジュールのマニュアルのroleの項を参考にする。

  • Catalyst::Plugin::Authentication::Store::DBIC
  • Catalyst::Plugin::Authentication::Store::Htpasswd::User
  • など

Catalyst::Plugin::Authentication::Store::Htpasswd

ロールはHTPASSWDファイルの第3フィールドにカンマ区切りで記述する。詳しくはここ


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

Last-modified: 2011-03-30 (水) 03:54:48 (2732d)