【PHP】セッションについて語ろう!【PHP】
■ このスレッドは過去ログ倉庫に格納されています
0001nobodyさん
03/09/24 19:31ID:SnRvXmpIブラウザを閉じることでクッキーを消しているからなのですね。。
知らなかったよーーーーうわーーーん
0140nobodyさん
04/09/28 01:10:51ID:???0141nobodyさん
04/09/28 17:26:54ID:???0142nobodyさん
04/09/28 18:58:14ID:???0143nobodyさん
04/09/29 14:00:46ID:Gp3joNGAもしくはhttp用のcookieとhttps用のcookieの二つを発行しろと言ってるね。
ttp://securit.gtrc.aist.go.jp/research/paper/AIST03-J00017/csec200307-takagi-slide-sp1.pdf
ことネットワーク絡みの話に関しては、お上とその周辺が出してる情報は
とても役に立つよ。
0144nobodyさん
04/10/06 22:15:29ID:???0145nobodyさん
04/10/07 21:46:09ID:eGrZpUzk0146nobodyさん
04/10/07 22:01:55ID:???0147nobodyさん
04/10/07 22:05:54ID:???0148nobodyさん
04/10/07 22:28:49ID:???セキュリティ的にはどうなんだろう?
0149nobodyさん
04/10/07 22:40:45ID:???レン鯖でもセーフモードかCGI+suEXECでsession.save_pathを適切に設定してれば大丈夫。
ちなみにメモリやデータベースにセッションを保存するようにもできる。
ttp://jp.php.net/manual/ja/function.session-set-save-handler.php
0150nobodyさん
04/10/07 22:54:49ID:???個人情報を扱うようなときはセッションを使うドメイン全体をSSLで保護するか
$_SESSIONを使う代わりにIDの発行からデータの出し入れまで全部を独自に管理しないといけない。
0151nobodyさん
04/10/07 23:27:27ID:???0152nobodyさん
04/10/07 23:33:22ID:???0153nobodyさん
04/10/08 00:39:22ID:???>ただ、PHPはセッションIDにcookieを使う際にsecure属性をつけられないので
PHP 4.0.4 以上だったら付けられる。
php.ini で
session.cookie_secure = 1
とするか、
ttp://jp2.php.net/manual/ja/ref.session.php#ini.session.cookie-secure
session_set_cookie_params()
で設定。
ttp://jp2.php.net/session-set-cookie-params
0154nobodyさん
04/10/08 00:56:47ID:???0155nobodyさん
04/10/08 01:37:35ID:???setcookieの最後の引数で指定でもいい?
この場合setするcookieのkeyによってセキュア属性のあるなしになるのかな?
0156nobodyさん
04/10/08 11:59:28ID:???setcookie() だと最後の引数で指定すれば個別に secure フラグありとなしで
複数の Cookie を設定できる。例えば、以下のような感じで。
setcookie('secure_on', 'test1', NULL, '/', NULL, 1);
setcookie('secure_off', 'test2', NULL, '/', NULL, 0);
正しく Cookie を処理できるブラウザだったら secure_on の方の Cookie は、
https 接続の時にしか送信されない。
0157nobodyさん
04/10/08 14:14:20ID:???>もしくはhttp用のcookieとhttps用のcookieの二つを発行しろと言ってるね。
に関してはsetcookieの引数で分けるのが良さげかな。
うーん、携帯サイトでhttp://〜〜のショッピングサイトってかなりあるんかね。
気にしだすと怖いな。
GETのSIDをhttpとhttpsで切り替えるとか?イメージわかん…
0158nobodyさん
04/11/05 23:35:57ID:onIpwNyMMySQL使ってるんですが、
必要最小限の変数だけ session_register して
そのつどMySQLからデータひっぱってくるのと、
MySQLのデータ全て session_register しておくのでは
どっちがよかとですか?
ヒロシです
0159nobodyさん
04/11/07 18:16:49ID:???データの内容とアクセス頻度(規模)などによって一概にどっちが良いかは言えないし、
「良い」の基準が決まっていないとレスのしようもないんじゃない?
例)
・作成時に楽なら良い
・サーバー負荷を考えると良い
・セキュリティ的に安全だから良い
などなどなどなどなど・・・。
セッションの前に他のことを勉強しろよ。斬り。
0160nobodyさん
04/11/07 21:42:34ID:???きれいに返されました。
セキュリティ・負荷面を重視しています。
よろしこです。
ヒロシです
0161nobodyさん
04/11/09 18:20:01ID:aEAOTgZ10162nobodyさん
04/11/12 12:40:22ID:2kt36js1使用人数は10人です。
OSは基本的にwindowsでバージョンはXPや98など様々です。
ページの更新などをする際に5分くらいでセッションが切れます。
ほぼ10人ともその状態です。
セッションが頻繁に切れる原因とかってありますか?
漠然とした質問で申し訳ないでつ。。
0163nobodyさん
04/11/12 13:38:08ID:???0164nobodyさん
04/11/12 14:19:13ID:???これが参考になるんじゃないかな
http://www.asahi-net.or.jp/~wv7y-kmr/memo/php_security.html#PHP_Session_GC
0165nobodyさん
04/11/16 15:55:39ID:???0166nobodyさん
04/11/16 16:34:38ID:???0167nobodyさん
04/11/17 21:13:10ID:K1rG9sHPページ移動するたびにDBにアクセスしてCookieと照合してます?
0168nobodyさん
04/11/19 11:05:17ID:???DBへ登録して使っている人って結構いる?
それともメモリー的にとか、DB容量的にとか、処理的に冗長だとかで、むしろ無駄?
0169nobodyさん
04/11/19 15:38:04ID:???返ってくるセッションクッキーをどうにかしてブラウザに食わせたいと思ってます。
firefoxのクッキーファイルに書き込むだけではだめでした。
expires付のクッキーはうまくいくのですが…
これを解決する手段はないものでしょうか?
Perlかどうかはどうでもよく、セッションクッキーの話なのでこちらに書き込みました。
もしもっと適切なスレがあれば是非教えてください。
0170nobodyさん
04/11/21 01:16:45ID:???どうも混乱しているようにしか見えないのだが…
HTTPクライアント作ってるって時点で「板違い」
セッションクッキーってのも意味わかんないし、
まずはセッションは何たるか、クッキーは何たるかを理解してから出直してね。
もしくは169の認識してる「セッションクッキー」と「クッキー」の違いを言ってみ。
0171nobodyさん
04/11/24 00:14:55ID:6VcNevlw確かに「セッションクッキー」はセッションと言うにはアレかも知れんが、
簡易なセッションを実現するものではあるし、
なにより、みんな「セッションクッキー」って呼んでるじゃん。
で、普通、「セッションクッキー」に対して、単に「クッキー」って呼ぶのは、
「パーマネントクッキー(169曰く、expires付のクッキー)」でしょ。
0172nobodyさん
04/11/24 06:52:52ID:???セッションクッキーで通じるから別にいいけど
確かに用語の使い方がいろいろ不明な点があって
日本語として文が構築されてない
0173nobodyさん
04/11/24 09:17:36ID:???セッションIDだけで管理してる?
セッションIDだけだと怖いので
ログインIDと暗号化したパスワードも
セキュアクッキーに書いて
毎回DBと比較してる。
これってやばい?
0174nobodyさん
04/11/24 14:09:50ID:???やばくはないと思うが
それじゃセッションIDを使う意味があまりなくね?
セッションIDの発行方法にもよるけど
PHPのセッション関数使ってるなら大丈夫じゃないの?
0175173
04/11/24 15:43:40ID:???レスありがとうございます
ログイン前の匿名情報(ショッピングカートのようなもの)を
セッションIDで管理、
ログイン後の情報はセッションだとちょっと怖いので
セキュアクッキーでアクセスの度に毎回ログインチェックをしてます。
セッションIDだけで
クライアントを特定するのって
会員制のようなサイトでも普通なんでしょうかね?
0176nobodyさん
04/11/25 03:52:30ID:???個人的な構築法としてはセッションIDとログイン情報を関連付けて
セッションIDきたらログイン情報みて毎回チェックするけど
規模がデカイ or サーバしょぼい 場合は毎回チェックするとレスポンス落ちるから
Yahooみたいに重要な処理のときだけログインチェックみたいな形にしてる
けど173のケースだとログイン前からの情報とも連携するみたいだし
それならセッションIDとcookie使ってても納得できる
毎回ログインチェックするのに越したことはないけど
やっぱりサーバのスペック的な問題でレスポンスが結構影響でてくるから
重要なページ(個人情報変更)とかだけ認証っていう形でもありじゃないかな?
良いセッションの使い方があれば他の人フォロー頼みます。
0177nobodyさん
04/11/26 20:15:19ID:5ndPRR48全く異なるネットワーク&端末からの接続は排除できる。
(NAT環境とか一部のCATV環境からのアクセスはどうしようもないけど)。
で、その上でブラウザバージョンとか「相手から送られてくる情報」を、
『セッション単位のワンタイム情報』として管理すればかなりいけるんでない?
まぁ、金銭扱う場合は「やりすぎ」ってのはないだろうけど、使う側の利便性を
考えればワンタイム情報として上記を扱う(+独自のスパイス)でほぼ安全でしょう。
0178173
04/11/26 20:37:10ID:???やっぱりサーバ負荷は一番気になるとこですね。
たいへん参考になりました。
ありがとうございました。
>>177
大企業などアクセスのたびに
毎回IPアドレスが変わる環境もあるから
だめじゃないかな?
0179nobodyさん
04/11/27 05:47:30ID:pSdshSFH> 大企業などアクセスのたびに
> 毎回IPアドレスが変わる環境もあるから
> だめじゃないかな?
そんな場合、HTTPに限らず他のサービスでも認証が絡む奴は
大問題になりそうな希ガス...
気のせい?
0180nobodyさん
04/11/27 07:24:52ID:GhxEggFVIPで認証するの?
0183nobodyさん
04/11/28 09:37:50ID:???「IPが変わってもサービスを継続する」実装が結構あるんですね。
確かに作っちゃえば可能だなー>セッション管理
ちょっと遊んでみよう(w
0185nobodyさん
04/11/28 23:38:51ID:???他の変数は無事なのに、これだけたまに消えるんだけど…
0186nobodyさん
04/11/29 12:38:23ID:???>>178
> >>177
> 大企業などアクセスのたびに
> 毎回IPアドレスが変わる環境もあるから
> だめじゃないかな?
アクセスの度に変わるんだぜ?
Connection張りにきたからってACK返そうにも
すでにIPアドレスが変わっているんだぜ?
って、釣りか....>>178
0187nobodyさん
04/11/29 14:14:13ID:???それじゃインターネットに繋がってるだけで送受信できないし
ACK返す前に変わるとかそんなシステムあるの?
1回セッションした後でIP変わってもう一度セッションしたときに
どうなるかだろ
そもそも接続元IPを使ってどーのこーのって
今の時代に使ってるところないだろ
0188nobodyさん
04/11/29 16:37:42ID:???セッション汁!?
>>186
なんかかみ合ってない。
どういう意見なの?
できればはじめての発言でないなら前のレス番使ってくれ。
0190nobodyさん
04/11/30 01:20:22ID:???黙って読め
0192nobodyさん
04/11/30 12:42:02ID:???「アクセスの度」っていう「アクセス」の定義が不明なんじゃない?
セッションはその通りだけど、PHPのセッションとはまたちょっと違う気がする。
HTTPセッションが切れても状態を引き継ぐための一例としてPHPセッションが
有るんじゃないの?
0193nobodyさん
04/11/30 14:41:16ID:???セッションが切れてない間は
IPアドレスが変わらないって言いたいの?
なにが言いたいのか
結論を書いてくれないと
話しが終わらないんだけど
0195nobodyさん
04/11/30 22:03:43ID:???逆でしょ?
「IPアドレスが変わっても(サービスのために)セッションを切らない」
為の仕組みが「PHPセッション」な訳ですよ。
つか、「セッション」の定義を表現せねばなるまいね。
IPセッションなのか、HTTPセッションなのか。
0196nobodyさん
04/11/30 22:54:22ID:???激しく同意!
ってかセッションってWEBでのセッションはHTTPセッションで
PHPセッションとかってセッション管理だろ
Perl=CGIみたいな初心者的勘違いだな
けど>>186とかACKが帰ってくる前にIP変わるわけだから
これはセッション自体成り立たない
>>192
それはセッション管理だろ
0197nobodyさん
04/12/01 11:09:14ID:???全くわからん
1人の自演だったらすごいけど
0198nobodyさん
04/12/01 15:47:55ID:???0200nobodyさん
04/12/01 19:13:52ID:???0201nobodyさん
04/12/01 22:34:09ID:???仲間はずれにしないでくれ
0202nobodyさん
04/12/02 09:00:03ID:???0203nobodyさん
04/12/02 09:43:08ID:???0204nobodyさん
04/12/02 21:26:45ID:pa/YvkmO0205nobodyさん
04/12/03 00:38:38ID:???そんな無意味なこと書く前に>>178の後半に突っ込み入れるなり
フォロー入れるなりしてみろよ。出来なきゃすっこんでろ。
0208nobodyさん
04/12/03 12:41:20ID:???ここでいいんですか?
0209nobodyさん
04/12/03 14:49:15ID:w3rfsX9n0210nobodyさん
04/12/03 16:43:06ID:???それともDBハンドラ書いてます?
漏れはDBハンドラ使ってるけど。
0211nobodyさん
04/12/04 09:33:25ID:???バランシングしている複数のwebサーバでセッションを共有したいので
セッション情報はバックエンドのDBに入れてDBハンドラ使いまくりです。
0212nobodyさん
04/12/04 10:21:05ID:???物理的にバックエンドDBサーバと同じところにあるので
DBで共有しても良いのだが。特に意味は無いがファイルで。
0214nobodyさん
04/12/04 14:45:51ID:???>183 とか >186 とかで訳分からん事言ってから話がおかしくなったみたいねえ。
0215nobodyさん
04/12/04 21:59:42ID:???0216210
04/12/08 02:26:30ID:???漏れと用途が一緒だ。。
>>212
一度NFSでと考えたけど、オーバーヘッドでかくないですか?
DBハンドラでも大してかわらんかも。。。
ベンチはかってないから分からないけど。。
0217みきすけ
05/01/18 09:30:28ID:fy32GETL0218みきお
05/01/18 10:19:23ID:fy32GETLマニュアルを見てください。
0220nobodyさん
05/01/22 12:37:17ID:???0221みきすけ
05/01/23 13:52:25ID:VKXvKdgM掲示板とか書き込むの初めてなので失礼なことをしてしました。
今、授業でPostgreSQLとPHPを用いてでセッション管理と
ユーザ認証をするプログラムを書かなければならなくて本から
ユーザ認証のプログラムをパクッたんですが、変更しなければ
ならない箇所があるらしく、さっぱり分かりません。
ログイン後の画面のURLを直接入力してもログインしていない状態
ではエラーがでて、そこにとべないようにようにするには
プログラムに何て書けばよいのでしょうか?
理解度が足りず、意味が通じないような質問になってすみません。
0222nobodyさん
05/01/23 13:58:56ID:???0223nobodyさん
05/01/23 14:16:17ID:???パクった本をまずはよく読むこと。
"課題"なんだから、意味判らんままにコードを流用すんな。
つか、見るのはどんな先生かしらんが、
PHPぐらいなら出版物の量も少ないので
コードのパクりかたが、あからさまだとばれるよ。
0224nobodyさん
05/01/23 16:25:22ID:???めんどくさくて書籍のサンプル丸写ししたんだが、先生にばれた。
しかし、先生が机に叩き付けた本は出版社も著者も全然違う人だった。
うーん。
0225nobodyさん
05/01/23 17:00:25ID:???かといって別の本や資料を全然参考にもしてない記述は、
アレ?と思うような変な(適正とは言いがたい)内容のものも、ちらほら
0226nobodyさん
05/01/23 18:54:00ID:???そう言うのは変数名くらい変えとかないと。
あと、インデント幅とかカッコの付け方とか
コメントを適当に付けたりして誤魔化すと完璧。
0227nobodyさん
05/02/04 13:02:28ID:vme7g+zPまともな回答一つもないし。
結局そんなもんか。
0228nobodyさん
05/02/04 15:44:32ID:???これほど簡単な言語はない。arrayの取り扱いを
始めたみたときは正直チンポの先から汁がちょっと出た。ちょっとだけね
0229nobodyさん
05/02/15 18:16:00ID:???phpとセッション管理でできるのかな?
0230nobodyさん
05/02/15 18:17:02ID:???需要は充分すぎる程あると思うんだけど…
0231nobodyさん
05/02/15 23:46:53ID:???そんなケツの穴の小さいこと考えてんのお前だけだよ(ガハハ
0234nobodyさん
05/02/17 18:17:56ID:???0235nobodyさん
05/02/17 18:39:57ID:???0238nobodyさん
05/02/20 15:45:27ID:HD8VrkSMURLにクエリ文字列を埋め込む方法等とどのように使い分ければいい?
0239nobodyさん
05/02/20 18:02:46ID:6EZLRG8p■ このスレッドは過去ログ倉庫に格納されています