プロが教える店舗&オフィスのセキュリティ対策術

PHP+MySQLでこれから構築を考えているところです。
ログイン後、プロダクトの設定ページに移動した際に、プロダクトIDで詳細情報をDBから引っ張ってこようと思っていますが、ページ遷移するごとにDBにアクセスしてプロダクトIDを取得して一致しているか判別するのもなんだなぁと思ったのですが、よい方法はあるでしょうか。

ぱっと思いつくところでは、phpのセッション変数に載せることと、クッキーに保存することなのですが、どちらも書き換えが容易なので・・・

と、ここまで書いたところでふと思ったんですが、ログインのIDとパスワードもどう扱えばいいんでしょうか。
こちらもセッション変数とクッキーが一般的だと思いますが、こちらもページ遷移するたびに合致しているかDBに問い合わせるものなのでしょうか。

ちょっとメールアドレスも含まれるデータなので慎重な扱いが必要です。
よろしくお願い致します。

A 回答 (2件)

いまいち質問の意図がわからないのですが、


クッキーやセッションIDは偽装できますが
セッション変数はユーザーが任意に変更できませんよね?

もちろんセッションIDを盗聴すればhttpセッションハイジャックが可能ですので
生存期間を設定してタイムアウトを推奨したり
クライアントの情報を読み取り二重ログインを排除したり、工夫は必要です。

>ログインのIDとパスワードもどう扱えばいいんでしょうか

それこそセッションで処理すればよい話で、普通ははセッションには含めません。
ただしhttpsなど秘匿性をたかめる必要があります
    • good
    • 0
この回答へのお礼

ありがとうございます。
そのセッションハイジャックを気にしての話だったのですが、
http://sawara.me/php/2348/
このあたりを読むと基本セッションIDがバレないようにということだったのですが、やはり
>生存期間を設定
>タイムアウト
のような処理が必要ということは完全ではない、ということですよね。

不勉強で申し訳ないですが、逆にSSLを使えばセッションハイジャックは気にしなくても大丈夫でしょうか?

お礼日時:2016/03/03 15:05

ごめんなさい、一部文字がぬけていました



>それこそセッションで処理すればよい話で、普通ははセッションには含めません。
↓↓
それこそセッションで処理すればよい話で、普通は「パスワード」はセッションには含めません。

>SSLを使えばセッションハイジャックは気にしなくても大丈夫でしょうか?

基本的には大丈夫ですが、クッキーにかかれたセッションIDは、
ブラウザ側に保存されているわけですから、ブラウザのセキュリティホールをつけば
閲覧できる可能性はあります。
とはいえ、よほどのことがない限り大丈夫でしょう
    • good
    • 0
この回答へのお礼

ありがとうございます。
心置きなく開発できます!

お礼日時:2016/03/03 15:55

お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!