在 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
}
|