0

プロジェクトのすべての PHP ファイルで、次のコードを使用して、ログインせずに誰も Web サイトにアクセスできないようにしています。

<?php
    session_start();
    if($_SESSION['userid']!="myuserid"){
        header("Location: Adminlogon.php");
    }
?>

必要なユーザー ID は 1 つだけであることに注意してください。ユーザー ID とパスワードはグループ内で共有されます。

このコードは安全ですか? 私はもっ​​とうまくやれるだろうか?

4

2 に答える 2

0

これは安全ですが、プレーンな HTTP を使用している場合、LAN で Cookie とセッションが簡単に「ハイジャック」される可能性があります。したがって、アプリケーション サーバーに HTTPS を使用させる

于 2012-04-26T17:46:38.510 に答える
0

あなたのコードは安全ではありません。実際には、各スクリプトの実行を妨げないからです。これは、実際に防止したいことです。

セッションが正しく設定されていない場合に実行を防ぐには、return ステートメントなどを使用してファイルを残す必要があります。

<?php
    session_start();
    if ($_SESSION['userid'] != "myuserid")
    {
        header("Location: Adminlogon.php");
        return; ### leave this script/include
    }
?>

代わりに、基本的なスクリプトにorステートメントをreturn使用することもできます。exitdie

于 2012-04-26T18:57:50.817 に答える