由帐号acct函数-no获取帐号类型失败,

基本服务器配置
基本服务器配置
本章包含描述一组基本管理和配置任务的信息,您可以执行这些任务为网络定制 WebSEAL 服务器。另见。
主题索引:
一般服务器信息
以下各节提供关于 WebSEAL 服务器的一般信息:
WebSEAL 安装的根目录
WebSEAL 程序文件安装在以下根目录中:
/opt/pdweb/
C:\Program Files\Tivoli\PDWeb\
可以在 Tivoli Access Manager for Windows 安装中配置此路径。但不能在 Tivoli Access Manager 的 UNIX 安装中配置此路径。
本指南使用 &install-path> 变量代表该根目录。
在 UNIX 安装中,以下独立目录包含可扩展的文件,例如审计和日志文件:
/var/pdweb/
启动和停止 WebSEAL
可以在 UNIX 上使用 pdweb 命令以及在 Windows 上使用“服务”控制面板启动和停止 WebSEAL 服务器进程。
pdweb {start|stop|restart|status}
pdweb 命令位于以下目录中:
例如,要停止 WebSEAL 服务器,然后重新启动服务器,请使用:
# /usr/bin/pdweb restart
在“服务”控制面板中标识 WebSEAL 服务器进程并使用适当的控制按钮。
受保护对象空间中表示的 WebSEAL
webseald.conf 配置文件中的 server-name 参数指定 Tivoli Access Manager 受保护对象空间中表示此 WebSEAL 服务器实例的点。
对于单个 WebSEAL 服务器安装,使用正在安装此 WebSEAL 服务器的机器的主机名自动设置此值。
例如,如果机器(主机)名为 sales1,则参数值设置为:
server-name = sales1
在 Tivoli Access Manager 受保护对象空间中此 WebSEAL 服务器实例的表示将显示为:
/WebSEAL/sales1
对于同一机器上的多个 WebSEAL 实例,此值由用于创建多个 WebSEAL 服务器实例的 PDWeb_config(UNIX)或 ivweb_setup(Windows)脚本的 -i 选项设置。
WebSEAL 返回 HTTP/1.1
HTTP/1.0 请求仅在那些服务器返回状态 400(无效请求)、返回状态 504(不支持 HTTP 版本)或客户机浏览器在请求中指定 HTTP/1.0 时才发送到联结的后端服务器。
否则,如果后端服务器接受 HTTP/1.1,则 WebSEAL 发送 HTTP/1.1 请求。
然而,即使 WebSEAL 向联结的后端服务器发送 HTTP/1.0 请求(且后端服务器返回 HTTP/1.0 响应),但 WebSEAL 仍始终向客户机浏览器返回 HTTP/1.1 响应。
WebSEAL 日志文件
WebSEAL 日志文件记录可服务性消息,例如服务器警告和错误消息。日志文件名和位置由 webseald.conf 配置文件的 [logging] 节中的 server-log 参数定义:
server-log = /var/pdweb/log/msg_webseald.log
server-log = C:/Program Files/Tivoli/PDWeb/log/msg_webseald.log
使用 WebSEAL 配置文件
以下各节提供关于 WebSEAL 配置文件(webseald.conf)的信息:
webseald.conf 配置文件
可以通过配置位于 webseald.conf 配置文件的参数定制 WebSEAL 的操作。该文件位于以下目录:
/opt/pdweb/etc/
C:\Program Files\Tivoli\PDWeb\etc\
Tivoli Access Manager 配置文件基于 ASCII 文本,并且可以使用普通文本编辑器进行编辑。配置文件包含使用以下格式的参数条目:
parameter = value
Tivoli Access Manager 的初始安装对大多数参数均设置缺省值。某些参数是静态的并且从不更改;而其它参数可以进行修改以定制服务器功能和性能。
每个文件都包含很多部分(或节),其中包含特定配置类别的一个或多个参数。节标题显示在方括号中:
[stanza-name]
例如,webseald.conf 中的 [junction] 节定义影响 WebSEAL 联结的配置设置。[authentication-mechanisms] 节定义 WebSEAL 支持的认证机制以及关联的共享库文件。
配置文件包含注释,解释每个参数的用法。“#”字符用于将行指定为注释。所有注释行都以“#”字符开始。因此,“#”字符不是用于参数值的有效字符。
每次更改 webseald.conf 文件时,都必须手动重新启动 WebSEAL,以便识别新的更改。请参阅。
下表总结了 webseald.conf 配置文件中包含的各段和节:
WEBSEAL GENERAL
ACTIVE DIRECTORY
[uraf-domino]
[junction]
[filter-url][filter-events]
[filter-schemes][filter-content-types]
[filter-request-headers]
[script-filtering]
[gso-cache][ltpa-cache]
AUTHENTICATION
[certificate]
[http-headers]
[auth-headers]
[authentication-levels]
[cdsso-peers]
[failover]
[failover-attributes]
[e-community-sso]
[e-community-domain-keys]
[reauthentication]
[authentication-mechanisms]
[ssl-qop-mgmt-hosts]
[ssl-qop-mgmt-networks]
[ssl-qop-mgmt-default]
[acnt-mgt]
[enable-redirects]
[cgi][cgi-types]
[cgi-environment-variable]
[content-index-icons]
[content-cache][content-mime-types][content-encodings]
AUTHORIZATION API
[aznapi-configuration]
[aznapi-entitlement-services]
POLICY DIRECTOR
[policy-director][manager]
WebSEAL 服务器根目录
webseald.conf 配置文件中的 server-root 参数对此文件中的其它参数定义 WebSEAL 服务器的根目录位置。webseald.conf 配置文件中表示的所有相对路径名都是相对于此根目录的。
server-root = /opt/pdweb/www
server-root = C:\Program Files\Tivoli\PDWeb\www
通常情况下,不应当更改此路径名。
配置通信参数
以下各节描述关于 WebSEAL 服务器的一般信息:
为 HTTP 请求配置 WebSEAL
WebSEAL 通常处理许多来自未认证用户的 HTTP 请求。例如,通常允许匿名用户对 Web 站点的公共部分上的选定文档进行只读访问。
用于处理 TCP 上的 HTTP 请求的参数位于 webseald.conf 配置文件的 [server] 节中。
启用/禁用 HTTP 访问
在 WebSEAL 配置期间启用或禁用 HTTP 访问:
http = {yes|no}
IBM HTTP Server、WebSphere Application Server(作为 IBM HTTP Server 安装)以及 WebSEAL 均使用端口 80 作为缺省端口。如果将 WebSEAL 安装在与 IBM HTTP Server 相同的系统上,请确保将缺省端口更改为这些服务器之一。编辑 httpd.conf 配置文件或 webseald.conf 配置文件。
设置 HTTP 访问端口值
HTTP 访问的缺省端口是 80:
http-port = 80
例如,要将端口更改为 8080,请设置:
http-port = 8080
为 HTTPS 请求配置 WebSEAL
用于处理 SSL 上的 HTTP 请求(HTTPS)的参数位于 webseald.conf 配置文件的 [server] 节中。
启用/禁用 HTTPS 访问
在 WebSEAL 配置期间启用或禁用 HTTPS 访问:
https = {yes|no}
设置 HTTPS 访问端口值
HTTPS 访问的缺省端口是 443:
https-port = 443
例如,要将端口更改为 4343,请设置:
https-port = 4343
限制来自特定 SSL 版本的连接
可以独立启用和禁用 SSL(安全套接字层)V2、SSL V3 和 TLS(传送层安全性)V1 的连通性。控制特定 SSL 和 TLS 版本连接的参数位于 webseald.conf 配置文件中的 [ssl] 节中。缺省情况下,启用所有 SSL 和 TLS 版本。
disable-ssl-v2 = { yes | no }
disable-ssl-v3 = { yes | no }
disable-tls-v1 = { yes | no }
HTTP/HTTPS 通信的超时参数
WebSEAL 使用 SSL 的 IBM Global Security Kit(GSKit)实现。当 WebSEAL 接收到来自 HTTPS 客户机的请求时,GSKit SSL 将建立初始握手信号并维护会话状态。
WebSEAL 支持以下 HTTP 和 HTTPS 通信的超时参数。这些参数位于 webseald.conf 配置文件的 [server] 节中。
client-connect-timeout
一旦已出现初始握手信号,则该参数将指示对于初始 HTTP 或 HTTPS 请求,WebSEAL 保持连接打开的时间长度。缺省值是 120 秒。
client-connect-timeout = 120
persistent-con-timeout
在第一次 HTTP 请求和服务器响应后,此参数控制 WebSEAL 在关闭之前保持 HTTP 持久连接打开的最大秒数。缺省值为 5 秒。
persistent-con-timeout = 5
图形 14. HTTP 和 HTTPS 通信的超时参数
附加 WebSEAL 服务器超时参数
以下附加超时参数可在 webseald.conf 配置文件中设置:
缺省值(秒)
[junction]
http-timeout
通过 TCP 联结向后端服务器发送数据和从它读取数据的超时值。
[junction]
https-timeout
通过 SSL 联结向后端服务器发送数据和从它读取数据的超时值。
[cgi]cgi-timeout
向本地 CGI 进程发送数据和从它读取数据的超时值。
[junction]
WebSEAL 为每个联结的服务器定期执行后台 ping,以确定它们是否正在运行。WebSEAL 最多每 300 秒 ping 一次,不会更频繁(无论设置的是何值)。
管理 Web 空间
以下各节描述管理 Web 空间所需的任务:
Web 文档树的根目录
对于 WebSEAL 使其成为可用的文档资源,Web 文档树位置是文档树根目录的绝对路径。此路径名由 webseald.conf 配置文件 [content] 节中的 doc-root 参数表示。缺省位置最初在 WebSEAL 安装期间建立:
doc-root = /opt/pdweb/www/docs
doc-root = C:\Program Files\Tivoli\PDWeb\www\docs
该值只使用一次 ― 安装后第一次启动 WebSEAL 的时候。然后该值被存储在联结数据库中。以后在 webseald.conf 中对该值的进一步修改对它没有影响。
安装后如何更改文档根目录:
安装后,必须使用 pdadmin 实用程序来更改文档根目录位置值。以下示例(机器或主机名为 websealA)阐述了此过程:
登录到 pdadmin:
pdadmin> login
输入用户标识:sec_master
输入密码:
使用 server task list 命令显示所有当前联结点:
pdadmin> server task webseald-websealA list
使用 server task show 命令显示联结的详细信息:
pdadmin> server task webseald-websealA show /
类型:本地
联结硬限制:0 ― 使用全局值
联结软限制:0 ― 使用全局值
活动的工作程序线程:0
根目录:/opt/pdweb/www/docs
创建新的本地联结替换当前联结点(需要 -f 选项强制产生新联结,该新联结将覆盖现有联结):
pdadmin> server task webseald-websealA create -t local -f -d /tmp/docs /
Created junction at /
列出新联结:
pdadmin> server task webseald-websealA list
显示该联结的详细信息:
pdadmin> server task webseald-websealA show /
类型:本地
联结硬限制:0 ― 使用全局值
联结软限制:0 ― 使用全局值
活动的工作程序线程:0
根目录:/tmp/docs
配置目录索引
请求的 URL 表达式以目录名结束时,您可以指定由 WebSEAL 返回的缺省文件的名称。
如果该缺省文件存在,WebSEAL 则将文件返回客户机。如果文件不存在,则 WebSEAL 将动态生成目录索引并将列表返回客户机。
用于配置目录索引文件的参数位于 webseald.conf 配置文件的 [content] 节中。
索引文件的缺省值为:
directory-index = index.html
如果您的站点使用不同的约定,可以更改此文件名。例如:
directory-index = homepage.html
如果请求中的目录不包含 directory-index 参数定义的索引文件,则 WebSEAL 将动态地生成目录索引。生成的索引包含目录内容列表,带有至目录中的每个条目的链接。仅当客户机请求访问对于该目录在 ACL 上具有“列表”(l)许可权的目录时,才会生成索引。
可以为生成的索引中列出的每个文件类型配置由 WebSEAL 使用的特定图形图标。webseald.conf 配置文件中的 [content-index-icons] 节包含文档 MIME 类型的列表及所显示的关联 .gif 文件:
[content-index-icons]
image/*= /icons/image2.gif
video/* = /icons/movie.gif
audio/* = /icons/sound2.gif
text/html = /icons/generic.gif
text/* = /icons/text.gif
application/x-tar = /icons/tar.gif
application/* = /icons/binary.gif
这些节条目的键(左手边)定义了 MIME 类型或 MIME 类型的集合。仅对于指定的 MIME 类型目录来说,星号(*)字符是通配符。更多有关配置 MIME 类型的信息,请参阅
可以配置此列表以为每一个 MIME 类型指定其它图标。也可以远程定位图标。例如:
application/* = /icons/binary.gif
也可以配置以下附加图标值:
用于表示子目录的图标:
diricon = /icons/folder2.gif
用于表示父目录的图标:
backicon = /icons/back.gif
用于表示未知文件类型的图标:
unknownicon = /icons/unknown.gif
所提供的图标均为 GIF 格式,但这种格式不是必需的。.
Windows:CGI 程序的文件命名
包含在 webseald.conf 配置文件的 [cgi-types] 节中的参数允许您指定识别和执行为 CGI 程序的 Windows 文件扩展类型。
UNIX 操作系统不需要文件扩展名。但必须为 Windows 操作系统定义文件扩展类型。
[cgi-types] 节列出了所有有效的扩展类型,并且(在必要时)将每个扩展名映射到适当的 CGI 程序。
[cgi-types]
&extension> = &cgi-program:>
缺省情况下,只将那些带有与节中所列文件扩展名匹配的文件作为 CGI 程序执行。
如果列表中不包含某个 CGI 程序的扩展名,将不执行该程序。
带有 .exe 扩展名的文件在 Windows 中缺省地作为程序执行而不需要映射。
但是,无论何时想要在 Windows 上安装 .exe 文件用于下载,都必须重命名该扩展名或将文件安装为压缩文件的一部分(例如 .zip)。
您必须为代表解释脚本文件的扩展名提供适当的解释程序。这些扩展名类型的示例包括:shell 脚本(.sh 和 .ksh)、Perl 脚本(.pl)和 Tcl 脚本(.tcl)文件。
以下示例说明了一个典型的 [cgi-types] 节配置:
[cgi-types]
tcl = tclsh76
WebSEALE 服务器主机系统上的可执行 UNIX 文件
WebSEAL 支持本地联结的创建。这些联结与 WebSEAL 服务器存在于相同的主机系统上。
当在 UNIX 系统上访问本地联结时,如果给予文件 UNIX 执行许可权,则 WebSEAL 将文件解释为 CGI 脚本。例如,如果给予位于本地 WebSEAL 联结的 HTML 页面以执行许可权,则 WebSEAL 会解释此文件为可执行文件,且将不会显示它。
要确保正确显示本地文件,请从所有通过本地联结访问的非 CGI 文件中除去执行许可权。
配置 Web 文档高速缓存
由于 Web 文档检索性能不佳,客户机可能会经常遇到网络访问时间和文件下载时间过长的问题。
由于 WebSEAL 服务器正在等待从联结的后端服务器或速度更慢的本地存储器检索文件,因此会导致性能不佳。
Web 文档高速缓存提供了灵活性,可以从 WebSEAL 而不是跨越联结的后端服务器获得文档。Web 文档高速缓存功能允许将公共访问的 Web 文档类型存储在 WebSEAL 服务器的内存中。继续请求已高速缓存在 WebSEAL 服务器中的文档时,客户机会体验到更快的响应。
高速缓存的文档可包括静态的文本文档和图形图像。但不能高速缓存动态产生的文档,例如数据库查询结果 。
高速缓存是在 MIME 类型的基础上执行的。为 Web 文档高速缓存配置 WebSEAL 时,将标识以下三个参数:
文档 MIME 类型
存储介质类型
存储介质大小
可在 webseald.conf 配置文件的 [content-cache] 节中定义 Web 文档高速缓存。
应用以下语法:
&mime-type> = &cache-type>:&cache-size>
代表 HTTP“Content-Type:”响应头中传达的任何有效 MIME 类型。该值可以包含星号(*)。*/* 值代表缺省的对象高速缓存,它将保留不符合显式配置的高速缓存的任何对象。请注意,这里的星号仅对于 MIME 类型目录及其内容来说是通配符。这不是用于正规表达式匹配的通配符。
cache-type
指定用于高速缓存的存储介质类型。此发行版的 Tivoli Access Manager 仅支持“memory”高速缓存。
cache-size
指定在根据“最近最少使用”算法除去对象前,给定高速缓存可增长到的最大大小(以 KB 为单位)。
text/html = memory:2000
image/* = memory:5000
*/* = memory:1000
影响 Web 文档高速缓存的条件
Web 文档高速缓存机制观察以下条件:
仅当在 webseald.conf 中定义了某高速缓存时才会执行高速缓存操作。
缺省情况下,无任何高速缓存是在安装时定义的。
如果不指定缺省高速缓存,将不会高速缓存与任何显式高速缓存不匹配的文档。
仍然对高速缓存信息的所有请求执行授权。
高速缓存机制不会高速缓存对请求(包含查询字符串)的响应。
高速缓存机制不会高速缓存通过联结(使用 -c 和 -C 选项配置)的请求的响应。
刷新所有高速缓存
可以使用 pdadmin 实用程序来刷新所有已配置的高速缓存。
该实用程序不允许刷新单个高速缓存。
在可以使用 pdadmin 之前,必须作为 Tivoli Access Manager 管理员 sec_master 登录安全域。
要刷新所有 Web 文档高速缓存,请输入以下命令:
# pdadmin server task webseald-&machine-name> cache flush all
MSDOS> pdadmin server task webseald-&machine-name> cache flush all
控制特定文档的高速缓存
可以控制特定文档的高速缓存,方法是将特殊受保护对象策略(POP)附加到那些对象。此 POP 必须包含名为 document-cache-control 的扩展属性。
document-cache-control 扩展属性识别以下两个值:
no-cache 值指示 WebSEAL 不要高速缓存此文档。请记住具有 POP 的对象的所有子对象也继承 POP 条件。
public 值允许 WebSEAL 通过忽略联结是使用 -c 或 -C 选项创建的事实来高速缓存文档。此外,此值还允许在发送具有认证头(例如基本认证)的请求时高速缓存此文档。此条件还包括请求,在该请求中 WebSEAL 代表客户机插入 BA 信息(例如使用 GSO 或 -b supply 联结)。通常,代理服务器不高速缓存对包含授权头的请求的响应文档。
使用 pdadmin pop create、pdadmin pop modify 和 pdadmin pop attach 命令。以下示例对创建具有 document-cache-control 扩展属性的名为“doc-cache”的 POP 并将其附加到对象(budget.html)作了图例说明:
pdadmin> pop create doc-cache
pdadmin> pop modify doc-cache set attribute document-cache-control no-cache
pdadmin> pop attach /WebSEAL/hostA/junction/budget.html doc-cache
budget.html 文档始终不会由 WebSEAL 高速缓存。此文档的每个请求必须直接发给其所在的后端服务器。
关于 pdadmin 命令行实用程序的详细信息可以在《IBM Tivoli Access Manager Base 管理员指南》中找到。
指定用于 URL 过滤的文档 MIME 类型
为了确保通过 WebSEAL 联结的链接的正常性能,WebSEAL 可将特定 URL 过滤规则应用到来自后端联结服务器的文档响应。您必须首先指定 WebSEAL 可识别的文档 MIME 类型。
webseald.conf 配置文件的 [filter-content-types] 节中的 type 参数指定 MIME 类型值。缺省情况下,WebSEAL 配置为可识别两种 MIME 类型文档:
[filter-content-types]
type = text/html
type = text/vnd.wap.wml
WebSEAL 可将以下 URL 过滤功能应用到所有已配置的文档类型:
URL 模式过滤
WebSEAL 仅过滤使用 webseald.conf 的 [filter-schemes] 节中所定义模式的 URL
URL 属性过滤
绝对 URL 的脚本过滤
管理定制 HTTP 错误消息页面
有时,WebSEAL 服务器试图为请求服务却失败。
有许多可能引起失败的原因。例如:
文件不存在
许可权设置禁止访问
不正确的 UNIX 文件许可权或类似情况使得 CGI 程序无法执行
当发生服务请求失败时,服务器将向浏览器返回出现在 HTML 错误页面中的诸如“403 禁止访问”的错误消息。
有几种可用的错误消息;每个消息都存储在单独的 HTML 文件中。
这些文件存储在以下目录中:
&install-path>/www/lib/errors/&locale-dir>
&install-path>\www\lib\errors\&locale-dir>
errors 目录包含许多包含了本地化版本的错误消息文件的语言环境子目录。
例如,美国/英语消息的目录路径为:
&install-path>/www/lib/errors/en_US
&install-path>\www\lib\errors\en_US
有关多语言环境支持的更多信息,请参阅。
该目录中的消息以 HTML 格式保存,因此能在浏览器中正确显示。
可以编辑这些 HTML 页面以定制它们的内容。
文件名称是操作失败时返回的内部错误码的十六进制值。不能更改这些文件名。
下表包含一些更普遍错误消息的文件名和内容列表:
HTTP 错误码
无法为使用的客户证书检索凭证。可能的原因包括:
用户提供了不正确的证书
证书已被撤消
认证数据库缺少用户凭证
38ad52fa.html
所请求的操作要求除去非空目录。
这是非法操作。
38cf013d.html
请求高速缓存失败
已超出 request-max-cache 或 request-body-max-read 值。
38cf0259.html
无法注册用户
请求的资源要求 WebSEAL 服务器注册用户至另一个 Web 服务器。
然而,当 WebSEAL 试图检索信息时发生问题。
38cf025a.html
用户没有单一注册信息
WebSEAL 无法为请求的资源定位 GSO 用户。
38cf025b.html
用户没有单一注册目标
WebSEAL 无法为请求的资源定位 GSO 用户。
38cf025c.html
用户的多个注册目标
为请求的资源定义了多个 GSO 目标。这是一个错误配置。
38cf025d.html
请求的资源由联结的后端 Web 服务器保护,要求 WebSEAL 注册用户至该 Web 服务器。
为此,用户必须先登录到 WebSEAL。
38cf025e.html
无法注册用户
请求的资源要求 WebSEAL 服务器让用户注册到另一个 Web 服务器。
但用户帐号的注册信息不正确。
38cf025f.html
意外的认证提问
WebSEAL 从联结的后端 Web 服务器接收到意外的认证提问。
38cf0421.html
请求的资源已被临时移动。通常发生在出现错误处理的重定向的情况。
38cf0424.html
WebSEAL 接收到无效的 HTTP 请求。
38cf0425.html
请求的资源由 WebSEAL 保护,要访问它,必须先登录。
38cf0427.html
用户不具有访问请求的资源的许可权。
38cf0428.html
无法定位请求的资源。
38cf0432.html
服务不可用
WebSEAL 所需的用以完成请求的服务当前不可用。
38cf0437.html
服务器暂挂
WebSEAL 服务器已被系统管理员临时暂挂。在管理员将服务器返回给服务前,将不处理请求。
38cf0439.html
丢失会话信息
浏览器/服务器的交互是与不再响应的联结的后端服务器的状态会话。WebSEAL 需要该服务器上的服务以完成请求。
38cf0442.html
服务不可用
WebSEAL 要求的服务位于联结的后端服务器上,此服务器上的 SSL 相互认证失败。
38cf07aa.html
CGI 程序失败
CGI 程序无法正确执行。
default.html
服务器错误
由于意外错误,WebSEAL 无法完成请求。
deletesuccess.html
客户机启动的 DELETE 请求成功完成。
putsuccess.html
客户机启动的 PUT 操作成功完成。
relocated.html
请求的资源已被临时移动。
websealerror.html
400 WebSEAL 服务器错误
WebSEAL 服务器内部错误。
HTTP 错误消息页面的宏支持
以下宏可用于定制前节中列出的 HTML 错误页面。宏可动态替换适当的可用信息。
%ERROR_CODE%
错误码的数值。
%ERROR_TEXT%
消息编目中与错误码关联的文本。
客户机请求的 HTTP 方法。
客户机请求的 URL。
%HOSTNAME%
全限定主机名。
%HTTP_BASE%
服务器的基本 HTTP URL“http://&host>:&tcpport>/”。
%HTTPS_BASE%
服务器的基本 HTTPS URL“http://&host>:&sslport>/”。
来自请求的引用者头的值,如果没有则为“未知的”。
%BACK_URL%
来自请求的引用者头的值,如果没有则为“/”。
%BACK_NAME%
如果在请求中有引用者头则值为“BACK”,如果没有则值为“HOME”。
管理定制帐户管理页面
Tivoli Access Manager 包含可定制为包含特定于站点的消息或执行特定于站点的操作的样本帐户管理 HTML 页面。大部分表单适用于通过 HTTP 或 HTTPS 的表单、标记和 BA 认证。
这些表单的文件位置由 webseald.conf 配置文件的 [acnt-mgt] 节中的 mgt-pages-root 参数定义。
mgt-pages-root = lib/html/&lang-dir>
实际使用的目录基于本地化。缺省的美国英语目录为:
lib/html/C
日语语言环境文件在以下目录中:
lib/html/JP
有关多语言环境支持的更多信息,请参阅。
定制页面参数和值
以下特殊的 HTML 页面参数和值位于 webseald.conf 配置文件的 [acnt-mgt] 节中。某些页面仅由提供身份信息的表单登录方法使用。
login.html
login-success =
login_success.html
logout.html
account-locked =
acct_locked.html
passwd-expired =
passwd_exp.html
passwd-change =
passwd.html
passwd-change-success =
passwd_rep.html
passwd-change-failure =
passwd.html
token-login =
tokenlogin.html
next-token =
nexttoken.html
stepup-login =
stepuplogin.html
switch-user =
switchuser.html
cert-failure =
certfailure.html
定制 HTML 页面描述
login.html
用户名和密码的标准请求表单
login_success.html
成功登录后显示的页面。
logout.html
成功注销后显示的页面。
acct_locked.html
由于锁定的帐户导致用户认证失败,而显示的页面。
passwd_exp.html
由于失效密码导致用户认证失败,而显示的页面。
passwd.html
更改密码表单。如果密码更改请求失败,也会显示此页面。
passwd_rep.html
如果密码更改请求成功而显示的页面。
包含至有效管理页面的链接的页面。
tokenlogin.html
标记登录表单。
nexttoken.html
下一个标记表单。
stepuplogin.html
递升认证登录表单。
switchuser.html
切换用户管理表单。
certfailure.html
如果在 accept-client-certs = required 时客户机未能认证证书而显示的页面。
帐户管理页面的宏支持
以下宏可用于定制前节中列出的 HTML 页面。
可将这些宏字符串放置在模板文件中。宏可动态替换适当的可用信息。
%USERNAME%
用户登录的名称。
(另见。)
从 Tivoli Access Manager 返回的硬编码错误消息。
客户机请求的 HTTP 方法。
客户机请求的 URL。
%HOSTNAME%
全限定主机名。
%HTTP_BASE%
服务器的基本 HTTP URL“http://&host>:&tcpport>/”。
%HTTPS_BASE%
服务器的基本 HTTPS URL“http://&host>:&sslport>/”。
来自请求的引用者头的值,如果没有则为“未知的”。
%BACK_URL%
来自请求的引用者头的值,如果没有则为“/”。
%BACK_NAME%
如果在请求中有引用者头则值为“BACK”,如果没有则值为“HOME”。
对 Web 服务的多语言环境支持
Tivoli Access Manager WebSEAL 提供 Web 服务的多语言环境支持。
对客户机浏览器的标准 WebSEAL 服务器响应(诸如错误消息、定制 HTML 登录和注销页面以及可服务性消息)可使用客户机的首选语言交付。
WebSEAL 通过使用包含在 accept-language HTTP 头中的值确定用于服务器生成的消息和 HTML 页面的正确语言来支持多语言环境功能。已转换的信息可用于以下服务器资源:
HTTP 错误消息
&install-path>/www/lib/errors/&locale-directory>
定制帐户管理页面
&install-path>/www/lib/html/&locale-directory>
可服务性消息
浏览器采用一组标准的语言值。基本语言值由用于指示语言的两个字符来表示。位置特定的值用两部分的格式表示,指示语言
和该语言版本所使用的国家或地区。示例包括:
es(西班牙语)
de(德语)
en(英语)
it(意大利语)
en-US(英语/美国)
en-GR(英语/英国)
es-ES(西班牙语/西班牙)
es-MX(西班牙语/墨西哥)
pt-BR(葡萄牙语/巴西)
accept-language 头可包含多种语言。每一种附加语言均由逗号分隔。例如:
accept-language: es-mx,es,en
值出现在头中的顺序确定了重要性的层次结构。WebSEAL 检查列表中的第一个值,该值表示现有已安装语言包。如果没有安装此语言的语言包,WebSEAL 将检查列表中表示其关联语言包的下一个语言。
accept-language 头可以使用“q=x.x”参数表示语言的首选级别。WebSEAL 无法识别此参数。头中所列的语言顺序确定了 WebSEAL 的优先级顺序。
可安装用于 WebSEAL 服务器消息的某些语言包。
每个语言包安装均创建特定于语言环境的子目录,该路径用作每个消息的存储位置。例如,西班牙语的语言包将创建以下用作服务器错误消息存储位置的子目录:
&install-path>/www/lib/errors/es
下表列出了 WebSEAL 支持的语言及关联的子目录名称:
英语(缺省值)
巴西葡萄牙语
中文(中国)
中文(台湾)
以下流程示例图例说明了 WebSEAL 如何评估 accept-language 头:
accept-language 头包含 pt-br 作为列表中的第一个值。
pt-br 语言转换为 pt_BR,它代表此语言的 WebSEAL 语言子目录。
如果用于需要消息的该子目录不存在(例如,没有安装此语言的语言包),WebSEAL 将检查 pt 目录。
如果 pt 目录不存在,WebSEAL 将尝试查找头中所列下一个语言的消息子目录。
如果没有安装头中列出的用于所有消息的任何语言包,WebSEAL 会将其正在运行的语言环境(由操作系统上设置的 LC_ALL 或 LANG 环境变量确定)作为缺省值。
WebSEAL 上影响多语言环境支持的条件:
WebSEAL 服务器上始终启用多语言环境支持。
安装的特定语言包确定了将支持何种语言。
WebSEAL 不管 accept-charset HTTP 头的值请求什么,始终向用户返回 UTF-8 字符。
如果 WebSEAL 访问转换消息的语言环境目录,并且该目录为空(例如,内容已由管理员除去),则将返回服务器错误页面。
管理客户机端和服务器端证书
本节描述设置 WebSEAL 所需的管理和配置任务,以便处理用于通过 SSL 认证的客户机端和服务器端数字证书。
WebSEAL 需要证书用于以下情况:
WebSEAL 使用其服务器端证书向 SSL 客户机表明自己身份
WebSEAL 用客户机端证书向联结的后端服务器(为相互认证而配置)表明自己身份
WebSEAL 查阅其认证中心(CA)根证书数据库,以验证使用客户机端证书进行访问的客户机
WebSEAL 查阅其认证中心(CA)根证书数据库,以验证为相互认证而配置的联结的后端服务器。
WebSEAL 使用 SSL 的 IBM Global Security Kit(GSKit)实现来配置和管理数字证书。GSKit 提供 iKeyman 实用程序来设置和管理包含一个或多个 WebSEAL 服务器/客户机证书和 CA 根证书的证书密钥数据库。
WebSEAL 在安装时包含以下组件,以便通过使用数字证书支持 SSL 认证:
缺省密钥数据库(pdsrv.kdb)
缺省密钥数据库存储文件(pdsrv.sth)和密码(“pdsrv”)
一些公共的 CA 根证书
自签的测试证书,WebSEAL 可用它向 SSL 客户机表明自己身份
推荐从知名的认证中心申请常见的证书来替换该测试证书。
WebSEAL 证书处理的配置包括:
GSKit 密钥数据库文件类型
IBM 密钥管理工具(iKeyman)使用下表中总结的几种文件类型。
CMS 密钥数据库由具有扩展名 .kdb 的文件以及可能的两个或多个其它文件组成。创建新密钥数据库时,将创建 .kdb 文件。.kdb 文件中的密钥记录可以是证书也可以是带有其加密专用密钥信息的证书。
创建新证书请求时,将创建 .rdb 和 .crl 文件。在整个 CA 证书请求过程中,.rdb 文件都是必需的。
“密钥数据库”文件。存储个人证书、个人证书请求和签署者证书。例如,缺省 WebSEAL 密钥数据库文件是 pdsrv.kdb。
“存储”文件。存储密钥数据库密码的模糊版本。此文件的主干名称与关联的 .kdb 文件的相同。如果存在专用密钥,也存储这些专用密钥。
“请求”数据库文件。创建 .kdb 密钥数据库文件时,将自动创建此文件。此文件的主干名称与关联的 .kdb 文件的相同。此文件包含未完成的证书请求,还未从 CA 接收回该请求。当从 CA 返回证书时,.rdb 文件将搜索匹配的证书请求(基于公用密钥)。如果找到匹配,则接收证书并且从 .rdb 文件删除相应的证书请求。如果找不到匹配,则拒绝接收证书的尝试。证书请求中包含公共名称、组织、街道地址和其它请求时指定的信息,以及与请求关联的公用和专用密钥。
“证书撤消列表”文件。此文件通常包含已由于一种或另一种原因而取消的证书列表。然而,iKeyman 不为证书撤销列表提供任何支持,所以此文件是空的。
以 ASCII 编码的二进制文件。.arm 文件包含 ASCII 码(用 base-64 编码的)表示的证书,编码中包含其公用密钥,但不包含其专用密钥。原始二进制证书数据将转换为 ASCII 表示。当用户接收到 .arm 文件中的证书时,iKeyman 将对用 ASCII 表示的代码解码并将二进制表示的代码放入适当的 .kdb 文件中。同样,当用户从 .kdb 文件抽取证书时,iKeyman 会将数据从二进制转换为 ASCII 并将其放入 .arm 文件中。请注意:只要文件本身是以 Base64 编码的文件,可接受使用的任何文件扩展名(除 .arm 外)。
“专有编码规则”文件。.der 文件包含用二进制代码表示的证书,其中包含其公用密钥,但不包含其专用密钥。除了是由二进制代码而非 ASCII 代码表示其余均与 .arm 文件很相似。
“PKCS 12”文件,其中 PKCS 表示“公用密钥密码术标准”。.p12 文件包含用二进制代码表示的证书,其中包含其公用密钥和专用密钥。.p12 文件还可能包含多个证书;例如,证书链。因为 .p12 文件包含专用密钥,所以它是受密码保护的。
配置密钥数据库参数
WebSEAL 密钥数据库文件:
安装时,WebSEAL 提供缺省的证书密钥数据库。webseal-cert-keyfile 参数位于 webseald.conf 配置文件的 [ssl] 节中,它用于标识此文件的名称和位置:
webseal-cert-keyfile = /var/pdweb/www/certs/pdsrv.kdb
可以使用 iKeyman 实用程序创建新密钥数据库。然而,必须在 webseal-cert-keyfile 参数中输入此新密钥文件的名称和位置,以便 WebSEAL 能够查找和使用包含在该数据库中的证书。
密钥数据库文件密码:
安装时,WebSEAL 还提供包含 pdsrv.kdb 密钥文件密码的缺省存储文件。webseal-cert-keyfile-stash 参数会将存储文件的位置通知 WebSEAL:
webseal-cert-keyfile-stash = /var/pdweb/www/certs/pdsrv.sth
在该存储文件中加密的缺省密码为“pdsrv”。也可以在 webseal-cert-keyfile-pwd 参数中将密码表述为纯文本。例如:
webseal-cert-keyfile-pwd = pdsrv
安装时,WebSEAL 使用存储文件来获取密钥文件密码。webseal-cert-keyfile-pwd 已注释掉。
使用存储文件,可避免在 webseald.conf 配置文件中将密码显示为文本。
取消您想要使用的特定密码参数的注释。如果同时指定了密码和存储文件,则将使用该密码值。
WebSEAL 测试证书:
安装时,WebSEAL 将提供非安全的自签测试证书。作为服务器端证书的测试证书允许 WebSEAL 对 SSL 客户机表明自己身份。
为更好地控制此测试证书的使用,未将证书安装为缺省证书。取而代之,webseal-cert-keyfile-label 参数将证书指定为活动的服务器端证书,并覆盖在密钥文件数据库中指定为“缺省值”的所有其它证书。
webseal-cert-keyfile-label = WebSEAL-Test-Only
WebSEAL 使用 GSKit 证书处理功能。GSKit 允许但不要求将密钥文件数据库中的证书指定为缺省证书。更多有关证书处理的信息,请参阅 GSKit 文档:Secure Socket Layer and iKeyman User's Guide。
虽然此测试证书允许 WebSEAL 对启用 SSL 的浏览器请求作出响应,但不能由浏览器(不包含适当的根 CA 证书)验证证书。由于每次 WebSEAL 分发中都包含此缺省证书的专用密钥,此证书不提供真正安全的通信。
必须使用 iKeyman 实用程序生成可发送至认证中心(CA)的证书请求。使用 iKeyman 安装并为返回的服务器证书加标签。
如果对其它方案(诸如 -K 联结)使用不同的证书,则可以使用 iKeyman 实用程序创建、安装证书并为这些证书加标签。该密钥文件标签不能包含空格。
WebSEAL(缺省情况下以 user ivmgr 运行)必须对这些密钥数据库文件具有读(r)许可权。
用于 Tivoli Access Manager 间服务器 SSL 通信的参数:
webseald.conf 配置文件的 [ssl] 节包含用于配置密钥文件的四个附加参数,此密钥文件由 WebSEAL 用于与其它 Tivoli Access Manager 服务器的内部 SSL 通信。仅应当通过 pdconfig 配置脚本修改这些参数。
ssl-keyfile =
ssl-keyfile-pwd =
ssl-keyfile-stash =
ssl-keyfile-label =
使用 iKeyman 证书管理实用程序
iKeyman 实用程序是随 GSKit 一起提供的工具,可用来管理 WebSEAL 使用的数字证书。iKeyman 可用于以下功能:
创建一个或多个密钥数据库
更改密钥数据库密码
创建新 WebSEAL 证书
设置新的缺省 WebSEAL 证书
创建用于测试的自签署证书
请求和接收 CA 根证书
向数据库添加证书或从数据库删除证书
将证书从一个数据库复制到另一个数据库
请参见 Secure Sockets Layer Introduction and iKeyman
User's Guide,以获取有关使用 iKeyman 实用程序的详细信息。
配置 CRL 检查
证书撤销列表(CRL)是一种防止无用证书的验证的方法。CRL 包含被认为不可信的证书的标识。WebSEAL 使用的 SSL 的 GSKit 实现支持 CRL 检查。GSKit 允许 WebSEAL 对客户机端证书和来自 SSL 联结的证书执行 CRL 检查。
WebSEAL 必须知道该列表的位置,以便执行 CRL 检查。LDAP 服务器位置的参数(可在客户机端证书认证期间引用此参数用于 CRL 检查)可在 webseald.conf 配置文件的 [ssl] 节中找到:
#crl-ldap-server = &server-name>
#crl-ldap-server-port = &port-id>
#crl-ldap-user = &webseal-admin-name>
#crl-ldap-user-password = &admin-password>
LDAP 服务器位置的参数(可在通过 SSL 联结认证期间引用此参数用于 CRL 检查)可在 webseald.conf 配置文件的 [junction] 节中找到:
[junction]
#crl-ldap-server = &server-name>
#crl-ldap-server-port = &port-id>
#crl-ldap-user = &webseal-admin-name>
#crl-ldap-user-password = &admin-password>
缺省情况下,CRL 检查是禁用的(参数被注释掉)。
要在证书认证期间启用 CRL 检查,请取消每个参数的注解并输入适当的值。
crl-ldap-user 的空值表示 SSL 认证机制应作为匿名用户绑定到 LDAP 服务器。
有关 GSKit 对证书撤销列表的支持信息,请参阅 Secure Sockets Layer Introduction and iKeyman User's Guid。
配置 CRL 高速缓存
GSKit 允许 WebSEAL 对客户机端证书和来自 SSL 联结的证书执行 CRL 检查。要改进 CRL 检查性能,可以高速缓存来自特定认证中心(CA)的 CRL。后续 CRL 检查对照列表的此已高速缓存版本进行。
本节中讨论的两个 webseald.conf 配置文件参数的设置将直接传递到 GSKit 实用程序。关于 GSKit 功能的更多信息,请参阅 GSKit 文档。
设置最大高速缓存条目数
gsk-crl-cache-size 参数指定 GSKit CRL 高速缓存中的最大条目数。每个条目都表示特定认证中心的一个完整 CRL。缺省设置为“0”。激活高速缓存需要大于“0”的值。gsk-crl-cache-size 和 gsk-crl-cache-entry-lifetime 同时设置为“0”(缺省值)时,将禁用 CRL 高速缓存。
gsk-crl-cache-size = 0
设置 GSKit 高速缓存有效期超时值
gsk-crl-cache-entry-lifetime 参数指定 GSKit CRL 高速缓存中所有条目的有效期超时值。此值以秒表示并且范围可以是 0-86400 秒。gsk-crl-cache-size 和 gsk-crl-cache-entry-lifetime 同时设置为“0”(缺省值)时,将禁用 CRL 高速缓存。
gsk-crl-cache-size = 0
配置缺省 HTTP 记录日志
WebSEAL 维护三个常规的 HTTP 日志文件,它们记录活动而不是消息:
request.log
referer.log
缺省情况下,这些日志文件位于以下目录中:
/var/pdweb/www/log/
C:\Program Files\Tivoli\PDWeb\www\log\
配置标准 HTTP 记录日志的参数位于 >webseald.conf 配置文件的 [logging] 节中。
下表说明了 HTTP 日志文件和配置文件参数间的关系:
启用/禁用参数
(= yes 或 no)
request.log
requests-file
referer.log
referers-file
agents-file
例如,request.log 文件的缺省位置条目如下:
requests-file = /var/pdweb/www/log/request.log
requests-file = \Program Files\Tivoli\PDWeb\www\log\request.log
启用和禁用 HTTP 记录日志
缺省情况下,启用所有的 HTTP 记录日志:
requests = yes
referers = yes
agents = yes
可独立于其它日志启用和禁用每个日志。如果有任何参数设置为“no”,则将禁用该文件的记录日志。
一旦如以上所述启用,则缺省 WebSEAL HTTP 记录日志实际上将由 Tivoli Access Manager 事件记录日志机制处理,如中所述。
指定时间戳记类型
可以选择在每个日志中使用时间戳记,这些日志以格林威治标准时间(GMT)替换本地时区记录。缺省情况下,使用本地时区:
gmt-time = no
要使用 GMT 时间戳记,设置如下:
gmt-time = yes
指定日志文件转存阈值
max-size 参数用于指定每个 HTTP 日志文件可以增长的最大大小,它具有以下缺省值(以字节计):
max-size = 2000000
当日志文件达到指定值时(即其转存阈值),现有文件会备份到一个同样名称并附加当前日期和时间戳记的文件中。然后启动一个新的日志文件。
不同的可能 max-size 值的解释如下:
如果 max-size 值小于 0(& 0),则将在每次调用记录日志进程和从该实例开始每 24 小时都创建新的日志文件。
如果 max-size 值等于 0(= 0),则不执行转存且日志文件无限增长。如果日志文件已经存在,则将新数据附加到其上。
如果 max-size 值大于 0(& 0),则当日志文件达到配置的阈值时将执行转存。如果启动时日志文件已经存在,则将新数据附加到其上。
指定日志文件缓冲区刷新频率
将日志文件写入缓存的数据流中。如果正在实时监视日志文件,您可能想更改服务器强制刷新日志文件缓冲区的频率。
缺省情况下,日志文件每 20 秒刷新一次:
flush-time = 20
如果指定了负值,将在每次写入记录后执行刷新。
HTTP 公共日志格式(用于 request.log)
Tivoli Access Manager 服务器发送回的每个响应(成功或失败)都在 request.log 文件中使用以下 HTTP 公共日志格式以一行条目记录:
host - authuser [date] request status bytes
主机(host)
指定发出请求机器的 IP 地址。
此字段包含用户的身份信息。“unauth”值用于未认证的用户。
指定请求的日期和时间。
指定来自客户机端的请求的第一行。
指定发回到发出请求的机器的 HTTP 状态码。
指定发回到发出请求的机器的字节数。此值(未过滤的内容大小或零大小)是使用 log-filtered-pages 参数配置的。
显示 request.log 文件
request.log 记录 HTTP 请求的标准记录日志,诸如关于请求的 URL 的信息和关于作出请求的客户机的信息(例如 IP 地址)。
下例显示了 request.log 文件的样本版本:
130.15.1.90 - - [26/Jan/:33 -0800] "GET /~am/a_html/ HTTP/1.0" 403 77
130.15.1.90 - - [26/Jan/:47 -0800] "GET /icons HTTP/1.0" 302 93
130.15.1.90 - - [26/Jan/:59 -0800] "GET /icons/ HTTP/1.0" 403 77
130.15.1.90 - - [26/Jan/:04 -0800] "GET /~am/a_html/ HTTP/1.0" 403 77
130.15.1.90 - - [26/Jan/:11 -0800] "GET /~am/ HTTP/1.0" 403 77
显示 agent.log 文件
agent.log 文件记录了 HTTP 请求中 User_Agent: 头的内容。
该日志显示每个请求的客户浏览器信息,例如体系结构或版本号。
下例显示了 agent.log 文件的样本版本:
Mozilla/4.01 [en] (WinNT; U)
Mozilla/4.01 [en] (WinNT; U)
Mozilla/4.01 [en] (WinNT; U)
Mozilla/4.01 [en] (WinNT; U)
显示 referer.log
referer.log 记录了 HTTP 请求的 Referer: 头。
对于每个请求,日志记录了包含所请求文档的链接的文档。
日志使用以下格式:
引用者 -> 对象
该信息对于跟踪外部到您 Web 空间文档的链接很有用。日志表明由引用者指定的源包含到页面对象的链接。
该日志允许您跟踪失效链,并查明谁在创建与您文档的链接。
下例显示了 referer.log 文件的样本版本:
http://manuel/maybam/index.html -> /pics/tivoli_logo.gif
http://manuel/maybam/pddl/index.html -> /pics/tivoli_logo.gif
http://manuel/maybam/ -> /pddl/index.html
http://manuel/maybam/ -> /pddl/index.html
http://manuel/maybam/pddl/index.html -> /pics/tivoli_logo.gif
http://manuel/maybam/ -> /pddl/index.html
使用事件记录日志配置 HTTP 记录日志
WebSEAL HTTP 记录可在 webseald.conf 配置文件的 [filter-content-types] 节中配置。使用 logcfg 事件记录参数可定义一个和多个日志代理程序(记录日志程序),该程序可从事件池聚集特定种类的日志信息并使此信息指向目的地:
[aznapi-configuration]
logcfg = &category>:{stdout|stderr|file|pipe|remote} [[&param>[=&value>]]
[,&param&[=&value&]]...]
关于完整的事件记录日志配置的详细信息,请参阅《IBM Tivoli Access Manager Base 管理员指南》的『使用事件记录日志』部分。
适用于 HTTP 记录日志的 category 值包括:
所有 HTTP 记录日志信息
使用公共日志格式的 HTTP 请求信息
HTTP 引用程序头信息
http.agent
HTTP User_Agent 头信息
NCSA 组合格式捕获 HTTP 请求信息(具有时间戳记)并将引用的引用程序和代理程序字符串追加到标准公共日志格式中。
启用缺省的 WebSEAL HTTP 记录日志参数时,启用以下日志代理程序配置(请参阅)。请注意,日志代理程序配置接受 webseald.conf [logging] 节中 requests-file、referers-file、agents-file、flush-time 和 max-size 参数的值:
request.log(公共日志格式):
logcfg = http.clf:file path=&requests-file>,flush=&flush-time>, \
rollover=&max-size>,log=clf,buffer_size=8192,queue_size=48
referer.log:
logcfg = http.ref:file path=&referers-file>,flush=&flush-time>, \
rollover=&max-size>,log=ref,buffer_size=8192,queue_size=48
agent.log(公共日志格式):
logcfg = http.agent:file path=&agents-file>,flush=&flush-time>, \
rollover=&max-size>,log=agent,buffer_size=8192,queue_size=48
因为缺省 HTTP 记录日志在不同于事件记录日志配置([aznapi-configuration])的节([logging])中配置,所以同时启用这两个记录日志机制时,可能在日志文件中出现每个事件的两个重复条目。
事件记录日志机制对收集 HTTP 日志信息和定制其输出提供更多机动性。
记录 WebSEAL 可服务性消息
Tivoli Access Manager WebSEAL 可服务性消息由 Tivoli Access Manager WebSEAL 的路由文件控制。路由文件位于以下目录中:
/opt/pdweb/etc/
C:\Program Files\Tivoli\PDWeb\etc\
路由文件是包含注释行格式附加文档的 ASCII 文件。此配置文件中的条目确定了记录到日志的可服务性消息的类型。
通过除去注释字符(#)来启用任一条目。路由文件包含以下缺省条目:
FATAL:STDERR:-
ERROR:STDERR:-
WARNING:STDERR:-
#NOTICE:FILE.10.100:/opt/pdweb/log/notice.log
#NOTICE_VERBOSE:FILE.10.100:/opt/pdweb/log/notice.log
FATAL:STDERR:-
ERROR:STDERR:-
WARNING:STDERR:-
#NOTICE:FILE.10.100:%PDWEBDIR%/log/notice.log
#NOTICE_VERBOSE:FILE.10.100:%PDWEBDIR%/log/notice.log
在 Windows 系统上,特殊环境变量 PDWEBDIR 在运行时设置为 WebSEAL 安装目录。
缺省情况下,WebSEAL 在前台运行时,所有消息都发送到屏幕(STDERR)。
缺省情况下,WebSEAL 在后台运行时,消息从 STDERR 重新定向并发送到 webseald.conf 配置文件的 [logging] 节中所定义的 WebSEAL 服务器日志文件:
日志文件位置
WebSEAL服务器(webseald)
webseald.conf
UNIX:[logging]
server-log=/var/pdweb/log/msg_webseald.log
Windows:[logging]
server-log=
C:\Program Files\Tivoli\PDWeb\log\msg_webseald.log
要启用 verbose.log,请取消注释 NOTICE_VERBOSE 行。
NOTICE 消息的 FILE 语法控制日志回滚和文件回收:
FILE.&max-files>.&max-records>
max-file 值指定所使用的文件数。
max-records 值指定每个文件的最大条目数。
在以上缺省示例中,FILE.10.100 表示已创建 10 个文件,每个文件最多有 100 个条目。这些文件名为:
notice.log.1
notice.log.2
notice.log.10
消息在最后一个文件到达其限制后或停止并重新启动服务器时将“环绕舍入”到第一个文件。当重新使用日志文件时,将覆盖(擦除)现有记录。
WebSEAL 审计跟踪文件
审计被定义为系统活动(影响 Tivoli Access Manager 认证过程的安全操作)的数据集合。每个 Tivoli Access Manager 服务器(如 WebSEAL)可以在发生任何安全性相关的审计活动时捕获审计事件。
审计事件被保存为审计记录,其中记载该服务器的特定活动。每个审计过的活动都称为一个审计事件。存储在文件中的审计事件记录的集合被称作审计跟踪。
配置审计跟踪文件
Tivoli Access Manager 提供两种方法来启用和配置审计。两种方法均涉及为 webseald.conf 配置文件的 [aznapi-configuration] 节中的键指定值。这两种方法为:
配置事件记录日志
通过对键 logcfg 提供一系列值来配置事件记录日志。建议使用这种方法,因为它配置了 Tivoli Access Manager 事件记录日志。事件记录日志提供了收集所有用于审计和其它适用性目的的消息的结构化层次结构。事件记录日志功能也支持为记录日志输出使用备用目的地,如控制台(标准输出)、管道和远程服务器。
配置旧的审计
通过为以下每个键提供值来配置旧的审计:
[aznapi-configuration]
logauditauditlogauditcfglogsizelogflush
当将输出定向为文件时,使用此方法与事件记录日志方法是同等的。然而要注意的是,事件记录日志方法提供了附加的对缓冲区大小和事件队列的控制。同时,旧的审计不支持输出到控制台、管道或远程服务器。
在为事件类型配置审计时,请选择事件记录日志或旧的审计。
以下配置任务对于每个 WebSEAL 审计跟踪文件都是必需的:
启用审计记录的创建。
指定审计事件的类型。
WebSEAL 支持的审计事件类型:
凭证获取认证
指定审计文件位置
审计记录在文件系统中的位置。
指定审计文件大小
审计跟踪文件的最大大小。达到最大大小时备份此文件并开始新的文件。
指定文件刷新时间间隔
服务器刷新审计跟踪缓冲区到文件的频率。
以下配置任务对于每个 WebSEAL 审计跟踪文件都是可选的:
指定最大事件队列
存储器中入队的最大事件数。
指定事件队列最大值
队列中触发从存储器向文件刷新的事件数。
指定最大缓冲区大小
存储器中要从个别事件构建的事件缓冲区的最大大小(按字节)。
指定文件方式
二进制或文本。文本方式仅可用于 Windows 平台。
Tivoli Access Manager 事件记录日志支持可选的配置任务,但旧的审计不支持。关于这些任务的更多信息,请参阅《IBM Tivoli Access Manager Base 管理员指南》。
使用 logcfg 来配置审计跟踪文件的语法为:
logcfg =category:file path=file_pathname, flush_interval=seconds,\
rollover_size=number, log_id=logid, queue_size=number, hi_water=number,\
buffer_size=number, mode={text|binary}
category 支持的值为:
表 1. 审计事件类别
审计事件类型
凭证获取认证
audit.authn
HTTP 记录日志信息
使用公共日志格式的 HTTP 请求信息
HTTP 引用程序头信息
HTTP 用户代理程序头信息
http.agent
NCSA 组合格式捕获 HTTP 请求信息(具有时间戳记)并将引用的引用程序和代理程序字符串追加到标准公共日志格式中。
例如,以下 logcfg 条目创建了收集认证事件的 WebSEAL 审计跟踪文件:
logcfg = audit.authn:file path=/var/pdweb/log/audit.log,flush_interval=20, \
rollover_size=2000000
以上示例在 webseald.conf 中以一连续行输入。
在此示例中,审计在启动时 Tivoli Access Manager 从 webseald.conf 中读取 logcfg 条目时启用。以下参数提供了必要的配置设置:
表 2. 必要配置设置的示例值
audit.authn:file
审计事件类型
path=/var/pdweb/log/audit.log
审计文件位置
rollover_size=2000000
审计文件大小
flush_interval=20
文件刷新时间间隔
此示例中未指定可选的配置设置。如未指定可选的设置,Tivoli Access Manager 将为每个设置使用缺省值:
表 3. 可选的配置设置的缺省值
queue_size=number
最大事件队列。缺省值为 0。此值表明未强制要求最大大小。
hi_water=number
事件队列最高使用标记。缺省值为 queue_size 的三分之二。当 queue_size 为 0 时,缺省值为 100。
buffer_size=number
最大缓冲区大小。缺省大小为禁用缓冲的 0。
mode={text|binary}
文件方式。缺省方式为 binary。文本方式仅在 Windows 上受支持。
logcfg 条目放置在 [aznapi-configuration] 节下面的 webseald.conf 中。为每个审计事件类型创建单独的 logcfg 条目。
要使用旧的审计来为以上认证审计示例完成配置任务,同等的配置文件条目将是:
[aznapi-configuration]
logaudit = yes
auditcfg = authn
auditlog = /var/pdweb/log/audit.log
logsize = 2000000
logflush = 20
旧的审计不支持可选配置设置。
WebSEAL 配置文件参考的审计部分:。
《IBM Tivoli Access Manager Base 管理员指南》的记录日志和审计章节。
HTTP 审计记录
HTTP 记录日志会捕获与标准 HTTP 日志文件(request.log、referer.log 和 agent.log)的相同信息。
以下是 HTTP 访问审计记录样本:
&event rev="1.1">
&date>-23:04:26.931+00:00I-----&/date>
&outcome status="">1&/outcome>
&originator blade="webseald">&component>http&/component>
&action>2&/action>
&location>146.84.251.70&/location>
&/originator>
&accessor name="user not specified">
&principal auth="IV_DCE_V3.0">cell_admin&/principal>
&/accessor>
&target resource="5">object>/pics/pd30.gif&/object>&/target>
认证审计记录
主体的认证在凭证获取期间执行。Tivoli Access Manager 可捕获审计记录,以记录这类认证尝试的成功或失败。
通过向服务器配置文件的 [aznapi-configuration] 节中的审计配置列表添加“authn”,可以配置对认证尝试的审计:
[aznapi-configuration]
auditcfg = authn
下列是从 WebSEAL 记录的未认证用户认证事件样本。
&event rev="1.1"&
&date&-23:04:26.630+00:00I-----&/date&
&outcome status="0"&0&/outcome&
&originator blade="webseald"&&component rev="1.2"&authn&/component&
&action&0&/action&
&location&phaedrus&/location&
&/originator&
&accessor name=""&
&principal auth="invalid"&&/principal&
&/accessor&
&target resource="7"&&object&&/object&&/target&
下列是从 WebSEAL 记录的已认证用户认证事件样本。
&event rev="1.1"&
&date&-15:56:06.551+00:00I-----&/date&
&outcome status="0"&0&/outcome&
&originator blade="webseald"&&component rev="1.2"&authn&/component&
&action&0&/action&
&location&phaedrus&/location&
&/originator&
&accessor name=""&
&principal auth="IV_LDAP_V3.0" domain="Default"&testuser2&/principal&
&/accessor&
&target resource="7"&&object&&/object&&/target&
以下是从 WebSEAL 记录的认证失败(由于密码到期)事件样本。
&event rev="1.1"&
&date&-16:23:00.294+00:00I-----&/date&
&outcome status=""&0&/outcome&
&originator blade="webseald"&&component rev="1.2"&authn&/component&
&action&0&/action&
&location&phaedrus&/location&
&/originator&
&accessor name=""&
&principal auth="IV_LDAP_V3.0" domain="Default"&testuser2&/principal&
&/accessor&
&target resource="7"&&object&&/object&&/target&
以下是从 WebSEAL 记录的认证失败 - 由于无效登录尝试过多(三次攻击策略)- 事件样本。
&event rev="1.1"&
&date&-19:06:00.294+00:00I-----&/date&
&outcome status=""&0&/outcome&
&originator blade="webseald"&&component rev="1.2"&authn&/component&
&action&0&/action&
&location&phaedrus&/location&
&/originator&
&accessor name=""&
&principal auth="IV_LDAP_V3.0" domain="Default"&testuser2&/principal&
&/accessor&
&target resource="7"&&object&&/object&&/target&
以下是成功更改从 WebSEAL 记录的密码事件的样本。
&event rev="1.1"&&date&-16:25:54.543+00:00I-----&/date&
&outcome status="0"&0&/outcome&
&originator blade="webseald"&&component rev="1.2"&authn&/component&
&action&0&/action&
&location&phaedrus&/location&
&/originator&
&accessor name=""&
&principal auth="passwd-ldap" domain="Default"&testuser2&/principal&
&/accessor&
&target resource="7"&&object&&/object&&/target&
列出了认证尝试失败时所返回的认证错误码及其 &data& 元素结构:
表 4. 认证错误
错误码(十六进制)
错误码(十进制)
生成的 XML
&data>密码失败:用户&/data>
&data>帐户锁定:用户&/data>
所有其它代码
所有其它代码
&data>&username> 用户&/username> &/data>
要确定已审计事件的原因,如锁定的帐户(例如是由于三次攻击策略),请获取上表中显示的错误代码。错误代码包含于 &outcome status> 标记中的审计输出中:
&outcome status>"&/outcome>
对于错误代码调用 pdadmin errtext 命令,以接收结果的原因。
> pdadmin errtext
由于登录尝试的失败次数过多,此帐户暂时已被锁定
Tivoli Access Manager 的错误代码在《IBM Tivoli Access Manager 错误消息参考大全》中进行了描述。

我要回帖

更多关于 acct是什么意思 的文章

 

随机推荐