• 締切済み

パスワード認証(Basic認証ではない方法)

PHPを使って施設の訪問予約システムを作ろうと思っています。 まず最初のページにユーザー名とパスワードを入力する認証画面を 作ろうと思います。 その際、この認証に成功しても、施設の管理者側(複数名いる)、利用者それぞれ異なったページへ移動させたいのですがどのようにすればよいのでしょうか? データベースを使わずにやりたいのですが、PHP初心者のためよくわかりません。 またサンプルのあるサイトがあればぜひそのURLを教えてください。

みんなの回答

回答No.3

たとえば、 Basic認証を利用する場合、 $_SERVER['PHP_AUTH_USER']を利用してログイン後の画面を変更する方法があるかと思います。 但し、Basic認証はログアウトと言う概念が無かったように思いますので、 運用において問題なければと言うことが前提となると思います。 私も初心者なので・・・・・・。

全文を見る
すると、全ての回答が全文表示されます。
回答No.2

DBを利用することをお奨めします。 と言うのもつくり方によりますが管理しやすいのとセキュリティーを施しやすいためです。(暗号化・・・)セキュリティーはお忘れなく(SQLインジェクション・・・)

全文を見る
すると、全ての回答が全文表示されます。
  • inu2
  • ベストアンサー率33% (1229/3720)
回答No.1

認証だけの機能は、DBがなくとも何とか実装することは可能ですが、予約システムを構築するのであれば、なにかとDBが無いと不便極まりないです たぶんDBなしで予約システムを構築するならば相当な困難が予測されます DBなしで予約システム作ってくれ と言われたら2~3年くらい遊んで暮らせるだけの報酬でも無い限り、個人的には作りたくありません 又、ログインが必要なサイトを構築する場合はセキュリティ知識や具体的な対策方法を知っていないと簡単に情報が漏れますよ 管理者用の管理サイトと利用者用のサイトを別に構築するのが手っ取り早いです 管理者も利用者も同じログイン画面からログインするよう構築することももちろん可能ですが、「管理」 という意味では あまり賢い方法ではないと思います

全文を見る
すると、全ての回答が全文表示されます。

