Page tree
Skip to end of metadata
Go to start of metadata

在此页:


目标用户:

CAST AI 管理员

摘要:本页面说明如何启用和配置CAST AIC门户中的审计跟踪特性,以记录成功的用户登录、失败的登录、注销、web应用启动/停止等。

简介

默认情况下,CAST AIC门户记录重要的用户事件。出于安全原因,如果希望在日志文件中看到此信息,那么可以启用审计跟踪功能。审计跟踪功能将记录所有以下事件:

  • 用户登录失败
  • 用户登录成功
  • 用户注销
  • 启动应用
  • 应用关闭(仅当服务器进程未被关闭时)
  • 用户创建域

  • 用户更新域名
  • 将交付权限授予用户组

  • 拒绝向用户组交付权限

  • 用户删除域
  • 用户创建了一个新应用
  • 用户更新了应用名称
  • 用户将应用从一个域移动到另一个域

  • 用户注销应用
  • 使用JNLP下载CAST 交付管理器工具(DMT)
  • 用户交付了一个应用版本
  • 用户为应用版本交付了一个包
  • 用户交付并关闭了一个应用版本
  • 用户交付并关闭了一个应用版本
  • 用户刷新了应用版本
  • 用户刷新了应用版本的包

启用审计跟踪功能

要启用审计跟踪功能,您需要使用文本编辑器修改以下文件:

%CATALINA_HOME%\webapps\CAST——AICP\WEB——INF\log4j2.xml
  • 在文件中搜索以下行:
<Property name="auditLevel">OFF</Property>
  • OFF值更改为ALL
<Property name="auditLevel">ALL</Property>
  • 在进行任何更改之后,保存log4j2.xml文件,然后重新启动应用服务器使更改生效。

查阅审计跟踪日志文件

  • 默认情况下,当启用时审计跟踪功能将在以下位置提供一个日志文件:
%CATALINA_HOME%\webapps\CAST——AICP\audit\audit.log
  • 用户事件相关的消息将以以下格式显示在日志文件中:    
[ DATE YYYY——MM——DD HH:MM:SS,MS | USER_HOST | USER_NAME | LEVEL | EVENT/MESSAGE ]
  • 示例:
2015——04——10 14:58:47,426 | 10.0.1.50 | James | INFO | Application startup
2015——04——10 14:58:59,945 | 10.0.1.52 | cast | INFO | Login successful
2015——04——10 16:52:13,335 | 10.0.1.52 | cast | INFO | Login successful
2015——04——10 16:52:29,406 | 10.0.1.52 | cast | INFO | Application created [guid: c18ca3b9——ea4d——4ade——842b——b051cb5e8e56, name: MEUDON]
2015——04——10 16:53:00,188 | 10.0.1.52 | cast | INFO | User Logout
2015——04——10 16:53:42,660 | 10.0.1.50 | James | INFO | Application shutdown
2015——04——10 16:53:46,459 | 10.0.1.50 | James | INFO | Application startup
2015——04——10 16:54:07,000 | 10.0.1.52 | cast | WARN | Login failed
2015——04——10 16:54:09,882 | 10.0.1.52 | cast | INFO | Login successful
2015——04——10 16:54:12,629 | 10.0.1.52 | cast | INFO | User Logout

更改日志文件存储位置

审计跟踪日志文件默认情况下是在CAST AIC门户应用部署文件夹(Audit文件夹下)中创建和归档的。要更改此位置,需要使用文本编辑器修改以下文件:

%CATALINA_HOME%\webapps\CAST——AICP\WEB——INF\log4j2.xml

要在web应用的限制范围内更改日志文件夹的位置:

  • 在文件中搜索以下行:
<Property name="auditPath">$${web:rootDir}/audit</Property>
  • 更改/audit到web应用文件层次结构中所需的位置(例如 /test):  
<Property name="logPath">$${web:rootDir}/test</Property>
  • 在进行任何更改之后,保存log4j2.xml文件,然后重新启动应用服务器使更改生效。
  • 日志文件将存储在新的位置。例如:
%CATALINA_HOME%\webapps\CAST——AICP\test

更改日志文件轮换策略

审计跟踪日志文件有一个默认的轮换策略如下:

  • 日志将被发送到audit.log一个月   
  • 在这段时间之后,日志记录将停止到该文件,该文件将被压缩到audit——yyyy——MM.log.zip文件中存储在默认的日志存储位置
  • 同时新的audit.log将创建并使用。  

该策略可以修改如下:

  • 使用文本编辑器修改以下文件:
%CATALINA_HOME%\webapps\CAST——AICP\WEB——INF\log4j2.xml
  • 使用ZIP日志输出的名称找到控制策略的下面一行:  
filePattern="${auditPath}/audit——%d{yyyy——MM}.log.zip"
  • 如有需要,使用以下日期模式字母修改选项:

