http ID 認証をシミュレートする PHP の例を紹介します。これは主に header() 関数と $PHP_AUTH_USER および $PHP_AUTH_PW グローバル変数を組み合わせて、基本的な認証メカニズムを作成します。
コードは次のとおりです: リーリーPHP で基本 ID 認証を実装するための手順を添付しました。 基本的な認証メカニズムは、header() 関数と $PHP_AUTH_USER および $PHP_AUTH_PW グローバル変数を組み合わせることで作成できます。通常、サーバーベースの認証の要求/応答プロセスは次のとおりです。 1. ユーザーが Web サーバーにファイルを要求します。ファイルが保護領域内にある場合、サーバーは応答データのヘッダーに 401 (不正ユーザー) 文字列を追加して応答します。 2. ブラウザが応答を確認すると、ユーザー名/パスワードのダイアログ ボックスが表示されます。 3. ユーザーはダイアログ ボックスにユーザー名とパスワードを入力し、[OK] をクリックして認証のために情報をサーバーに送り返します。 4. ユーザー名とパスワードが有効な場合、保護されたファイルがユーザーに表示されます。この確認は、認証されたユーザーが保護エリア内にいる限り有効です。 単純な PHP スクリプトは、適切な HTTP ヘッダーを送信して、クライアント画面にユーザー名/パスワードのダイアログを自動的に表示することで、HTTP 認証の要求/応答システムをシミュレートできます。 PHP は、ユーザー入力ダイアログ情報を $PHP_AUTH_USER 変数と $PHP_AUTH_PW 変数に保存します。 これらの変数を使用すると、非準拠のユーザー名/パスワード チェックのリストをテキスト ファイル、データベース、または任意の場所に保存できます。 注: $PHP_AUTH_USER、$PHP_AUTH_PW、および $PHP_AUTH_TYPE グローバル変数は、PHP がモジュールとしてインストールされている場合にのみ有効です。 CGI バージョンの PHP を使用している場合は、htaccess ベースの認証またはデータベース ベースの認証の使用に制限され、ユーザーが HTML フォームを介してユーザー名とパスワードを入力し、PHP が有効性チェックを完了できるようになります。 上記の例は、ユーザー名とパスワードが保存されている場所に関係なく、理論的には同一である 2 つのハードウェア エンコードされた値の検証チェックを示しています。 上記のデモ コードが、PHP が HTTP ID 認証をシミュレートする方法を誰もが理解するのに役立つことを願っています。 |