認証


maple/sample

認証フィルター[Auth]の紹介

準備

  • Filter_DBAccessの設定
  • core/Auth.classとfilter/Filter_Auth.classを追加

使い方(基本)

  • グローバルフィルターにすればそれ以下のアクションに認証がかかる
  • maple.iniの記述
    [Auth]
    table = user
    user = login_id 
    passwd = passwd
    login = auth/form.html
  • htmlの記述(login用のhtmlには以下を含める)
    • {errorList->getMessages assign=action_name}
    • <input type="hidden" name="action" value="{$action_name.0}">
    • <input type="text" name="userID">
    • <input type="text" name="password">
    • <input name="submit_of_input" type="submit">(注意:submit_of_input_authとかにした方がいい)
  • DBのパスワードフィールドはcrypt($hoge, "Ap")にて暗号化する

使い方(認証レベルを使う)

  • グローバルmaple.iniの記述
    [Auth]
    table = user
    user = login_id 
    passwd = passwd
    level = user_level
    login = auth/form.html
  • それ以下の各maple.iniの記述
    • ユーザー権限が4以上ないとこのアクションは実行されない
      [Auth]
      auth_level = 4
  • 権限が低い場合は[View]にauth_errorを指定することで、別のエラー画面に飛ばす
    [Auth]
    auth_level = 4
    [View]
    auth_error = "auth/error.html"

設定項目の説明

設定名説明
table(必須)DBの認証用テーブル名を指定
user(必須)DBの認証用テーブルのユーザーアカウントフィールドを指定
passwd(必須)DBの認証用テーブルのユーザーパスワードフィールドを指定
levelDBの認証用テーブルのユーザー権限フィールドを指定
idDBの認証用テーブルのユーザーIDフィールドを指定
login(必須)ログイン用のテンプレート名を指定
auth_levelこのアクション実行に必要な権限レベル