関連するQ&A

  • BASIC認証のようなパスワード認証ありませんか?

    BASIC認証のようなパスワード認証できるプログラム、もしくは手法を探しています。 動作はBASIC認証で全く問題ないのですが、キャンセルボタンを押した後認証画面を閉じるようにしたい… と言われたのでプログラムによる方法を考えています。 (BASIC認証だとキャンセルボタンを押すと標準でエラーページに遷移するので) PHPやPerlによるパスワード認証のサンプルプログラムをいくつかDLしてきました。 ただ、ダウンロードしたサンプルソースでは、パスワードを入力後、ページの遷移を行った際に、 そのページからリンクを貼られているhtmlやPDFファイル等のURLページをダイレクト入力するとパスワードロックがかかりません。 PHPやPerlのソースを見てみるとPHPやPerlのソースにhtml表示させているように見受けられました。 もし、PDFファイル等にもロックをかけたい場合はPHPやPerlにソースを書けないですよね? PDFやワード等の参照もパスワードロックの場合PHPやPERLでパスワードロックをかけれるのでしょうか? で、下記が相談になります。 BASIC認証のようにフォルダ配下のどのページをアクセスしてもパスワード認証を聞かれるような サンプルソースがあるサイトは何処かにありませんか? (もしくは複数ページにロックをかけられるもの) もしくは、下記のようにBASIC認証をカスタマイズ設定できる方法。(下記はIE7が使用不可なので利用できません) http://blog.firstlife.jp/2009/06/28/basic%E8%AA%8D%E8%A8%BC%E3%81%AE%E3%83%A6%E3%83%BC%E3%82%B6%E3%83%BC%E5%90%8D%E3%83%91%E3%82%B9%E3%83%AF%E3%83%BC%E3%83%89html%E3%81%AE%E3%83%95%E3%82%A9%E3%83%BC%E3%83%A0%E3%81%A7%E5%87%A6%E7%90%86/ XOOPSをちょっと聞いたのですが、知識がなくとっつきにくい為、もう少し手軽に設置できるような方法はありませんでしょうか? よろしくお願いします。

    • ベストアンサー
    • HTML
  • Basic認証のパスワード

    Baisc認証のパスワードを以下のサイトを利用して作りました。 http://www.s-memo.net/sample/htaccess/index.php ここで、試しに ユーザ名にabcdefg パスワードにtest123456 と入力し、.htaccessを作成するボタンを押すと.htpasswd(ユーザー名とパスワード)欄に ユーザ:暗号化されたパスワード という形で表示されますが、ユーザ名、パスワードをそのまま同じものにして 再度、.htaccessを作成するボタンを押すと違う暗号化されたパスワードが表示されます。 ユーザー、パスワードが同じであれば、同じものが表示されると思っていましたが 毎回違った値だと照合できないのではないのでしょうか?

  • 携帯電話のwebページでphpによるパスワード認証を下記ページを参考に

    携帯電話のwebページでphpによるパスワード認証を下記ページを参考にして行っています。 参考URL http://www.kimd.jp/program/php/lesson04/sample04.html ここではパスワードが1つしか設定する方法が書かれていないのですが。このスクリプトを改造してパスワードを複数種類設定することが出来ませんでしょうか? たとえば、「1234」というワードでも「5473」と言うワードでもログインできるようにしたいと思っています。 私は初心者であまりPHPやプログラムには詳しくなく、このような配布されたプログラムを何とか利用できるレベルです。よろしくお願い致します。

    • ベストアンサー
    • PHP
  • PHPでの認証方法

    お世話になります。 現在PHP言語でのActive Directoryへの認証を考えています。 KADM5関数やLDAP関数等を使用するらしい事は分かったのですけれども、使い方がよく分からなくて困っています。 例えば、 サーバー名が「server01」 ドメインが「d01」 ユーザーアカウント「user01」 パスワードが「abc」 の認証を、直接WEBページのフォームからユーザーIDと パスワードを入れて、認証が出来ます基本的な例文などがございましたら、教えていただけましたらと思っています。 また、できましたら、パスワードの期限がきました時の変更などもweb上で、できましたらと思っています。 よろしくお願いいたします。

    • 締切済み
    • PHP
  • パスワード認証 ページに飛べない

    パスワード認証のページを作っています。 パスワードがあっているかどうかで、ページに飛ぶようにしたいのですが、どうも上手くいきません。どこがいけないのでしょうか? $user_pass = "test"; // パスワード $ok = "./ok.htm"; // 認証クリア後に飛ばす相対パス。 $error = "./error.htm"; // 認証ミス後に飛ばす相対パス。 $script = "./login.php"; // このファイル名 $doc_title = "テスト"; // タイトル /*-----------------------------------------------------------*/ /* ログイン処理 /*-----------------------------------------------------------*/ if(!isset($ver)) { $ver = '1.05.1'; } if(!isset($pass)) { $pass = $user_pass; // パスを指定 if($passwd == $pass) { header("Location: $ok"); // OKなら } elseif($passwd) { header("Location: $error"); // NGなら } } ?>

    • ベストアンサー
    • PHP
  • PHPでパスワード認証

    PHPでパスワード認証をしたいです。 パスワードは、複数あり、テキストボックスにそのどれかが入力されてログインボタンを押すと、パスワードが一致していれば、ログインを許可します。 認証のセッションは、クッキーに記憶して、一定期間有効にしたいです。 また、パスワードは適宜増える可能性があります。 宜しくお願いします。

    • ベストアンサー
    • PHP
  • LinuxOSのユーザ・パスワードを元にPHPで認証を行うには?

    LinuxOSのユーザ・パスワードを元にPHPで認証を行うには? 曖昧なタイトルで申し訳ありません. 環境は以下の通りです. CentOS5.4 Apache 2.2 PHP 5 MySQL5 現在,LinuxOSに存在するユーザ毎にウェブベースのコントロールパネルを設けたいため,ユーザ認証を掛けたいと思っているのですが,どのような方法で認証を実装すれば,LinuxOSで使用されている/etc/passwdと/etc/shadowを元にした認証が可能なのか分からず,質問させていただきました. 流れとしては以下の通りです. ユーザ名・パスワードを入力 → ユーザが存在しなかったりパスワードが違えば認証拒否 ↓ Linuxにユーザが存在していて,且つシステムパスワードと一致すれば承認. この認証はPAM認証(?)で可能でしょうか? また,そうであれば,PHPからPAM認証を行うには,どのような環境整備が必要でしょうか? 参考サイトでもかまいませんので,ご教授いただけると幸いです. よろしくお願いします.

    • ベストアンサー
    • PHP
  • MySQLでパスワードをrequireする意味

    MySQLでデータベースを作成して、データベース認証させてコンテンツを表示するプログラムを書いているのですが、パスワードやユーザー名をルートディレクトリの外に置いてrequire_onceする意味が今ひとつわからないので教えて下さい。 require_once('../../../DBparameter.php'); // DBparameter.phpの中にパスワードやユーザー名 として、ルートディレクトリの外にDBparameter.phpを置けば確かに、パスワードやユーザー名を見ることはできませんが、このプログラムが存在するフォルダ内をのぞけるぐらいの詳しい人であれば、このプログラムを見るのは簡単にできると思うんですが、そうすると、 $con = mysql_connect(host, username, password); などとしてデータベースを開き、結局はデータベース内の情報を抜かれてしまうような気がするのですが、どうなんでしょうか? 確かに、データを抜き取るためのプログラムを他人のドメインにアップロードするのは簡単ではないので、ほとんど無理だとは思うんですが、それならばスクリプト内にパスワードやユーザー名をそのまま書いてもいいのではないかという気がするんです。

    • ベストアンサー
    • MySQL
  • basic認証を何度も行うには

    いつもお世話になります。 htmlにて入力されたID、パスワードを元に、サーブレットからあるページへアクセスし、そのページではbasic認証となっているのですが、java.net.Authenticatorクラスを使用してbasic認証を行う、という簡単なWebアプリケーションを作成しています。 サーブレットでは以下の実装を行っているのですが(抜粋)、 -------------------------ここから String username = req.getParameter("username"); String password = req.getParameter("password"); Authenticator.setDefault(new HttpAuthenticator(username, password)); URL url = new URL("[basic認証が必要なページのURL]"); HttpURLConnection connection = (HttpURLConnection)url.openConnection(); -------------------------ここまで この実装では、一度認証が成功すると、以降、どのようなID、パスワードを入力しても(間違ったものを入力しても)認証に成功してしまいます。 正しいID、パスワードの時のみ認証に成功させるようにするにはどうすればよいでしょうか。 宜しくお願い致します。

    • ベストアンサー
    • Java
  • ユーザー名、パスで認証して、ユーザのマイページを開く方法

    この教えてgooみたいに ユーザ名、パスワードで認証して そのそのユーザ名のページに飛んでいくと言うのを作りたいのですが どのようにしたらいいでしょうか? 携帯電話の利用も考慮に入れて作りたいと思っています。 *php + mysql の利用を予定しています。 いつも質問ばかりでスミマセン。。 宜しくお願いいたします。

    • ベストアンサー
    • PHP
このQ&Aのポイント
  • 現在使われているNTTの1Gビット回線は2年後に使えなくなるのでしょうか?
  • 電話セールスで10Gビットに乗り換えを勧められましたが、本当なのでしょうか?
  • ひかりTVのサービスやISPぷららに関しての質問です。
回答を見る

専門家に質問してみよう