タグ

phpとsessionに関するopparaのブックマーク (5)

  • komagataのブログ

    複数Webサーバ、単一セッション管理時のsession_start()。 セッションIDがかぶるかもしれない問題用。 アドホック過ぎなのであってるかどうか心配です。 <?php function session_start_uniq() { if (isset($_COOKIE[ini_get("session.name")])) { $sid = $_COOKIE[ini_get("session.name")]; } elseif (ini_get("session.use_only_cookies") != 1 and isset($_GET[ini_get("session.name")])) { $sid = $_GET[ini_get("session.name")]; } else { $server_addr = isset($_SERVER["SERVER_ADDR

  • PHPのStrict Sessionパッチ

    (Last Updated On: )のんびりしていた訳ではありませんが、PHP 5.4.1のブランチが作られたので慌ててStrict Sessionパッチを改訂しました。 master https://gist.github.com/1379668 5.4 https://gist.github.com/2224196 5.3 https://gist.github.com/2224360 以前、Gistに入れていたパッチとの違いは、 PSモジュール(セッションセーブハンドラ)のAPIを変更しないように修正 (これにより使っているハンドラが対策済みかどうかは見て分かるようには出来なくなりました。その代りにmemcacheなどのサードパーティのセーブハンドラのコンパイル済みバイナリとの互換性を維持しています。) セッションIDのコリージョン(衝突)を検出 (三回リトライしてもコリージョンす

    PHPのStrict Sessionパッチ
  • セッションのクッキーを設定する場合のベストプラクティス

    (Last Updated On: )HTTPセッションは通常クッキーを利用して行います。クッキーを利用したセッションの場合、お薦めする設定は以下の通りです。 ドメイン名は指定しない パスはルート(/)を指定する セッション管理用のクッキーはセッションクッキー(有効期間0)にする httponly属性を付ける 可能な場合は必ずsecure属性をつける 複数アプリケーションを利用する場合はsession.nameまたはsession_name()でセッションクッキー名で指定する (アプリケーションの固有名デフォルトで設定し、設定項目として変更できるようにする) 3まではPHPデフォルト設定です。4から6までは自分で設定しなければなりません。PHPの場合、すべてphp.iniで指定できます。session_set_cookie_params()でセッション開始前に指定すればスクリプト中から変更

    セッションのクッキーを設定する場合のベストプラクティス
  • PHPのSession Adoptionを修正するパッチ

    (Last Updated On: )パッチのテストのお願いです。 PHPerの長年の悩みの種であるセッションアダプションを修正するパッチをPHPに取り込めそうです。PHPのsubversionレポジトリのtrunkまたはPHP 5.4で利用できます。テストが終わったらPHPのレポジトリにコミットする予定です。(テスト期間は2011/11/22まで) パッチ https://gist.github.com/1379668 少し古いですがパッチの解説 http://wiki.ohgaki.net/index.php?PHP%2Fpatch%2FStrictSession セッションアダプション関連のブログエントリ http://blog.ohgaki.net/how-to-make-php-session-strict-by-php-script http://blog.ohgaki.net

    PHPのSession Adoptionを修正するパッチ
  • PHPセッションアダプションをスクリプト側で修正する方法

    (Last Updated On: 2018年8月13日)PHPのスクリプトを使ってアダプティブなPHPセッションをアダプティブにしない方法を紹介します。 このブログで紹介していたかどうか覚えていないですが、セッションアダプション対策としてsession_regenerate_id()が導入された時に議論・紹介されているので知っている方も多いと思います。(というより、PHPerの常識ですよね?) まずはセッションアダプションの原理と対策の復習をしておきます。 原理: 未初期化のセッションIDを受け入れる 対策: 初期化済みセッションIDのみ受け入れる session_regenerate_id()は新しいセッションIDを生成して新しいセッションクッキーを作成して、セッションデータを保存するようになっています。session_regenerate_id()を呼んだだけでは、なんらかの方法で複

    PHPセッションアダプションをスクリプト側で修正する方法
  • 1