一区二区久久-一区二区三区www-一区二区三区久久-一区二区三区久久精品-麻豆国产一区二区在线观看-麻豆国产视频

編寫php應用程序實現摘要式身份驗證的方法詳解

通基本身份認證一樣,也可以使用php網頁處理HTTP請求報頭字段來匹配摘要式身份驗證信息。例如下邊的代碼使用header()函數要求客戶端使用Digest驗證,它在HTTP消息報頭中增加了一個WWW-Authenticate字段:
header('WWW-Authenticate:Digest Realm="MyRealm",nonce="47alf7cf25ce7",algorithm=MD5,qop="auth"');
--------------------------------------------------------------------------------
下邊代碼描述的是一個使用摘要式身份驗證的網頁(首先取消Apache驗證配置)。
復制代碼 代碼如下:
<?php
$realm="MyRealm";
//如果沒有驗證信息,則發送報頭要求瀏覽器使用摘要式身份驗證
if(!isset($_SERVER['php_AUTH_DIGEST'])){
 header("WWW-Authenticate:Digest Realm=/"$realm/",nonce=/"".uniqid()."/",algorithm=MD5,qop=/"auth/"");
 header("HTTP/1.0 401 Unauthorization Required");
 echo "賬號/密碼錯誤!";
 exit;
}else{
 //使用函數http_digest_parse解析驗證信息
 $data=http_digest_parse($_SERVER["php_AUTH_DIGEST"]);
 if(!$data){
  header("HTTP/1.0 401 Unauthorization Required");
  echo "賬號/密碼錯誤!";
  exit;
  }else{
   //根據HTTP協議,自己構建一個response值
   $A1=md5('admin:'.$realm.':password');
   $A2=md5($_SERVER['REQUEST_METHOD'].':'.$data['uri']);
   $valid_response=
   md5($A1.':'.$data['nonce'].':'.$data['nc'].':'.$data['cnonce'].':'.$data['qop'].':'.$A2);}
   //將自己構建的response值與瀏覽器構建并發送過來的response值對比,如果相同那么就證明用戶名和密碼輸入是正確的
   if($data['response']==$valid_response){
    echo "驗證通過!";
   }else{
    header("HTTP/1.0 401 Unauthorization Required");
    echo("賬號/密碼錯誤!");
    exit;
   }
  }
function http_digest_parse($digest_str){
 $needed_parts=array('nonce'=>1,'nc'=>1,'cnonce'=>1,'qop'=>1,'username'=>1,'uri'=>1,'response'=>1);
 //使用正則表達式解析Authorization報頭的內容
 preg_match_all('@(/w+)=([/'"]?)([a-zA-Z0-9=.//_-]+)/2@',$digest_str,$result,PREG_SET_ORDER);
 //將結果填充$data數組,并返回
 $data=array();
 foreach($result as $m){
  $data[$m[1]]=$m[3];
  unset($needed_parts[$m[1]]);
 }
 return $needed_parts?false:$data;
}
?>

php技術編寫php應用程序實現摘要式身份驗證的方法詳解,轉載需保留來源!

鄭重聲明:本文版權歸原作者所有,轉載文章僅為傳播更多信息之目的,如作者信息標記有誤,請第一時間聯系我們修改或刪除,多謝。

主站蜘蛛池模板: 精品小视频 | 国产成人精品三区 | 97国产精品人人爽人人做 | 黄色片视频在线播放 | 综合第一页 | 超清中文乱码精品字幕在线观看 | 亚洲第一页在线视频 | 97se色在在线视频 | 亚洲日本中文字幕在线2022 | 免费精品美女久久久久久久久久 | 国产成人小视频在线观看 | 2021最新在线精品国产 | 精品视频在线观看免费 | 国产精品久久久久久久久鸭 | 亚洲精品视频二区 | 大象焦伊人久久综合网色视 | 精彩国产熟睡乱子伦午夜片 | 在线综合网 | 91精品国产综合久久久久久 | 色国产在线| 激情五月婷婷基地 | 在线成人免费视频 | 美女免费黄 | 伊人久久精品 | 看全色黄大色大片免费 | 久久久久久综合 | 日本成人福利视频 | 亚洲精品成人中文网 | 在线精品国产一区二区 | 91久久精一区二区三区大全 | 美女扒开屁股让男人桶视频网站 | 久久久久久久岛国免费播放 | 色婷婷综合缴情综六月 | 亚洲综合伊人 | 国产日韩欧美不卡www | 免费观看成人www精品视频在线 | 欧美成人免费一区在线播放 | 激情五月婷婷基地 | 青青热在线精品视频免费 | 国产一区二区三区在线免费 | 怡红院一区 |