在 Sun WebServer 1.0 中,realm
設定指引除了當作瀏覽程式的識別碼之外(顯示在辨證對話框內),並無其他多大用處。但在 Sun WebServer 2.0 內,領域設定了早先存在的一組使用者與群組,以辯證是否有權存取某個 URL。領域資料存放在 realms.conf 檔案內。 HTPASSWD
領域有各自的目錄(定義於 realm.conf 中),其中含有進行辨證時會用到的 users 與 groups 檔案。因此 Sun WebServer 1.0 ACL 中的 password_file
以及 group_file
設定指引便沒有作用了。所有 1.0 的領域在
2.0 中都是 HTPASSWD
領域,因為這些使用者建立的資料庫是 1.0 中唯一的資料來源。
假設主機 widgets 的 Sun WebServer 1.0 /etc/http/access.acl 存取權控制設定如下:
url /reports { realm Managers authentication_type basic password_file /usr/auth/Managers/Maners_users group_file /usr/auth/Managers/Managers_groups + group report_managers - user Joe } |
建立一個領域以存放密碼和群組檔案,方法如下:
# htrealm add -i server1 -h widgets -r Managers -s HTPASSWD |
以上指令會在站台的 realms.conf 中加入以下設定:
realm Managers { realm_source HTPASSWD } |
以上指令也會在站台建立以下目錄:
/var/http/server1/websites/widgets/conf/realms/Managers/ |
將 users 與 groups 檔案複製到 Managers 目錄內:
# cp /usr/auth/Managers/Managers_users \ /var/http/server1/websites/widgets/conf/realms/Managers/users # cp /usr/auth/Managers/Managers_groups \ /var/http/server1/websites/widgets/conf/realms/Managers/groups |
刪除 Sun WebServer 1.0 ACL 中的檔案設定指引,然後將新的 ACL 放入 Sun WebServer 2.0 ACL 檔案內: /var/http/server1/websites/widgets/conf/access.conf:
url /reports { realm Managers authentication_type basic + group report_managers - user Joe } |