Curry
PHP Framework

core

db

html

utility

BasicAuth

クラス概要

BasicAuthはPHPで行えるベーシック認証の機能を提供するクラスです。

Curry対応バージョン

バージョン 1.1.0 以降

クラスファイル位置

curry/utility/basic_auth.php

フィールド

公開されるフィールドはありません。

メソッド

メソッド名 アクセス 概要
setRequiedMessage public IDまたはパスワードが未入力の場合に表示されるメッセージを設定します。
setDeniedMessage public 認証失敗の場合に表示するメッセージを設定します。
setPromptMessage public IDとパスワードの入力を促すメッセージを設定します。
setMessages public setRequiedMessage、setDeniedMessage、setPromptMessageで設定が可能なメッセージを配列で一度に指定することができます。それぞれのメソッドに対応する配列キーとメッセージの組み合わせの配列で指定します。
キーはそれぞれ"required"、"denied"、"prompt"です。
setRetryEnabled public 認証失敗時にリトライ可能かどうかを設定します。
plain public 引数で指定したユーザーIDと非暗号化パスワードを、入力されたユーザーIDとパスワードと単純に比較し、一致するかを検査します。一致する場合は認証OKとします。一致しない場合は、リトライ可能な設定の場合は再度入力を促すダイアログを表示し、リトライ不可能な設定の場合は認証エラーとします。
crypt public 引数で指定したユーザーIDと暗号化パスワードを、入力されたユーザーIDとパスワードと比較し、一致するかを検査します。入力されたパスワードは暗号化し、引数で指定された暗号化パスワードと照合します。一致する場合は認証OKとします。一致しない場合は、リトライ可能な設定の場合は再度入力を促すダイアログを表示し、リトライ不可能な設定の場合は認証エラーとします。
file public 設定ファイル格納ディレクトリ内のauth.iniに定義されたユーザーIDとパスワードの組み合わせと、入力されたユーザーIDとパスワードと比較し、一致するものが存在するか検査します。一致するものが存在する場合は認証OKとします。一致しない場合は、リトライ可能な設定の場合は再度入力を促すダイアログを表示し、リトライ不可能な設定の場合は認証エラーとします。

auth.iniは[basic_auth]という固定のセクション内に、キーをユーザーID、値をパスワードと言う形式で保存します。以下の様な感じです。

[basic_auth]
hogeuser=hogepassword

引数でtrueが指定された場合はauth.iniに記述されているパスワードは暗号化されているという前提で検査を行い、入力パスワードを暗号化して比較します。falseが指定された場合はプレーンのパスワードとして比較します。