字母

日期或时间组件

示例

G

时代指示器

AD

y

199696

M

年月

JulyJul07

w

年周

27

W

月周

2

D

年日

189

d

月日

10

F

月周日

2

E

周日

TuesdayTue

a

Am/pm 标记

PM

H

日小时 (0——23)

0

k

日小时(1——24)

24

K

小时 am/pm (0——11)

0

h

小时 am/pm (1——12)

12

m

小时分

30

s

分秒

55

S

毫秒

978

z

通用时区

Pacific Standard TimePSTGMT——08:00

Z

RFC 822 时区

——0800

注意:

  • 纯文本可以使用单引号(')来引用,以避免解释,例如:生成输出2015——w11%d{yyyy——'w'w}

  • 日期格式模式生成的输出依赖于承载web应用服务器机器的语言环境

  • 在进行任何更改之后,保存log4j2.xml文件,然后重新启动应用服务器使更改生效。

轮换政策

通过取消对策略列表中可用的SizeBasedTriggeringPolicy的注释,可以实现按大小轮换的补充审计跟踪日志,如下所示:

<!———— Audit log rotation policies ————>
<Policies>
...
    <!———— <SizeBasedTriggeringPolicy size="10 MB"/> ————>
</Policies>
...

当文件达到指定大小时,基于大小的策略会导致轮换。大小可以以字节为单位指定,后缀为KB、MB或GB,例如“10MB”。

日志文件轮换示例

基于时间的策略基于大小的策略可以一起使用。下一节提供一些如何修改轮调政策的例子:

  • "${auditPath}/audit——%d{yyyy——MM}.log.zip" 按月轮换, 例: audit——2015——03.log.zip
  • "${auditPath}/audit——%d{yyyy——'w'w}.log.zip" 每年每周轮换一次, 例: audit——2015——w11.log.zip
  • "${auditPath}/audit——%d{yyyy——MM——'w'W}.log.zip" 每个月按周轮换, 例: audit——2015——03——w2.log.zip
  • "${auditPath}/audit——%d{yyyy——MM——dd}.log.zip" 按天轮换,例: audit——2015——03——10.log.zip
  • "${auditPath}/audit——%d{yyyy——MM}_%i.log.zip" 当按大小旋转时,除按月旋转外, 例: audit——2015——03_1.log.zip, audit——2015——03_2.log.zip, audit——2015——03_3.log.zip

更改用户事件消息输出格式

如前所述,与用户事件相关的消息将以以下格式显示在日志文件中:

[ DATE YYYY——MM——DD HH:MM:SS,MS | USER_HOST | USER_NAME | LEVEL | EVENT/MESSAGE ]

此输出格式由log4j2.xml文件中的以下行控制:   

<PatternLayout pattern="%date{DEFAULT} | %mdc{audittrail.remotehost} | %mdc{audittrail.username} | %level | %message%n" charset="UTF——8"/>

下列情况为真: 

  • %date{DEFAULT}表示用户事件发生的日期和时间。
  • %mdc{audittrail.remotehost} 表示用户在其中执行审计操作的主机。这是一种自定义模式,由CAST AIC门户在记录操作并不能更改格式时设置。
  • %mdc{audittrail.username} 表示正在执行操作的用户名。作为用户主机模式,它是web应用在用户操作被记录并不能更改格式时设置的值。
  • %level是对应于用户操作优先级的Log4j日志记录级别。例如成功的身份验证将使用简单的“INFO”级别进行日志记录,而失败的身份验证将使用“WARN”级别进行日志记录。
  • %message是与被审计的用户操作对应的模式。

可以通过更改模式布局来修改此输出。有关更多信息,请参见以下Log4j2文档页面:http://logging.apache.org/log4j/2.0/manual/layouts.html#PatternLayout。

更改消息输出

如果需要可以定制输出到日志文件的所有审计跟踪消息。消息存储在XML属性文件中,位置如下:

%CATALINA_HOME%\webapps\CAST——AICP\WEB——INF\classes\audittrail

默认情况下提供两个文件:一个以英语提供消息,另一个以法语提供消息——有关这两个文件如何工作的更多信息,请参阅下面的国际化一节。

  • AuditTrailMessages.xml
  • AuditTrailMessages_fr.xml

如果希望定制输出消息,可以使用文本编辑器编辑XML文件。所有的输出消息都是使用<entry>标记配置的,例如当用户登录失败时输出的消息是在以下行配置的——消息是“登录失败”:

<entry key="USER_LOGIN_FAILED">Login failed</entry>

要改变这一点,只需更新<entry>标记之间的文本:   

<entry key="USER_LOGIN_FAILED">A user login failed</entry>

使用的变量

一些输出消息包含变量,例如:

<entry key="CREATE_DOMAIN">Created application domain %2$s [guid: %1$s]</entry>

这些变量用于显示特定的值。在上面的例子中,消息如下所示,其中域名是TEST,其GUID为50037cba——12ef——43f1——8514——b16660a3b492

Created application domain TEST [guid: 50037cba——12ef——43f1——8514——b16660a3b492]

下面提供了消息中使用的所有变量的完整运行情况:

输入键信息变量
CREATE_DOMAIN创建应用域 %2$s [guid: %1$s]%1$s —— 应用领域指南
%2$s —— 应用领域名称
UPDATE_DOMAIN_NAME应用域%2$s [guid: %1$s]更新名称为 %3$s%1$s —— 应用领域指南
%2$s —— 旧应用域名
%3$s —— 新应用域名
GRANT_DELIVERY_MANAGER将应用域上的%3$s授予交付管理器权限 %2$s [guid: %1$s]%1$s —— 应用领域指南
%2$s —— 应用领域名称
%3$s —— 交付管理名称
DENY_DELIVERY_MANAGER拒绝了应用域上%3$s的交付管理器权限 %2$s [guid: %1$s]%1$s —— 应用领域指南
%2$s —— 应用领域名称
%3$s —— 交付管理名称
DELETE_DOMAIN删除应用域 %2$s [guid: %1$s]%1$s —— 应用领域指南
%2$s —— 应用领域名称
CREATE_APPLICATION

在应用域%2$s [guid: %1$s]中创建应用%2$s [guid: %1$s]

%1$s —— 应用领域指南
%2$s —— 应用领域名称
%3$s —— 应用领域指南
%4$s —— 应用领域名称
UPDATE_APPLICATION_NAME

将应用%2$s [guid: %1$s]的名称更新为%3$s

%1$s —— 应用领域指南
%2$s ——旧应用域名
%3$s —— 新应用域名
MOVE_APPLICATION

将应用%2$s [guid: %1$s]从域%4$s [guid: %3$s]移动到域%6$s [guid: %5$s]


%1$s —— 应用领域指南
%2$s —— 应用领域名称
%3$s —— 旧应用域指南
%4$s ——旧应用域名
%5$s ——新应用域指南
%6$s ——新应用域名
DELETE_APPLICATION删除应用%2$s [guid: %1$s]%1$s —— 应用领域指南
%2$s —— 应用领域名称
APPLICATION_VERSION_DELIVERY交付版本%4$s [guid: %3$s],应用%2$s [guid: %1$s]%1$s —— 应用领域指南
%2$s —— 应用领域名称
%3$s —— 版本指南
%4$s —— 版本名称
APPLICATION_PACKAGE_DELIVERY已交付包%6$s [guid: %5$s],版本%4$s [guid: %3$s]在应用%2$s [guid: %1$s]中%1$s —— 应用领域指南
%2$s —— 应用领域名称
%3$s —— 版本指南
%4$s —— 版本名称
%5$s —— 包指南
%6$s —— 包名称
APPLICATION_VERSION_DELIVERY_CLOSE关闭版本%4$s [guid: %3$s],应用%2$s [guid: %1$s]%1$s —— 应用领域指南
%2$s —— 应用领域名称
%3$s —— 版本指南
%4$s —— 版本名称
REFRESH_APPLICATION刷新应用%2$s [guid: %1$s]%1$s —— 应用领域指南
%2$s —— 应用领域名称
REFRESH_VERSION刷新后的版本%4$s [guid: %3$s],应用%2$s [guid: %1$s]%1$s —— 应用领域指南
%2$s —— 应用领域名称
%3$s —— 版本指南
%4$s —— 版本名称
REFRESH_PACKAGE刷新包%6$s [guid: %5$s],版本%4$s [guid: %3$s],应用%2$s [guid: %1$s]%1$s —— 应用领域指南
%2$s —— 应用领域名称
%3$s —— 版本指南
%4$s —— 版本名称
%5$s —— 包指南
%6$s —— 包名称

删除变量

如果不希望应用、域、交付管理器、版本和包的真实名称出现在审核跟踪输出日志中,那么可以简单的删除。例如,要从以下消息中删除域名,只需将其更改为:

<entry key="GRANT_DELIVERY_MANAGER">Granted delivery manager rights to %3$s on application domain %2$s [guid: %1$s]</entry>

为:

<entry key="GRANT_DELIVERY_MANAGER">Granted delivery manager rights to %3$s on application domain [guid: %1$s]</entry>

国际化

审计跟踪消息默认是国际化的,有两种翻译版本:英语(不支持机器语言的默认语言)和法语。翻译成法语的文档存储在以下XML属性文件类型中:

%CATALINA_HOME%\webapps\CAST——AICP\WEB——INF\classes\audittrail

如果需要,可以在此路径下添加其它语言翻译文件。

  • No labels