云服务器内容精选
-
前提条件 审计功能总开关audit_enabled已开启。(audit_enabled默认值为ON,若关闭请参考修改数据库参数设置为OFF)。 已配置需要审计的审计项。各审计项及其开启办法,请参考设置数据库审计日志。 数据库正常运行,并且对数据库执行了一系列增、删、改、查操作,保证在查询时段内有审计结果产生。 数据库各个节点审计日志单独记录。 只有拥有AUDITADMIN属性的用户才可以查看审计记录。
-
查看数据库审计日志方式 方式一:由于审计日志会占用一定磁盘空间,为了防止本地磁盘文件过大,GaussDB(DWS)支持审计日志转储,用户可以开启“开启审计日志转储”功能,将审计日志转储到OBS(用户需创建用于存储审计日志的OBS桶)中进行查看或下载,详细内容请参考查看审计日志转储记录。 方式二:通过依赖于云日志服务LTS的“集群日志管理”功能查看采集的审计数据库日志或进行日志下载,详细内容请参考查看集群日志。 方式三:数据库的审计日志默认存储于数据库中,连接集群后使用pg_query_audit函数进行查看。详细内容请参考使用pg_query_audit函数查看数据库审计日志。
-
使用pg_query_audit函数查看数据库审计日志 使用SQL客户端工具成功连接集群,连接方式请参考连接集群。 使用函数pg_query_audit查询当前CN节点的审计日志: 1 pg_query_audit(timestamptz startime,timestamptz endtime,audit_log) 参数startime和endtime分别表示审计记录的开始时间和结束时间,audit_log表示所查看的审计日志信息所在的物理文件路径,当不指定audit_log时,默认查看连接当前实例的审计日志信息。 例如,查看指定时间段当前CN节点审计记录。 1 SELECT * FROM pg_query_audit('2021-02-23 21:49:00','2021-02-23 21:50:00'); 查询结果如下: 1 2 3 begintime | endtime | operation_type | audit_type | result | username | database | client_conninfo | object_name | command_text | detail_info | transaction_xid | query_id | node_name | session_id | local_port | remote_port ---------------------------+---------------------------+----------------+------------+--------+------------+----------+-----------------+-------------+-----------------+------------------------------------------------------------------+-----------------+----------+--------------+------------------------------+------------+------------- 2021-02-23 21:49:57.76+08 | 2021-02-23 21:49:57.82+08 | login_logout | user_login | ok | dbadmin | gaussdb | gsql@[local] | gaussdb | login db | login db(gaussdb) successfully, the current user is: dbadmin | 0 | 0 | coordinator1 | 140324035360512.667403397820909.coordinator1 | 27777 | 该条记录表明,用户dbadmin在2021-02-23 21:49:57.82+08登录数据库gaussdb。其中client_conninfo字段在log_hostname启动且IP连接时,字符@后显示反向DNS查找得到的主机名。 使用函数pgxc_query_audit可以查询所有CN节点的审计日志: 1 pgxc_query_audit(timestamptz startime,timestamptz endtime) 例如,查看指定时间段所有CN节点审计记录。 1 SELECT * FROM pgxc_query_audit('2021-02-23 22:05:00','2021-02-23 22:07:00') where audit_type = 'user_login' and username = 'user1'; 查询结果如下: 1 2 3 4 begintime | endtime | operation_type | audit_type | result | username | database | client_conninfo | object_name | command_text | detail_info | transaction_xid | query_id | node_name | session_id | local_port | remote_port ----------------------------+----------------------------+----------------+------------+--------+----------+----------+-----------------+-------------+--------------+------------------------------------------------------------+-----------------+----------+--------------+----------------------------------------------+------------+------------- 2021-02-23 22:06:22.219+08 | 2021-02-23 22:06:22.271+08 | login_lgout | user_login | ok | user1 | gaussdb | gsql@[local] | gaussdb | login db | login db(gaussdb) successfully, the current user is: user1 | 0 | 0 | coordinator2 | 140689577342720.667404382271356.coordinator | 27782 | 2021-02-23 22:05:51.697+08 | 2021-02-23 22:05:51.749+08 | login_lgout | user_login | ok | user1 | gaussdb | gsql@[local] | gaussdb | login db | login db(gaussdb) successfully, the current user is: user1 | 0 | 0 | coordinator1 | 140525048424192.667404351749143.coordinator1 | 27777 | 查询结果显示,用户user1在CN1和CN2的成功登录记录。 查询审计多个对象名的记录。 1 2 SET audit_object_name_format TO 'all'; SELECT object_name,result,operation_type,command_text FROM pgxc_query_audit('2022-08-26 8:00:00','2022-08-26 22:55:00') where command_text like '%student%'; 查询结果如下: 1 2 3 4 5 6 7 8 object_name | result | operation_type | command_text ------------------------------------------------------------------+--------+----------------+------------------------------------------------------------------------------------------------------------------ -------------------------------------------- student | ok | ddl | CREATE TABLE student(stuNo int, stuName TEXT); studentscore | ok | ddl | CREATE TABLE studentscore(stuNo int, stuscore int); ["public.student_view01","public.studentscore","public.student"] | ok | ddl | CREATE OR REPLACE VIEW student_view01 AS SELECT * FROM student t1 where t1.stuNo in (select stuNo from studentscore t2 where t1.stuNo = t2.stuNo); ["public.student_view01","public.student","public.studentscore"] | ok | dml | SELECT * FROM student_view01; 查询结果object_name显示多个对象名,包括:表名、视图名及视图所涉及的基表名。
-
修改审计日志转储 开启审计日志转储后,您可以对转储配置进行修改,如修改日志存放的OBS桶和路径,转储周期等。 修改审计日志转储具体操作如下: 登录GaussDB(DWS) 管理控制台。 在左侧导航栏中,单击“集群管理”。 在集群列表中,单击您想要修改审计日志转储的集群的名称,然后在左侧导航栏单击“安全设置”。 在“审计配置”区域中,修改审计日志转储配置。 单击“应用”。 “配置状态”显示为“应用中”,表示系统正在保存配置。 等待一段时间后再次刷新“配置状态”,当显示为“已同步”,表示已保存配置并生效。
-
开启审计日志转储 登录GaussDB(DWS) 管理控制台。 在左侧导航栏中,单击“集群管理”。 在集群列表中,单击您想要开启审计日志转储的集群的名称,然后在左侧导航栏单击“安全设置”。 在“审计配置”区域中,开启审计日志转储。 表示开启状态。表示关闭状态。 每个区域的每个项目首次开启审计日志转储功能时,系统将提示您需创建名称为“DWSAccessOBS”的委托,委托创建成功后,GaussDB(DWS) 可以将审计日志转储至OBS中。 默认情况下,只有华为云帐号或拥有Security Administrator权限的用户才具备查询委托和创建委托的权限。帐号中的IAM用户,默认没有查询委托和创建委托的权限,此时需联系有权限的用户在当前页面完成对GaussDB(DWS) 的委托授权。 图1 开启审计日志转储 转储目录分区:支持审计日志转储时可采用OBS外表读取,转储至OBS时审计日志会采用csv格式且使用gz格式压缩。 OBS桶:存储审计数据的OBS桶名称。如果没有可选择的OBS桶,可以单击“查看OBS桶”进入OBS管理控制台创建新的OBS桶,具体操作请参见《对象存储服务控制台指南》中的创建桶章节。 OBS路径:在OBS中存储审计文件的自定义目录。多级目录可用“/”进行分隔,不能以“/”开头。路径取值范围:1~50个字符。如果填写的OBS路径不存在时,系统会先创建该OBS路径再进行转储。 转储周期(分):根据用户配置的时间,周期性的将数据转储到OBS中。取值范围:5~43200。单位为分钟。 单击“应用”。 “配置状态”显示为“应用中”,表示系统正在保存配置。 等待一段时间后再次刷新“配置状态”,当显示为“已同步”,表示已保存配置并生效。
更多精彩内容
CDN加速
GaussDB
文字转换成语音
免费的服务器
如何创建网站
域名网站购买
私有云桌面
云主机哪个好
域名怎么备案
手机云电脑
SSL证书申请
云点播服务器
免费OCR是什么
电脑云桌面
域名备案怎么弄
语音转文字
文字图片识别
云桌面是什么
网址安全检测
网站建设搭建
国外CDN加速
SSL免费证书申请
短信批量发送
图片OCR识别
云数据库MySQL
个人域名购买
录音转文字
扫描图片识别文字
OCR图片识别
行驶证识别
虚拟电话号码
电话呼叫中心软件
怎么制作一个网站
Email注册网站
华为VNC
图像文字识别
企业网站制作
个人网站搭建
华为云计算
免费租用云托管
云桌面云服务器
ocr文字识别免费版
HTTPS证书申请
图片文字识别转换
国外域名注册商
使用免费虚拟主机
云电脑主机多少钱
鲲鹏云手机
短信验证码平台
OCR图片文字识别
SSL证书是什么
申请企业邮箱步骤
免费的企业用邮箱
云免流搭建教程
域名价格