SAP Audit审计安全性配置

SAP系统关于审计相关的措施主要包括table log和audit两块。

Table log是针对设置了记录日志的表的更新、插入、删除操作做日志记录,audit是根据配置的规则对用户和账号的操作行为进行记录。

Table log只能记录表的更改日志且记录的日志是存储在数据库中的,audit可以对用户的所有操作进行记录,记录的日志可以以文件的形式存储到操作系统上、也可以存储到数据库中(取决于配置时的选项)。

开启Table log会显著影响性能,开启audit对性能略微有影响、可以忽略不计,上市公司建议两个都开启。建议只对特别重要的配置表开启table log。

审计日志建议在备份服务器上增量备份最少1年,在SAP应用服务器上保留两周。

一、table log开启

1.RZ10设置参数rec/client的值为要记录表更改日志的client

如果有多个client都要监控的话用分号隔开client号就可以,例如rec/client=001,002,003

 2.SE11创建表的时候在技术设置中选择“日志记录更改”

   3.重启SAP应用服务(不用重启操作系统)

  4.之后对这张表做的更改就可以通过事务代码SCU3进行查看了

    二、audit开启

SAP audit管理的事务代码有两套,一套是以SM开头的老事务代码,一套是以RSAU开头的新事务代码。一旦运行过一次RSAU_CONFIG配置,SM开头的事务代码就无法配置了。

老事务代码包括,SM19配置审计参数、SM20查看审计日志、SM18归档审计文件。

新事物代码包括,RSAU_CONFIG,RSAU_CONFIG_SHOW,RSAU_READ_LOG,RSAU_ADMIN等(其他不常用)。

每天第一次运行任何操作时,会在对应的应用服务器实例的DIR_AUDIT目录(默认为/usr/sap/S4P/D00/log)下自动生成当天的审计文件,每个审计文件的最大大小为2GB、写满了就无法写入了,如果审计文件名参数FN_AUDIT值设置为audit_++++++++_######、则一天只能可以生成多个审计文件(后面的######是流水号,第一个审计文件满了自动产生第二个审计文件)。

  1.RZ10配置审计参数,建议配置在DEFAULT参数文件中

DIR_AUDIT /usr/sap/S4P/D00/log

FN_AUDIT audit_++++++++_######

rsau/max_diskspace/per_day 30000M

rsau/max_diskspace/per_file 2000M

rsau/enable 1

2.RSAU_CONFIG配置审计参数文件并激活(启用)配置

以下为建议使用的参数选项。

文件大小不设置则为系统默认值。

创建自己的审计参数文件:

例如我设置的基本原则为业务Client全部监控,所有Client的重要操作都监控,静态配置和动态配置都要配置,记得勾选激活选项。

 3.重启服务器,之后所有操作将会按审计参数文件的配置规则被记录

 4.RSAU_READ_LOG读取审计日志

 5.RSAU_ADMIN管理审计日志文件

使用事务代码RSAU_ADMIN设置后台作业定期删除服务器上的审计文件(前提是已经设置任务每天将SAP服务器上的审计文件增量备份到其他服务器上,且已经执行过一次全备,其他服务器上的审计日志保留1年,SAP应用服务器上的保留两周,具体保留多久、使用什么样的策略取决于审计需要以及相关法律法规规定),以免撑爆服务器。

默认情况下,SAP应用服务器安装好就会在SM37运行一个老JOB,名称为RSAUPURG,对应SM18,一旦使用RSAU_CONFIG修改过审计参数配置,这个作业就会报错,可以直接删除作业后用这里介绍的事务代码重新安排作业即可。

需要注意的是,如果SAP服务器是有多个实例的,那么每个实例都会生成自己的审计日志文件且同一天的文件名是相同的,备份的时候也要创建多个目录进行备份,以免覆盖。

作业名:RSAU_FILE_ADMIN

 6.在服务器的/usr/sap/S4P/D00/log目录下每天会一个或者多个审计文件。

如果审计日志增长过快,可以使用tail -f监控文件的变化情况,也可以在SAP中通过SM66等事务代码分析导致日志增长过快的程序和事务代码,通常如果有比较大的内表操作BDC等场景会风控增长审计日志。SAP服务器的硬盘空间一定要密切关注,一旦硬盘空间满了服务器就停止服务了。

发表评论