Linux+Apache实现用户身份认证
2007-05-17 00:00:00 来源:WEB开发网三、具体实现
下面主要介绍mod—auth模块和mod—auth—MySQL模块的使用。但无论采取何种认证方式,都要先对Apache做一些设置:在配置文件access.conf中作如下的设置:
AccessFileName . htaccess
AllOerride All
(一) mod—auth模块完成身份认证功能,它主要是把允许访问资源的组名、用户名、用户口令以文本文件的方式存放,具体方法是:
1.编辑认证用的组文件:主要用于存放可以访问受限制的资源的组名以及其中的用户,用Vi编辑组文件.htgroup如下
ptisi : lkch
存放在 /sur/local/apache/secrets/.htgroup路径下,其中ptisi是组名,lkch是组中的用户名。
2.建立用户文件:主要用于存放某一组中的用户名和口令
htpasswd -c /usr/local/apache/secrets/.htpasswd lkch
注:htpasswd是Apache提供用于实现认证功能的程序,-c表示产生新的.htpasswd文件,如果存在同名旧文件,则覆盖旧文件。该程序将询问口令,键入“hello"然后重新确认口令。
3.在要限制的资源的目录内编辑 .htaccess文件
AuthName ″This is a test″
AuthType Basic
AuthUserFile /usr/local/apache/secrets/.htpasswd
AuthGroupFile /usr/local/apache/secrets/.htgroup
repuire group ptisi
注:参数require group 指定哪些组的用户可以访问认证资源,这样,当再次访问需要认证的资源存在的目录时,系统就会弹出对话框,要求输入“用户名/口令"。
(二)mod—auth—mysql模块完成身份认证功能,由于Apache + PHP + MySQL已经被许多网站的建设者当作是建设中小型网络数据库的黄金组合,因而mod—auth—mysql的功能也就显得尤其强大。它主要是把允许访问资源的组名、用户名、用户口令以文本文件的方式存放。
更多精彩
赞助商链接