Sun Java System Web Proxy Server 4.0.4 管理指南

為檔案型認證建立 ACL

Proxy Server 支援使用檔案型的認證資料庫,這些資料庫將使用者和群組資訊以文字格式儲存在平面檔案中。ACL 架構的設計原本就是要搭配檔案型認證資料庫。


備註 –

Proxy Server 不支援動態平面檔案。平面檔資料庫將在伺服器啟動時載入。對這些檔案所做的任何變更僅在重新啟動伺服器時才能生效。


本小節說明如何根據檔案認證和摘要認證,建立目錄服務的 ACL。

ACL 項目可以使用 database 關鍵字來參照使用者資料庫。例如︰

acl "default";    authenticate (user) {...    database="myfile";...};

server-root/userdb/dbswitch.conf 檔案中包含的項目可定義檔案認證資料庫及其配置。例如︰

directory myfiledb filemyfiledb:syntax keyfilemyfiledb:keyfile 
/path/to/config/keyfile

下表列示檔案認證資料庫支援的參數。

表 8–2 檔案認證資料庫支援的參數

參數 

說明 

syntax

(可選) 值為 keyfiledigest。如果未指定,則預設為 keyfile

keyfile

(如果 syntax=digest,則為必要參數) 包含摘要認證之使用者資料的檔案路徑。

digestfile

(如果 syntax=digest,則為必要參數) 包含摘要認證使用者資料的檔案路徑。


注意 – 注意 –

檔案認證資料庫檔案中每一行的長度上限為 255。如果有任何一行超出此限制,伺服器將無法啟動,並將錯誤記錄到記錄檔中。


請確定在嘗試使用檔案型的認證資料庫設定 ACL 前,已經配置好檔案型的認證目錄服務。如需更多資訊,請參閱配置目錄服務

為基於檔案認證的目錄服務建立 ACL

Procedure為基於檔案認證的目錄服務建立 ACL

  1. 存取伺服器實例的 Server Manager。

  2. 在 [Preferences] 標籤上,按一下 [Administer Access Control] 連結。

  3. 從下拉式清單選取 ACL 檔案,然後按一下 [Edit]。

  4. 在 [Access Control Rules For] 頁面中,按一下要編輯之 ACL 項目的 [Users/Groups] 連結。

    [User/Group] 頁面會顯示在下方框架中。

  5. 從 [Authentication Database] 下的下拉式清單,指定金鑰檔案資料庫。

  6. 按一下 [Update],再按一下 [Submit] 以儲存變更。

    當您依據金鑰檔案型的檔案認證資料庫設定 ACL 時,將使用相應的 ACL 項目更新 dbswitch.conf 檔案,例如以下所提供的範例項目:


    version 3.0;acl "default";authenticate (user) {prompt = 
    "Sun Java System Proxy Server 4.0";database = "mykeyfile";
    method = "basic";};deny (all) user = "anyone";
    allow (all) user = "all";

為基於摘要認證的目錄服務建立 ACL

檔案認證資料庫也支援適於和摘要認證一起使用的檔案格式 (根據 RFC 2617)。此舉會儲存基於密碼和範圍產生的雜湊。不會維護明文密碼。

Procedure為基於摘要認證的目錄服務建立 ACL

  1. 存取伺服器實例的 Server Manager。

  2. 在 [Preferences] 標籤上,按一下 [Administer Access Control] 連結。

  3. 從下拉式清單選取 ACL 檔案,然後按一下 [Edit]。

  4. 在 [Access Control Rules For] 頁面,按一下要編輯之 ACL 的 [Users/Groups] 連結。

    [User/Group] 頁面會顯示在下方框架中。

  5. 在 [Authentication Database] 下的下拉式清單中,指定摘要資料庫。

  6. 按一下 [Update],再按一下 [Submit] 以儲存變更。

    當您依據摘要認證型檔案認證資料庫設定 ACL 時,將使用相應的 ACL 項目更新 dbswitch.conf 檔案,例如以下所提供的範例項目。


    version 3.0;acl "default";authenticate (user) {prompt = "filerealm";
    database = "mydigestfile";method = "digest";}; deny (all) user = "anyone";
    allow (all) user = "all";