加入收藏 | 设为首页 | 会员中心 | 我要投稿 云计算网_泰州站长网 (http://www.0523zz.com/)- 视觉智能、AI应用、CDN、行业物联网、智能数字人!
当前位置: 首页 > 服务器 > 搭建环境 > Linux > 正文

Linux+Apache实现用户身份认证

发布时间:2016-01-25 15:13:08 所属栏目:Linux 来源:网络整理
导读:一、序言 现在很多网站对用户的访问权限进行了严格的限制,用户在访问某些资源时需要给出用户名/口令 来确认自己的身份。 目前,使用最多的身份认证方法是将用

(一) 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的功能也就显得尤其强大。它主要是把 允许访问资源的组名、用户名、用户口令以文本文件的方式存放。

1.建立认证用的数据库

prompt〉mysqladmin create http—auth

2.建立认证用的表,并插入一行数据

prompt〉mysql http—auth

mysql〉create table mysql—auth (

-〉sername char(25) NOT NULL,

-〉passwd char(25),

-〉groups char(25),

-〉primary key (usrname)

-〉);

mysql〉insert mysql—auth (username,passwd,groups)

-〉values (″lkch″,PASSWD(″hello″),″ptisi″);

(编辑:云计算网_泰州站长网)

【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容!

热点阅读