ホームページ >バックエンド開発 >PHPチュートリアル >Webセキュリティ認証を実装するphpのコードの詳細説明

Webセキュリティ認証を実装するphpのコードの詳細説明

黄舟
黄舟オリジナル
2017-09-29 09:14:012000ブラウズ

この記事では、PHP Web ページのセキュリティ認証例の詳細な説明に関連する情報を主に紹介します。データベースに基づいた実装方法と、データベースに基づいていない実装方法の 2 つを紹介します。必要です

PHP Web ページのセキュリティ認定例の詳細な説明を参照してください

データベースに基づいていない:


<?php
    //unset($_SERVER[&#39;PHP_AUTH_USER&#39;]);
    $strAuthUser= $_SERVER[&#39;PHP_AUTH_USER&#39;];      
    $strAuthPass= $_SERVER[&#39;PHP_AUTH_PW&#39;];

 if (! ($strAuthUser == "a" && $strAuthPass == "a")) {
  header(&#39;WWW-Authenticate: Basic realm="wly"&#39;);
  header(&#39;HTTP/1.0 401 Unauthorized&#39;);
  echo "用户验证!!";
  exit;
 } else {
  echo "验证通过";
  
  header("location:http://www.baidu.com");
  //unset($_SERVER[&#39;PHP_AUTH_USER&#39;]);  
 }
?>

データベースに基づいている:


<?php
  function authenticate_user() {
    header(&#39;WWW-Authenticate: Basic realm="Secret Stash"&#39;);
   header("HTTP/1.0 401 Unauthorized");
    exit;
  }
 
  if (! isset($_SERVER[&#39;PHP_AUTH_USER&#39;])) {
    authenticate_user();
  } else {
    mysql_pconnect("localhost","authenticator","secret") or die("Can&#39;t connect to database server!");
    mysql_select_db("java2s") or die("Can&#39;t select authentication database!");
 
   $query = "SELECT username, pswd FROM user WHERE username=&#39;$_SERVER[PHP_AUTH_USER]&#39; AND pswd=MD5(&#39;$_SERVER[PHP_AUTH_PW]&#39;)";
 
    $result = mysql_query($query);
 
    // If nothing was found, reprompt the user for the login information.
    if (mysql_num_rows($result) == 0) {
     authenticate_user();
    }
  }
 ?>

以上がWebセキュリティ認証を実装するphpのコードの詳細説明の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。

声明:
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。