2009-04-26 6 views
0

現在、集中化されたページオーセンティケータがどのように達成されているのか疑問に思っています。誰も私のためのきちんとしたアルゴリズムを提案することはできますか?私が達成しようとしているのは、自分のバックエンドの管理者ページを、自分が保護したいと思う各ページにセッションチェックコードを書き込まずにセッションを保護することです。私は現在、このような何かを:PHP:集中型ページセッションオーセンティケータ

ログインページを - >右の資格証明書の場合:設定されたセッション - >セッションのないビュー保護されたページがあれば:他に拒否:許可

/より上の任意のベストプラクティス(またはより良い方法)この?

答えて

1

私はあまりアルゴリズムを提案するのではなく、代わりにライブラリ/フレームワークを提案したいと思います。

アプリケーションに単一のエントリポイントがある場合、これがセッション管理ライブラリ/フレームワークを呼び出す場所です。たとえば、Zend Frameworkでは、ブートストラップでセッションを開始できます。残っているのは、ログインコントローラでセッションを認証することだけです。

0

複数のエントリポイントを持つPHPアプリケーションを設計している場合は、このコードをすべてコピー&ペーストしようとすると狂ってしまいます。実際のMVCフレームワークを使用してみてください。

私はZend_Controllerを使用して、このような状況でページビューをルーティングします。

あなたがこのような方法でアプリケーションを設計したら、限られたコントローラのpredispatch()メソッドにコードを追加して認証を行い、ログインページが見つからないか無効になった場合にリダイレクトするのが簡単になります。

関連する問題