OSS-HDFS服务端记录了客户端请求的查询、修改、删除文件元数据的操作审计日志。 您可以通过审计日志,了解OSS-HDFS服务操作审计、访问统计以及异常请求等情况。
前提条件
使用最新版本JindoSDK。下载地址,请参见GitHub。
配置OSS-HDFS服务下Bucket的访问密钥。
具体操作,请参见通过Jindo CLI命令访问OSS/OSS-HDFS。
背景信息
OSS-HDFS审计日志默认保存在以下路径,暂不支持自定义输出路径。
oss://<hdfs_bucket>.<dls_endpoint>/.sysinfo/auditlog/
其中,<hdfs_bucket>填写已开通OSS-HDFS服务的Bucket名称。<dls_endpoint>填写OSS-HDFS服务的访问域名。更多信息,请参见配置OSS-HDFS服务的Endpoint。
日志文件按天存放在不同的目录下,同一天的日志文件按单个文件64 MB的大小限制进行拆分。示例如下:
为简要说明存储路径,以下示例均省略了oss://<hdfs_bucket>.<dls_endpoint>/根路径。
/.sysinfo/auditlog/2023-07-06/2023-07-06-00-07-00.auditlog
/.sysinfo/auditlog/2023-07-06/2023-07-06-00-07-50.auditlog
/.sysinfo/auditlog/2023-07-06/2023-07-06-00-08-50.auditlog
/.sysinfo/auditlog/2023-07-06/2023-07-06-00-09-50.auditlog
/.sysinfo/auditlog/2023-07-07/2023-07-07-00-07-10.auditlog
/.sysinfo/auditlog/2023-07-08/2023-07-07-00-07-10.auditlog
操作步骤
(可选):自定义审计日志保存天数。
审计日志默认保存时间是30天,支持通过以下步骤自定义保留天数为1~60天,达到保留天数后审计日志由系统自动删除。
登录OSS管理控制台。
单击左侧导航栏的Bucket列表,然后单击目标Bucket。
在左侧导航栏,选择 。
在HDFS服务页签,单击审计日志区域的,修改审计日志的保存天数。
单击确定。
下载审计日志文件。
以下载2023-07-07的审计日志到本地tmp/目录为例。
通过Jindo CLI命令
jindo fs -get oss://<hdfs_bucket>.<dls_endpoint>/.sysinfo/auditlog/2023-07-07 /tmp/
通过HDFS Shell命令
hdfs dfs -get oss://<hdfs_bucket>.<dls_endpoint>/.sysinfo/auditlog/2023-07-07 /tmp/
其中,<hdfs_bucket>填写已开通OSS-HDFS服务的Bucket名称。<dls_endpoint>填写OSS-HDFS服务的访问域名。更多信息,请参见配置OSS-HDFS服务的Endpoint。
通过vi或vim命令打开审计日志文件。
审计日志文件示例如下:
2023-07-07 12:32:45.557 allowed=true ugi=root (auth:SIMPLE) ip=192.168.2.22 cmd=mkdirs src=/tmp/presto-root/e94dd606-ba21-4675-9b88-c82f66483628/b1=68/c1=68 dst=<null> perm=root:hadoop:rw-r----- proto=PROTOCOL_UNKNOWN 2023-07-07 12:32:46.39 allowed=true ugi=root (auth:SIMPLE) ip=192.168.2.22 cmd=getfileinfo src=/xxx/nnbench/user/hive/warehouse/mydb_18520/root/t1/b1=2/c1=2/20230707_043031_00022_xxx_80561c14-4d19-494e-8337-0e9b7b0d6663 dst=<null> perm=<null> proto=PROTOCOL_UNKNOWN 2023-07-07 12:33:02.169 allowed=true ugi=root (auth:SIMPLE) ip=192.168.2.22 cmd=rename src=/tmp/presto-root/e94dd606-ba21-4675-9b88-c82f66483628/b1=60/c1=60/20230707_043220_00030_xxx_03832297-7e89-4b0f-a3a2-88b1c4cec6da dst=/xxx/nnbench/user/hive/warehouse/mydb_18520/root/t1/b1=60/c1=60/20230707_043220_00030_xxx_03832297-7e89-4b0f-a3a2-88b1c4cec6da perm=presto:hadoop:rw-r----- proto=PROTOCOL_UNKNOWN 2023-07-07 12:33:05.430 allowed=true ugi=root (auth:SIMPLE) ip=192.168.2.22 cmd=delete src=/tmp/presto-root/e94dd606-ba21-4675-9b88-c82f66483628/b1=62 dst=<null> perm=<null> proto=PROTOCOL_UNKNOWN
审计日志文件的各字段含义说明如下:
字段
含义
(首字段)
请求时间。
allowed
表示是否允许该操作。
true:表示允许执行该操作。
false:表示拒绝执行该操作。
ugi
用户名。
ip
发起请求的客户端IP地址。
cmd
操作类型,主要包含create、delete、mkdirs、rename、getfileinfo、listStatus、contentSummary、setStoragePolicy、unsetStoragePolicy等操作。
src
文件路径。
dst
仅当请求的操作类型为rename时,存在dst路径。
perm
创建文件、目录使用的默认权限。
proto
请求的协议,目前仅支持REST协议。