审计配置由一个或多个发布器和若干预定义的组构成。
审计组根据对象类型、操作和操作结果定义所有审计事件的子集。每个发布器都被分配了一个或多个审计组。默认情况下,系统信息库发布器将分配给所有审计组。
审计发布器会将审计事件传送给特定审计目的地。默认系统信息库发布器会将审计记录写入系统信息库。每个审计发布器均可以具有特定于实现的选项。可以为审计发布器分配文本格式化程序。(文本格式化程序提供审计事件的文本表示。)
审计配置 (#ID#Configuration:AuditConfiguration) 对象是在 sample/auditconfig.xml 文件中定义的。此配置对象具有一个扩展,该扩展是一个通用对象。
在顶层,此配置对象具有以下属性:
filterConfiguration 属性列出了事件组,这些组用于使一个或多个事件通过事件过滤器。filterConfiguration 属性中列出的每个组都包含表 10–2 中列出的属性。
表 10–2 filterConfiguration 属性
示例 10–5 展示了默认资源管理组。
<Object name=’Resource Management’> <Attribute name=’enabled’ value=’true’/> <Attribute name=’displayName’ value=’UI_RESOURCE_MGMT_GROUP_DISPLAYNAME’/> <Attribute name=’enabledEvents’> <List> <Object> <Attribute name=’objectType’ value=’Resource’/> <Attribute name=’actions’ value=’ALL’/> <Attribute name=’results’ value=’ALL’/> </Object> <Object> <Attribute name=’objectType’ value=’ResourceObject’/> <Attribute name=’actions’ value=’ALL’/> <Attribute name=’results’ value=’ALL’/> </Object> </List> </Attribute> </Object> |
Identity Manager 提供了默认审计事件组。以下部分介绍了这些组及其启用的事件:
您可以在 Identity Manager 管理员界面的“审计配置”页中配置审计事件组(“配置”>“审计”)。有关说明,请参见配置审计组和审计事件。
还可以在“审计配置”页中为每个组配置成功或失败的事件。此界面不支持添加或修改为组启用的事件,但可通过 Identity Manager 调试页(Identity Manager 的“调试”页)来执行此操作。
并非可以为审计事件组选择的每个操作都会生成日志记录。另外,选择“所有操作”选项并不表示所有列出的操作均可用于所有审计事件组。
默认情况下将启用此组。
表 10–3 默认帐户管理事件组
类型 |
操作 |
---|---|
加密密钥 |
所有操作 |
Identity System 帐户 |
所有操作 |
资源帐户 |
批准、创建、删除、禁用、启用、修改、拒绝、重命名、解除锁定 |
工作流案例 |
结束活动、结束进程、结束工作流、启动活动、启动进程、启动工作流 |
用户 |
批准、创建、删除、禁用、启用、修改、拒绝、重命名 |
默认情况下将禁用此组。
表 10–4 Identity Manager 之外的更改事件组和事件
类型 |
操作 |
---|---|
资源帐户 |
本机更改 |
默认情况下将启用此组。
表 10–5 默认遵循性管理组事件
类型 |
操作 |
---|---|
审计策略 |
所有操作 |
访问扫描 |
所有操作 |
遵循性违规 |
所有操作 |
数据导出器 |
所有操作 |
用户权利 |
已批准证明者、已拒绝证明者、已请求修正、已请求重新扫描、终止 |
访问查看工作流 |
所有操作 |
修正工作流? |
所有操作 |
默认情况下将启用此组。
表 10–6 默认配置管理事件组
类型 |
操作 |
---|---|
配置 |
所有操作 |
用户表单 |
所有操作 |
规则 |
所有操作 |
电子邮件模板 |
所有操作 |
登录配置 |
所有操作 |
策略 |
所有操作 |
Xml 数据 |
导入 |
日志 |
所有操作 |
默认情况下将启用此组。
表 10–7 默认事件管理事件组
类型 |
操作 |
---|---|
电子邮件 |
通知 |
测试通知 |
通知 |
默认情况下将启用此组。
表 10–8 默认 Identity Manager 登录/注销事件组
类型 |
操作 |
---|---|
用户 |
证书到期、锁定、登录、注销、解除锁定、用户名恢复 |
默认情况下将启用此组。
表 10–9 默认密码管理事件组和事件
类型 |
操作 |
---|---|
资源帐户 |
更改密码、重设密码 |
默认情况下将启用此组。
表 10–10 默认资源管理事件组和事件
类型 |
操作 |
---|---|
资源 |
所有操作 |
资源对象 |
所有操作 |
资源表单 |
所有操作 |
资源操作 |
所有操作 |
属性解析 |
所有操作 |
工作流案例 |
结束活动、结束进程、结束工作流、启动活动、启动进程、启动工作流 |
默认情况下将禁用此组。
表 10–11 默认角色管理事件组和事件
类型 |
操作 |
---|---|
角色 |
所有操作 |
默认情况下将启用此组。
表 10–12 默认安全管理事件组和事件
类型 |
操作 |
---|---|
权能 |
所有操作 |
加密密钥 |
所有操作 |
组织 |
所有操作 |
管理员角色 |
所有操作 |
默认情况下将启用此组。
表 10–13 服务提供者 事件组和事件
类型 |
操作 |
---|---|
目录用户 |
质询响应、创建、删除、修改、操作后的标注、操作前的标注、更新验证答案、用户名恢复 |
默认情况下将禁用此组。
表 10–14 任务管理事件组和事件
类型 |
操作 |
---|---|
任务实例 |
所有操作 |
任务定义 |
所有操作 |
任务进度 |
所有操作 |
任务结果 |
所有操作 |
置备任务 |
所有操作 |
可以审计添加到 com.waveset.object.Type 类的每种新类型。必须为新类型分配唯一的双字符数据库键,该键将存储在数据库中。所有新类型将添加到不同的审计报告界面。必须将要记录到数据库而无需过滤的每种新类型添加到审计事件组 enabledEvents 属性(如有关 enabledEvents 属性的内容所述)中。
在某些情况下,您可能要审计不具有关联 com.waveset.object.Type 的项目,或者您要更为细化地表示现有类型。
例如,WSUser 对象在系统信息库中存储用户的所有帐户信息。审计进程并未将每个事件都标记为 USER 类型,而是将 WSUser 对象分割为两种不同的审计类型(资源帐户和 Identity Manager 帐户)。以这种方式分割对象可以更容易地在审计日志中查找特定帐户信息。
通过添加到 extendedObjects 属性来添加扩展审计类型。每个扩展对象必须具有下表中列出的属性。
表 10–15 扩展对象属性
参数 |
类型 |
描述 |
---|---|---|
name |
字符串 |
类型的名称,在构建 AuditEvents 时和事件过滤期间使用。 |
displayName |
字符串 |
表示类型名称的消息目录关键字。 |
logDbKey |
字符串 |
在日志表中存储此对象时要使用的双字符数据库键。有关保留的值,请参见审计日志数据库映射。 |
supportedActions |
列表 |
对象类型支持的操作。在用户界面中创建审计查询时将使用此属性。如果此值为 null,则所有操作将显示为针对此对象类型查询的可能值。 |
mapsToType |
字符串 |
(可选)映射到此类型的 com.waveset.object.Type 的名称(如果适用)。尝试解析对象组织成员资格(如果尚未在事件上指定)时使用此属性。 |
organizationalMembership |
列表 |
(可选)组织 ID 的默认列表,如果此类型的事件尚不具有已分配的组织成员资格,则应将这些事件置于此列表中。 |
所有客户特定的键应以 # 符号开头,以防止添加新的内部键时出现重复的键。
示例 10–6 展示了扩展类型的 Identity Manager 帐户。
<Object name=’LighthouseAccount’> <Attribute name=’displayName’ value=’LG_LIGHTHOUSE_ACCOUNT’/> <Attribute name=’logDbKey’ value=’LA’/> <Attribute name=’mapsToType’ value=’User’/> <Attribute name=’supportedActions’> <List> <String>Disable</String> <String>Enable</String> <String>Create</String> <String>Modify</String> <String>Delete</String> <String>Rename</String> </List> </Attribute> </Object> |
通常,审计操作会映射到 com.waveset.security.Right 对象。当添加新 Right 对象时,必须指定唯一的双字符 logDbKey,它将存储在数据库中。您可能会遇到没有权限符合必须审计的特定操作的情况。这时,可以通过将操作添加到 extendedActions 属性中的对象列表来扩展操作。
每个 extendedActions 对象必须包括表 10–16 中列出的属性。
表 10–16 extendedAction 属性
属性 |
类型 |
描述 |
---|---|---|
name |
字符串 |
操作的名称,在构建 AuditEvents 时和事件过滤期间使用。 |
displayName |
字符串 |
表示操作名称的消息目录关键字。 |
logDbKey |
字符串 |
在日志表中存储此操作时要使用的双字符数据库键。 有关保留的值,请参见审计日志数据库映射。 |
所有客户特定的键应以 # 符号开头,以防止添加新的内部键时出现重复的键。
表 10–16 展示了如何添加注销操作。
<Object name=’Logout’> <Attribute name=’displayName’ value=’LG_LOGOUT’/> <Attribute name=’logDbKey’ value=’LO’/> </Object> |
除可以扩展审计类型和操作外,还可以添加结果。默认情况下,有两种结果:成功和失败。可以通过将它们添加到 extendedResults 属性中的对象列表来扩展结果。
每个 extendedResults 对象必须包括表 10–17 中描述的属性。
表 10–17 extendedResults 属性
属性 |
类型 |
描述 |
---|---|---|
name |
字符串 |
结果的名称,在设置 AuditEvents 的状态时和事件过滤期间使用。 |
displayName |
字符串 |
表示结果名称的消息目录关键字。 |
logDbKey |
字符串 |
在日志表中存储此结果时要使用的单字符数据库键。有关保留的值,请参见标题为数据库键的部分。 |
所有客户特定的键都应使用 0–9 范围内的数字,以防止添加新的内部键时出现重复的键。
publishers 列表中的每个项目均为通用对象。每个 publishers 对象都具有以下属性。
表 10–18 publishers 属性
属性 |
类型 |
描述 |
---|---|---|
class |
字符串 |
发布器类的名称。 |
displayName |
字符串 |
表示发布器名称的消息目录关键字。 |
description |
字符串 |
发布器的描述。 |
filters |
列表 |
分配给此发布器的审计组列表。 |
formatter |
字符串 |
文本格式化程序(如果有)的名称。 |
options |
列表 |
发布器选项列表。这些选项是特定于发布器的;列表中的每个项目均为 PublisherOption 的映射表示。请参见 sample/auditconfig.xml 获得示例。 |