<rt id="bn8ez"></rt>
<label id="bn8ez"></label>

  • <span id="bn8ez"></span>

    <label id="bn8ez"><meter id="bn8ez"></meter></label>

    空間站

    北極心空

      BlogJava :: 首頁 :: 聯系 :: 聚合  :: 管理
      15 Posts :: 393 Stories :: 160 Comments :: 0 Trackbacks
    前面談到 Samba 服務器的 MySQL 用戶認證,實際上我老早就寫過 Apache 針對 MySQL 的認證。不過以前只是測試而已,沒有實際使用。前文提到知識管理,實際上在公司內部我們運行著一個基于 pLog 的博客系統。原先的系統沒有發布到互聯網,后來為了能讓公司異地的各分支機構也能使用該博客系統,所以,決定發布到互聯網。為了最小程度的降低對博客系統的 Hack ,所以我決定采用外掛的 mod_auth_mysql 模塊來實現用戶認證,從而降低公司內部系統暴露給非授權用戶的風險。


    在這次安裝中,才發現原來 mod_auth_mysql 有好幾種版本,而且文檔幾乎都是殘缺不全的。本文下載的程序來自 sourceforge.net (sf.net)

    http://modauthmysql.sourceforge.net/

    目前的版本為 2.9.0 ,下載后,建立目錄 mod_auth_mysql ,然后進入該目錄解壓。(不要直接在 /usr/local/src 下解壓) ,根據 BUILD 文件的指示,安裝步驟如下:

    apxs -c -lmysqlclient -lm -lz mod_auth_mysql.c
    apxs -i mod_auth_mysql.la

    然后把下面這行加入 httpd.conf
    LoadModule mysql_auth_module modules/mod_auth_mysql.so


    實際上編譯和安裝并不困難,配置才是比較大的挑戰,特別是要已經現有的用戶表結合起來。我的 plog 數據庫的用戶表是 plog_users ,我設置的配置如下:


    <IfModule mod_auth_mysql.c>
    <Location />
    AuthType Basic

    # 連接數據庫的主機地址,一般用本地連接,所以為 localhost
    AuthMySQLHost localhost
    AuthMySQLPort nnnn
    # 數據庫的名字
    AuthMySQLDB plog
    # 連接數據庫的用戶?
    AuthMySQLUser plogdb_user
    # 連接數據庫的口令
    AuthMySQLPassword password
    # none: not encrypted (plain text)
    # crypt: UNIX crypt() encryption
    # scrambled: MySQL PASSWORD encryption
    # md5: MD5 hashing
    # aes: Advanced Encryption Standard (AES) encryption
    # sha1: Secure Hash Algorihm (SHA1)`
    AuthMySQLPwEncryption md5
    AuthMySQLEnable On
    AuthMySQLUserTable plog_users
    AuthMySQLNameField user
    AuthMySQLPasswordField password
    AuthMySQLGroupTable plog_users
    AuthMySQLGroupField user_group
    </Location>
    </IfModule>

    從以上配置可以知道,這個模塊實際上對用戶表沒有特別的要求,只要能找到 用戶名和對應的口令即可,如果需要對一個組作驗證,那么需要 group 那個列。

    由于公司內部所有的用戶都具有相同的組,所以,在驗證時一般采用組用戶來驗證,因此要在 plog_user 表添加列: user_group ,并把所有行的 user_group 列 update 為某固定值,例如 mygroup 。

    在這里 groupTable 和 UserTable 是同一張表,如果需要一個用戶屬于多個 group ,那么必須另外建立 group 表。

    做好以上工作后,在需要加密的目錄添加 .htaccess 文件如下:

    Authname "請用管理博客的口令和密碼登陸"
    Authtype Basic
    Require group mygroup

    這樣一個外掛的驗證系統部署完畢,這種部署對于電子商務應用中,多個不同應用的用戶表整合具有很好的效果。修改的代碼不多。

    修改用戶口令可以用 PHP 的  $_SERVER["PHP_AUTH_USER"] 來判斷用戶名,然后作相應的判斷。

    采用這種認證措施后,用戶的瀏覽記錄都能在 Apache 日志中保留下來,利用 awstats 等日志統計軟件,都可以查看到用戶的瀏覽量,使公司內部的知識流向都能清楚地查看到
    posted on 2008-09-04 10:36 蘆葦 閱讀(217) 評論(0)  編輯  收藏 所屬分類: 其他
    主站蜘蛛池模板: 亚洲国产成人精品女人久久久| 成人免费淫片在线费观看| 中文字幕在线亚洲精品| 青青草国产免费国产是公开| 免费a级毛片大学生免费观看| 国产精品亚洲片在线花蝴蝶 | 久久精品国产99国产精品亚洲| 99久久久精品免费观看国产| 亚洲免费观看在线视频| 永久免费av无码网站韩国毛片| 精品日韩99亚洲的在线发布| 午夜视频在线在免费| 国产精品亚洲а∨无码播放不卡| 国产无遮挡色视频免费视频| jizzjizz亚洲日本少妇| 亚洲欧洲国产成人综合在线观看 | 在线观看人成视频免费无遮挡 | 黄色免费在线网站| 青青草原精品国产亚洲av| 韩国免费一级成人毛片| 亚洲AV永久无码天堂影院| 国产亚洲精品无码专区| 久久久久久AV无码免费网站| 亚洲国产精品免费在线观看| 在线观看人成视频免费| 一级做a爰黑人又硬又粗免费看51社区国产精品视 | 成人浮力影院免费看| 亚洲精品精华液一区二区| 亚洲精品麻豆av| 免费国产黄网站在线观看视频| 亚洲久悠悠色悠在线播放| 亚洲美女高清一区二区三区 | 丁香花在线视频观看免费| 亚洲天堂一区在线| 国产又粗又猛又爽又黄的免费视频 | 特a级免费高清黄色片| 亚洲成人在线网站| 日韩免费视频播播| 波多野结衣免费一区视频| 亚洲偷自精品三十六区| 2048亚洲精品国产|