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 |
(可选)值为 keyfile 或 digest。如果未指定,则默认为 keyfile。 |
keyfile |
(syntax=keyfile 时需要)包含用户数据的文件的路径。 |
digestfile |
(syntax=digest 时需要)包含摘要验证用户数据的文件的路径。 |
文件验证数据库文件中每行的最大长度为 255。如果任一行超出了此限制,服务器将无法启动,并在日志文件中记录错误。
请确保在尝试使用基于文件的验证数据库设置 ACL 之前,已经配置了基于文件的验证目录服务。有关更多信息,请参见配置目录服务。
访问服务器实例的 Server Manager。
在 "Preferences" 选项卡上,单击 "Administer Access Control" 链接。
从下拉式列表中选择 ACL 文件,然后单击 "Edit"。
在 "Access Control Rules For" 页面中,单击要编辑的 ACL 条目的 "Users/Groups" 链接。
"User/Group" 页面将显示在下面的框架中。
从 "Authentication Database" 下的下拉式列表中,指定密钥文件数据库。
单击 "Update",然后单击 "Submit" 保存更改。
当您按照基于密钥文件的文件验证数据库设置 ACL 时,dbswitch.conf 文件使用相应的 ACL 条目进行更新,如下面给出的样例条目所示:
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"; |
文件验证数据库还支持适用于摘要验证且符合 RFC 2617 的文件格式。将存储基于密码和领域的散列,不会保留明文密码。
访问服务器实例的 Server Manager。
在 "Preferences" 选项卡上,单击 "Administer Access Control" 链接。
从下拉式列表中选择 ACL 文件,然后单击 "Edit"。
在 "Access Control Rules For" 页面中,单击要编辑的 ACL 的 "Users/Groups" 链接。
"User/Group" 页面将显示在下面的框架中。
从 "Authentication Database" 下的下拉式列表中,指定摘要数据库。
单击 "Update",然后单击 "Submit" 保存更改。
当您按照基于摘要验证的文件验证数据库设置 ACL 时,dbswitch.conf 文件使用相应的 ACL 条目进行更新,如下面给出的样例条目所示。
version 3.0;acl "default";authenticate (user) {prompt = "filerealm"; database = "mydigestfile";method = "digest";}; deny (all) user = "anyone"; allow (all) user = "all"; |