ITPub博客

首页 > 数据库 > > 设置数据库审计-查看审计结果

设置数据库审计-查看审计结果

作者:GaussDB_数据库 时间:2020-01-14 11:49:28 0 删除 编辑

前提条件

  • 审计功能总开关已开启。
  • 需要审计的审计项开关已开启。
  • 数据库正常运行,并且对数据库执行了一系列增、删、改、查操作,保证在查询时段内有审计结果产生。
  • 数据库各个节点审计日志单独记录,如果使用了LVS负载管理机制,需根据LVS日志追溯到具体的执行节点,并直接连接该节点查询相关审计日志。

背景信息

  • 只有拥有AUDITADMIN属性的用户才可以查看审计记录。有关数据库用户及创建用户的办法请参见用户。
  • 审计查询命令是数据库提供的sql函数pg_query_audit,其原型为:
    pg_query_audit(timestamptz startime,timestamptz endtime,audit_log)
    参数startime和endtime分别表示审计记录的开始时间和结束时间,audit_log表示所查看的审计日志信息所在的物理文件路径,当不指定audit_log时,默认查看连接当前实例的审计日志信息。

    通过sql函数pgxc_query_audit可以查询所有CN节点的审计日志,其原型为:

    pgxc_query_audit(timestamptz startime,timestamptz endtime)
     说明:

    startime和endtime的差值代表要查询的时间段,其有效值为从startime日期中的00:00:00开始到endtime日期中的23:59:59之间的任何值。请正确指定这两个参数,否则将查不到需要的审计信息。

操作步骤

  1. 以操作系统用户omm登录CN所在主机,执行source ${BIGDATA_HOME}/mppdb/.mppdbgs_profile命令启动环境变量。
  2. 使用如下命令连接数据库。
    gsql -d postgres -p 25308
    postgres为需要连接的数据库名称,25308为CN的端口号。

    连接成功后,系统显示类似如下信息:

    gsql ((GaussDB Kernel V300R002C00 build 50dc16a6) compiled at 2019-01-29 05:49:21 commit 1071 last mr 1373)
    Non-SSL connection (SSL connection is recommended when requiring high-security)
    Type "help" for help.
    postgres=#

  3. 查询审计记录。
    SELECT * FROM pg_query_audit('2015-07-15 08:00:00','2015-07-15 09:47:33');
    查询结果如下:
    time          |     type      | result | username |    database    | client_conninfo |  object_name   |                          detail_info                | node_name |            thread_id            | local_port | remote_port
    ------------------------+---------------+--------+----------+----------------+-----------------+----------------+---------------------------------------------------------------+-----------+---------------------------------+------------+-------------
    2015-07-15 08:03:55+08 | login_success | ok | omm | postgres | gs_clean@::1 | postgres | login db(postgres) success,the current user is:omm | cn_5003 | 139808902997776@490233835920483 | 9000 | 55805

    该条记录表明,用户omm在2015-07-15 08:03:55+08登录数据库postgres。其中client_conninfo字段在log_hostname启动且IP连接时,字符@后显示反向DNS查找得到的主机名。

  4. 查询所有CN节点审计记录。
    SELECT * FROM pgxc_query_audit('2019-01-10 17:00:00','2019-01-10 19:00:00') where type = 'login_success' and username = 'user1';
    查询结果如下:
    time          |     type      | result | username | database | client_conninfo | object_name |                     detail_info                      |  node_name   |            thread_id            | 
    local_port | remote_port
    ------------------------+---------------+--------+----------+----------+-----------------+-------------+------------------------------------------------------+--------------+---------------------------------+-
    -----------+-------------
    2019-01-10 18:06:08+08 | login_success | ok | user1 | postgres | gsql@[local] | postgres | login db(postgres) success,the current user is:user1 | coordinator1 | 139965149210368@600429968516954 |
    17560 | null
    2019-01-10 18:06:22+08 | login_success | ok | user1 | postgres | gsql@[local] | postgres | login db(postgres) success,the current user is:user1 | coordinator1 | 139965149210368@600429982697548 |
    17560 | null
    2019-01-10 18:06:54+08 | login_success | ok | user1 | postgres | gsql@[local] | postgres | login db(postgres) success,the current user is:user1 | coordinator2 | 140677694355200@600430014804280 |
    17562 | null
    (3 rows)


    查询结果显示,用户user1在CN1和CN2的成功登录记录。

来自 “ ITPUB博客 ” ,链接:https://blog.itpub.net/69959250/viewspace-3152112/ ,如需转载,请注明出处,否则将追究法律责任。

请登录后发表评论 登录
全部评论

注册时间:2020-01-06

  • 博文量
    2907
  • 访问量
    19311