httpd網頁身份認證
1.1 htpasswd命令
htpasswd用於為指定用戶生成基於網頁用戶身份認證的密碼,由httpd-tools軟體包提供。支持3種加密演算法:MD5、SHA和系統上的crypt()函數,不指定演算法時,默認為md5。
1.2 身份認證類基本指令
基於basic類型的認證就這麼幾個指令,最主要的還是require指令的使用。更多的認證方法見官方手冊的auth類模塊。
1.3 Require指令
該指令只能放在Directory容器中,用於控制對目錄的訪問許可權。它的主要功能是由mod_authz_core模塊提供,但有些身份認證類模塊也提供它額外的功能,這時它可以放在< Directory >、< Files >或< Location >容器中。
主要功能:
Require all granted
無條件允許所有人訪問該目錄
Require all denied
無條件拒絕所有人訪問該目錄
Require env env-var [env-var] ...
只有給定的環境變數var-env已經定義才允許訪問該目錄
Require method http-method [http-method] ...
只有給定的HTTP請求方法才允許訪問該目錄,如只允許GET才能訪問
Require expr expression
只有給定的表達式為true才允許訪問該目錄
身份認證類模塊提供的require指令功能包括:
mod_authz_user為require指令提供的功能:
Require user userid [userid] ...:認證列表中只有指定的userid才能訪問
Require valid-user:認證列表中的所有用戶都可以訪問
mod_authz_groupfile為require指令提供的功能:
Require group group1 [group2] ...:指定組內的用戶都可以訪問
本地文件系統身份參考類:
Require file-owner:要求web用戶名必須和請求文件的uid對應的username完全相同
Require file-group:要求web用戶名必須為請求文件的gid組中的一員
mod_authz_host為require指令提供的ip和host功能:
Require ip 192.168.1.104 192.168.1.205
Require ip 10.1
Require ip 10 172.20 192.168.2
Require ip 10.1.0.0/255.255.0.0
Require ip 10.1.0.0/16
Require host www.example.org
Require host example.org
Require host .net example.edu
Require local
可以在require指令後緊跟not關鍵字,表示取反。例如"require not group group1"、"require not local"等。
還支持require條件容器,包括< RequireAll >、< RequireAny >和< RequireNone >,當require指令沒有寫在任何Require容器中時,它們隱式包含在一個< RequireAny >容器中。
< RequireAll >:其內封裝的Require指令必須全都不能失敗,且至少有一個成功時,該容器成功。如果其內所有指令既不成功又不失敗,則該容器中立。其餘所有情況都會導致該容器失敗。
< RequireAny >:其內封裝的Require指令只要有一個成功,該容器就成功。如果其內所有指令既不成功又不失敗,則該容器中立。其餘所有情況(即全部失敗時)都會導致該容器失敗。
< RequireNone >:其內封裝的Require指令只要有一個成功時該容器就失敗,否則就中立。
1.4 web身份認證示例
以最常見的Basic認證方式為例。支持基於用戶的認證和基於組的認證。
1.4.1 基於用戶的認證
先創建一個web用戶及其密碼列表文件。其內有4個用戶:Jim、Bob、Alice和Tom。
再測試訪問。
1.4.2 基於組的認證
基於組的認證只需創建一個組文件,文件中包含的是組名和組中用戶成員。
例如,將Tom和Alice加入到allow組,使它們也可以訪問a.com目錄。
再重啟進行測試。
學IT,就來中公優就業:http://www.ujiuye.com/
更有海量免費乾貨:http://xue.ujiuye.com
500萬的就業基金等你拿:http://www.ujiuye.com/zt/jycj/?wt.bd=lsw41106sh
什麼?海量IT學習資料白給你都不要?別想了,加群搶:584539956
本文作者:駿馬金龍


※CSS常見布局方式
※python郵件SMTP的GUI編程
※web端 css hack
※css|浮動和清除浮動
※MYSQL INNODB引擎下:根據.frm和.ibd文件恢復表結構和數據
TAG:IT優就業 |