人力検索はてな
モバイル版を表示しています。PC版はこちら
i-mobile

PHPの認証に関する質問です。
オンラインでサンプルコードをいろいろ見ていますが、『認証中であるか?という処理は、$_SESSION["USER"]にユーザーIDを格納して、if(!isset($_SESSION["USERID"])でログイン中か判定する・・・。』と多くのサンプルが書かれています。
例えば
http://replication.hatenablog.com/entry/2014/06/30/005815

セッションにIDなどを保管してセキュリティー上問題ないのですか?
また、セッションに情報を保持せず、認証中である・・・という判定はできないのでしょうか?
PHP7.0で書いています。
よろしくお願いします。

●質問者: wsapp
●カテゴリ:ウェブ制作
○ 状態 :終了
└ 回答数 : 1/1件

▽最新の回答へ

1 ● TransFreeBSD
●100ポイント ベストアンサー

基本的に問題ありません。というか問題が無いようにしますし、すべきです。

phpでセッションと言うと$_SESSIONとかそのへんの機構を言いますが、phpに限らないITとしてのセッションと言うと、一連の流れといいますか、初めと終わりがある様なものを継げる存在と言いますか、それ全体といいますか。
http://e-words.jp/w/%E3%82%BB%E3%83%83%E3%82%B7%E3%83%A7%E3%83%B3.html
なので手段はどうあれ「認証中である」という状態自体がセッションだったりします。

phpのセッションも認証に限らずですが、そういった状態の管理をするための機構なので、認証状態を保管すること自体に何ら問題はありません。
ただし、それはそもそもセッションが強固であるという前提の上で、です。その辺、設定による所もあるようですので、その確認は重要でしょう。
http://www.phppro.jp/school/security/vol3/2
http://php.net/manual/ja/session.security.php
#家電に限らずマニュアルには色々注意書きがあるものです。
#ときに便利な使い方もあったりしますし、安全のためにも一読をおすすめします。


wsappさんのコメント
ご回答ありがとうございます。 大丈夫なように使えば問題ないということですね。 教えていただいたリンク先と、それらに関する事柄を念入りに読んでいます。 ありがとうございました。

wsappさんのコメント
新たな疑問ができましたので、新しく質問をつくりました。 お手すきな時にでも目を通していただければ幸いです。 http://q.hatena.ne.jp/1450772519

wsappさんのコメント
お目をお通しいただければ・・・と記載しましたが、TransFreeBSDさま同様、親切な方にお答えいただきまして解決いたしました。 お手を煩わせる前に報告いたします。 ありがとうございました。
関連質問

●質問をもっと探す●



0.人力検索はてなトップ
8.このページを友達に紹介
9.このページの先頭へ
対応機種一覧
お問い合わせ
ヘルプ/お知らせ
ログイン
無料ユーザー登録
はてなトップ