2012-02-29 6 views
5

マニュアルには次のように書かれています。

注:セッションクラスでは、ネイティブのPHPセッションは使用されません。 は独自のセッションデータを生成し、 デベロッパー向けに柔軟性を提供します。

しかし、私はphpinfo()で、$this->session->set_userdata(array('sample_key' => 'sample_value'));を使用して、いくつかのデータを保存するとき、私はその中sample_keysample_valueを見つけることができます。

は、私が一部

がネイティブPHPセッション

それはphpinfo()からセッション変数を隠していることを意味するを使用しないことを望みました。

私はいつもセキュリティ不足かもしれないと思っていました。それは可能性が?

値はurlencodeです。

+2

'phpinfo()'ページは、本番システムでは公開されていてはなりません。私は、カスタムセッションシステムを使用する理由として、セッションバーをそこに使用したことがある人は誰も疑いの余地がありません。 – ThiefMaster

+2

真のセキュリティ上の問題は、公に利用可能な 'phpinfo()'出力を持つことです。 – ceejayoz

答えて

0

CodeIgniterの「セッション」は、データをクッキーに保存し、セッションと呼びます。ネイティブPHPセッションは、サーバー上にデータを保存し、クッキーに "sessionID"を保存します。

phpinfoには、変数が表示されますが、のセッションであるセッションでは、別のユーザーのセッションは表示されません。

+0

非常に偽です。使用可能なセッションドライバには、データをデータベースに格納するドライバも含まれます。 – ceejayoz

+4

@ceejayoz:代替ドライバが入手できなかったとはどこで言いましたか?私はちょうどデフォルト動作が何であるか説明しました。 –

+0

クッキーは単にセッションIDを保存します。実際のセッションDATAをクッキーに格納することは、セキュリティ上の危険があります。クライアント側のクッキーに "superuser = 0"を保存すると、あらゆる種類の "楽しい"ものが招待されます。 –

関連する問題