Skip to content

Commit 55f0813

Browse files
AI Translate 56-security to Simplified-Chinese (#2488)
* [INIT] Start translation to Simplified-Chinese * 🌐 Translate audit-trail.md to Simplified-Chinese * 🌐 Translate audit-trail.md to Simplified-Chinese * 🌐 Translate audit-trail.md to Simplified-Chinese * 🌐 Translate audit-trail.md to Simplified-Chinese * 🌐 Translate audit-trail.md to Simplified-Chinese * 🌐 Translate audit-trail.md to Simplified-Chinese * 🌐 Translate audit-trail.md to Simplified-Chinese * 🌐 Translate audit-trail.md to Simplified-Chinese --------- Co-authored-by: github-actions[bot] <github-actions[bot]@users.noreply.github.com>
1 parent ae93709 commit 55f0813

File tree

9 files changed

+336
-134
lines changed

9 files changed

+336
-134
lines changed

.translation-init

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1 +1 @@
1-
Translation initialization: 2025-07-01T12:14:51.978994
1+
Translation initialization: 2025-07-02T03:45:36.737007
Lines changed: 108 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,108 @@
1+
---
2+
title: 审计追踪(Audit Trail)
3+
---
4+
5+
import EEFeature from '@site/src/components/EEFeature';
6+
7+
<EEFeature featureName='AUDIT TRAIL'/>
8+
9+
Databend 的系统历史表 (System History Tables) 会自动捕获数据库活动的详细记录,为合规性 (Compliance) 和安全监控 (Security Monitoring) 提供完整的审计追踪 (Audit Trail)。
10+
11+
支持对用户以下活动进行审计:
12+
- **查询执行** - 完整的 SQL 执行审计追踪 (`query_history`)
13+
- **数据访问** - 数据库对象访问和修改 (`access_history`)
14+
- **身份验证** - 登录尝试和会话跟踪 (`login_history`)
15+
16+
## 可用的审计表
17+
18+
Databend 提供了五个系统历史表,用于捕获数据库活动的不同方面:
19+
20+
|| 用途 | 关键用例 |
21+
|-------|---------|---------------|
22+
| [query_history](/sql/sql-reference/system-history-tables/query-history) | 完整的 SQL 执行审计追踪 | 性能监控、安全审计、合规报告 |
23+
| [access_history](/sql/sql-reference/system-history-tables/access-history) | 数据库对象访问和修改 | 数据血缘 (Data Lineage) 追踪、合规审计、变更管理 (Change Management) |
24+
| [login_history](/sql/sql-reference/system-history-tables/login-history) | 身份验证尝试和会话 | 安全监控、失败登录检测、访问模式分析 |
25+
26+
## 审计用例与示例
27+
28+
### 安全监控
29+
30+
**监控失败的登录尝试**
31+
32+
跟踪身份验证失败,以识别潜在的安全威胁和未经授权的访问尝试。
33+
34+
```sql
35+
-- 检查失败的登录尝试(安全审计)
36+
SELECT event_time, user_name, client_ip, error_message
37+
FROM system_history.login_history
38+
WHERE event_type = 'LoginFailed'
39+
ORDER BY event_time DESC;
40+
```
41+
42+
示例输出:
43+
```
44+
event_time: 2025-06-03 06:07:32.512021
45+
user_name: root1
46+
client_ip: 127.0.0.1:62050
47+
error_message: UnknownUser. Code: 2201, Text = User 'root1'@'%' does not exist.
48+
```
49+
50+
### 合规报告
51+
52+
**跟踪数据库模式 (Schema) 变更**
53+
54+
监控 DDL 操作,以满足合规性和变更管理要求。
55+
56+
```sql
57+
-- 审计 DDL 操作(合规追踪)
58+
SELECT query_id, query_start, user_name, object_modified_by_ddl
59+
FROM system_history.access_history
60+
WHERE object_modified_by_ddl != '[]'
61+
ORDER BY query_start DESC;
62+
```
63+
64+
`CREATE TABLE` 操作示例:
65+
```
66+
query_id: c2c1c7be-cee4-4868-a28e-8862b122c365
67+
query_start: 2025-06-12 03:31:19.042128
68+
user_name: root
69+
object_modified_by_ddl: [{"object_domain":"Table","object_name":"default.default.t","operation_type":"Create"}]
70+
```
71+
72+
**审计数据访问模式**
73+
74+
跟踪谁在何时访问了哪些数据,以满足合规性和数据治理要求。
75+
76+
```sql
77+
-- 追踪数据访问以符合合规要求
78+
SELECT query_id, query_start, user_name, base_objects_accessed
79+
FROM system_history.access_history
80+
WHERE base_objects_accessed != '[]'
81+
ORDER BY query_start DESC;
82+
```
83+
84+
### 运营监控
85+
86+
**完整的查询执行审计**
87+
88+
维护所有 SQL 操作的全面记录,包括用户信息和计时信息。
89+
90+
```sql
91+
-- 包含用户和计时信息的完整查询审计
92+
SELECT query_id, sql_user, query_text, query_start_time, query_duration_ms, client_address
93+
FROM system_history.query_history
94+
WHERE event_date >= TODAY() - INTERVAL 7 DAY
95+
ORDER BY query_start_time DESC;
96+
```
97+
98+
示例输出:
99+
```
100+
query_id: 4e1f50a9-bce2-45cc-86e4-c7a36b9b8d43
101+
sql_user: root
102+
query_text: SELECT * FROM t
103+
query_start_time: 2025-06-12 03:31:35.041725
104+
query_duration_ms: 94
105+
client_address: 127.0.0.1
106+
```
107+
108+
有关每个审计表及其特定字段的详细信息,请参阅[系统历史表](/sql/sql-reference/system-history-tables/)参考文档。
Lines changed: 9 additions & 8 deletions
Original file line numberDiff line numberDiff line change
@@ -1,14 +1,15 @@
11
---
2-
title: 安全性与可靠性
2+
title: 安全与可靠性
33
---
44

5-
Databend 提供**企业级安全性和可靠性功能**在数据的整个生命周期中保护您的数据。从控制谁可以访问您的数据到防范网络威胁以及从操作错误中恢复,Databend 的**多层安全方法**帮助您维护数据完整性、合规性和业务连续性。
5+
Databend 提供**企业级的安全与可靠性功能**在数据的整个生命周期内保护您的数据安全。从控制数据访问权限、防范网络威胁到从操作失误中恢复,Databend 的**多层安全方法**帮助您维护数据完整性、合规性和业务连续性。
66

77
| 安全功能 | 用途 | 使用场景 |
88
|-----------------|---------|------------|
9-
| [**访问控制**](/guides/security/access-control) | 管理用户权限 | 当您需要通过基于角色的安全性和对象所有权来控制数据访问时 |
10-
| [**网络策略**](/guides/security/network-policy) | 限制网络访问 | 当您希望即使在拥有有效凭据的情况下也将连接限制在特定 IP 范围内时 |
11-
| [**密码策略**](/guides/security/password-policy) | 设置密码要求 | 当您需要强制执行密码复杂性、轮换和账户锁定规则时 |
12-
| [**掩码策略**](/guides/security/masking-policy) | 隐藏敏感数据 | 当您需要保护机密数据同时仍允许授权访问时 |
13-
| [**故障安全**](/guides/security/fail-safe) | 防止数据丢失 | 当您需要从 S3 兼容存储中恢复意外删除的数据时 |
14-
| [**从错误中恢复**](/guides/security/recovery-from-operational-errors) | 修复操作错误 | 当您需要从删除的数据库/表或错误的数据修改中恢复时 |
9+
| [**访问控制(Access Control)**](/guides/security/access-control) | 管理用户权限 | 当您需要通过基于角色的安全性和对象所有权来控制数据访问时 |
10+
| [**审计追踪(Audit Trail)**](audit-trail.md) | 追踪数据库活动 | 当您需要全面的审计追踪来进行安全监控、合规性检查和性能分析时 |
11+
| [**网络策略(Network Policy)**](/guides/security/network-policy) | 限制网络访问 | 当您希望即便拥有有效凭据,也只允许来自特定 IP 范围的连接时 |
12+
| [**密码策略(Password Policy)**](/guides/security/password-policy) | 设置密码要求 | 当您需要强制执行密码复杂度、轮换和账户锁定规则时 |
13+
| [**脱敏策略(Masking Policy)**](/guides/security/masking-policy) | 隐藏敏感数据 | 当您需要在保护机密数据的同时,仍然允许授权访问时 |
14+
| [**故障保护(Fail-Safe)**](/guides/security/fail-safe) | 防止数据丢失 | 当您需要从兼容 S3 的存储中恢复意外删除的数据时 |
15+
| [**从操作失误中恢复(Recovery from Errors)**](/guides/security/recovery-from-operational-errors) | 修复操作失误 | 当您需要从被删除的数据库/表或错误的数据修改中恢复时 |

docs/cn/sql-reference/00-sql-reference/32-system-history-tables/access-history.md

Lines changed: 22 additions & 9 deletions
Original file line numberDiff line numberDiff line change
@@ -2,7 +2,20 @@
22
title: system_history.access_history
33
---
44

5-
此表作为查询(Query)元数据的一部分,提供了每个查询访问和修改的对象的详细日志,包括表、列和暂存区(Stage)。它提供有关 DDL 和 DML 操作的结构化信息,以增强审计功能。
5+
import FunctionDescription from '@site/src/components/FunctionDescription';
6+
7+
<FunctionDescription description="引入或更新于:v1.2.764"/>
8+
9+
import EEFeature from '@site/src/components/EEFeature';
10+
11+
<EEFeature featureName='ACCESS HISTORY'/>
12+
13+
**数据血缘(Data Lineage)与访问控制审计** - 跟踪查询访问或修改的所有数据库对象(表、列、暂存区(Stage))。这对于以下方面至关重要:
14+
15+
- **数据血缘(Data Lineage)**:了解整个数据库中的数据流和依赖关系。
16+
- **合规性报告(Compliance Reporting)**:跟踪谁在何时访问了敏感数据。
17+
- **变更管理(Change Management)**:监控 DDL 操作和模式修改。
18+
- **安全分析(Security Analysis)**:识别异常访问模式或未经授权的数据访问。
619

720
## 字段
821

@@ -14,16 +27,16 @@ title: system_history.access_history
1427
| base_objects_accessed | VARIANT | 查询访问的对象。 |
1528
| direct_objects_accessed | VARIANT | 保留供将来使用;当前未使用。 |
1629
| objects_modified | VARIANT | 查询修改的对象。 |
17-
| object_modified_by_ddl | VARIANT | DDL 修改的对象(例如 `CREATE TABLE``ALTER TABLE`)。 |
30+
| object_modified_by_ddl | VARIANT | DDL(例如 `CREATE TABLE``ALTER TABLE`修改的对象|
1831

1932
`base_objects_accessed``objects_modified``object_modified_by_ddl` 字段都是 JSON 对象数组。每个对象可能包含以下字段:
2033

21-
- `object_domain`: 对象的类型,可以是 [`Database`(数据库), `Table`(表), `Stage`(暂存区)] 中的一种
22-
- `object_name`: 对象的名称。对于暂存区(Stage),这是暂存区的名称
23-
- `columns`: 列信息,仅当 `object_domain``Table`(表)时存在。
24-
- `stage_type`: 暂存区(Stage)的类型,仅当 `object_domain``Stage`(暂存区)时存在。
25-
- `operation_type`: DDL 操作类型,可以是 [`Create`(创建), `Alter`(修改), `Drop`(删除), `Undrop`(恢复)] 中的一种,仅在 `object_modified_by_ddl` 字段中存在。
26-
- `properties`: 有关 DDL 操作的详细信息,仅在 `object_modified_by_ddl` 字段中存在。
34+
- `object_domain`:对象类型,为 [`Database`, `Table`, `Stage`] 之一
35+
- `object_name`:对象名称。对于暂存区(Stage),这是暂存区(Stage)的名称
36+
- `columns`列信息,仅当 `object_domain``Table` 时存在。
37+
- `stage_type`暂存区(Stage)的类型,仅当 `object_domain``Stage` 时存在。
38+
- `operation_type`DDL 操作类型, [`Create`, `Alter`, `Drop`, `Undrop`] 之一,仅在 `object_modified_by_ddl` 字段中存在。
39+
- `properties`DDL 操作的详细信息,仅在 `object_modified_by_ddl` 字段中存在。
2740

2841
## 示例
2942

@@ -77,4 +90,4 @@ direct_objects_accessed: []
7790
object_modified_by_ddl: []
7891
```
7992

80-
从表 `t` 到内部暂存区(Stage) `s``COPY INTO` 操作涉及读和写操作。执行此查询后,源表将记录在 `base_objects_accessed` 字段中,目标暂存区(Stage)将记录在 `objects_modified` 字段中。
93+
`COPY INTO` 操作从表 `t` 复制到内部暂存区(Internal Stage) `s`,涉及读和写两种操作。执行此查询后,源表将被记录在 `base_objects_accessed` 字段中,目标暂存区(Stage)将被记录在 `objects_modified` 字段中。

docs/cn/sql-reference/00-sql-reference/32-system-history-tables/index.md

Lines changed: 55 additions & 27 deletions
Original file line numberDiff line numberDiff line change
@@ -2,56 +2,84 @@
22
title: 系统历史表
33
---
44

5-
import FunctionDescription from '@site/src/components/FunctionDescription';
5+
import EEFeature from '@site/src/components/EEFeature';
66

7-
<FunctionDescription description="Introduced or updated: v1.2.752"/>
7+
<EEFeature featureName='SYSTEM HISTORY'/>
88

99
# 系统历史表
1010

11-
系统历史表在 `system_history` 模式 (Schema) 中存储持久化数据,用于审计、故障排查和合规性目的。它们跟踪查询执行、用户登录和系统日志,并支持使用标准 SQL 查询这些信息
11+
Databend 的系统历史表通过自动跟踪数据库活动,提供**数据治理 (Data Governance)**能力,以满足合规性、安全监控和性能分析的需求
1212

13-
## 可用的系统历史表
13+
## 可用表
1414

15-
| | 描述 |
16-
|-----------------------------------------------------|-----------------------------------------------------------------|
17-
| [system_history.log_history](log-history.md) | 存储来自不同系统组件的原始日志条目。 |
18-
| [system_history.query_history](query-history.md) | 存储查询执行的结构化详细信息。 |
19-
| [system_history.profile_history](profile-history.md)| 存储详细的查询执行配置文件 (profile) 和统计信息。 |
20-
| [system_history.login_history](login-history.md) | 记录有关用户登录事件的信息。 |
21-
| [system_history.access_history](access-history.md) | 存储有关查询访问事件的信息。 |
15+
|| 用途 | 主要用例 |
16+
|-------|---------|---------------|
17+
| [query_history](query-history.md) | 完整的 SQL 执行审计追踪 | 性能分析、合规性跟踪、使用情况监控 |
18+
| [access_history](access-history.md) | 数据访问和修改日志 | 数据血缘 (Data Lineage)、合规性报告、变更管理 |
19+
| [login_history](login-history.md) | 用户身份验证跟踪 | 安全审计、失败登录监控、访问模式分析 |
20+
| [profile_history](profile-history.md) | 详细的查询执行配置文件 | 性能优化、资源规划、瓶颈识别 |
21+
| [log_history](log-history.md) | 原始系统日志和事件 | 系统故障排查、错误分析、操作监控 |
2222

23-
## 启用系统历史表
23+
## 配置
2424

25-
> **注意:****Databend Cloud** 中,系统历史表是自动启用的,无需任何配置即可使用。以下部分仅适用于**自托管的 Databend**
25+
### Databend Cloud
26+
**自动启用** - 所有系统历史表无需任何配置即可使用。
2627

27-
在自托管的 Databend 中,系统历史表默认是禁用的。要启用它们,请在 `databend-query.toml` 文件中配置 `[log.history]` 部分。
28+
### 自托管 Databend
2829

29-
配置示例:
30+
<details>
31+
<summary>📝 **需要手动配置** - 点击展开配置详情</summary>
32+
33+
#### 最小化配置
34+
要启用系统历史表,你必须在 `databend-query.toml` 中配置所有 5 个表:
3035

3136
```toml
3237
[log.history]
33-
# 启用历史表
3438
on = true
35-
level = "INFO"
3639

37-
# 为每个表配置保留策略
40+
# 必须配置所有 5 个表才能启用历史日志记录
41+
# retention 是可选的(默认为 168 小时 = 7 天)
3842
[[log.history.tables]]
39-
table_name = "log_history"
40-
retention = 168 # 7 天(以小时为单位
43+
table_name = "query_history"
44+
retention = 168 # 可选:7 天(默认
4145

4246
[[log.history.tables]]
43-
table_name = "query_history"
44-
retention = 168
47+
table_name = "login_history"
48+
retention = 168 # 可选:7 天(默认)
49+
50+
[[log.history.tables]]
51+
table_name = "access_history"
52+
retention = 168 # 可选:7 天(默认)
4553

4654
[[log.history.tables]]
4755
table_name = "profile_history"
48-
retention = 168
56+
retention = 168 # 可选:7 天(默认)
4957

5058
[[log.history.tables]]
51-
table_name = "login_history"
52-
retention = 168
59+
table_name = "log_history"
60+
retention = 168 # 可选:7 天(默认)
5361
```
5462

55-
> **注意:** 当历史日志记录开启时,`log_history` 表默认启用。`level` 配置决定了存储在 `log_history` 表中的日志条目数量。日志级别越详细,产生的条目就越多。
63+
#### 自定义存储(可选)
64+
默认情况下,历史表使用主数据库存储。要使用独立的 S3 存储:
65+
66+
```toml
67+
[log.history]
68+
on = true
69+
70+
[log.history.storage]
71+
type = "s3"
72+
73+
[log.history.storage.s3]
74+
bucket = "your-history-bucket"
75+
root = "history_tables"
76+
endpoint_url = "https://s3.amazonaws.com"
77+
access_key_id = "your-access-key"
78+
secret_access_key = "your-secret-key"
79+
```
80+
81+
> ⚠️ **注意:** 更改存储配置时,现有的历史表将被删除并重新创建。
82+
83+
</details>
5684

57-
有关配置选项的更多详细信息,请参阅[查询配置:[log.history] 部分](/guides/deploy/references/node-config/query-config#loghistory-section)
85+
有关完整的配置选项,请参阅[查询配置:[log.history] 部分](/guides/deploy/references/node-config/query-config#loghistory-section)

docs/cn/sql-reference/00-sql-reference/32-system-history-tables/log-history.md

Lines changed: 29 additions & 16 deletions
Original file line numberDiff line numberDiff line change
@@ -2,34 +2,47 @@
22
title: system_history.log_history
33
---
44

5-
存储从各个节点收集的原始日志条目。该表是后续日志转换的主要来源。
5+
import FunctionDescription from '@site/src/components/FunctionDescription';
66

7-
所有其他日志表都派生自此表,区别在于其他日志表会进行一些转换,使数据更加结构化。
7+
<FunctionDescription description="Introduced or updated: v1.2.764"/>
8+
9+
import EEFeature from '@site/src/components/EEFeature';
10+
11+
<EEFeature featureName='LOG HISTORY'/>
12+
13+
**系统操作审计追踪**——来自所有 Databend 节点和组件的原始日志存储库。运维智能的基础:
14+
15+
- **系统监控**:跟踪系统健康状况、性能和资源使用情况
16+
- **故障排查**:通过详细的错误日志和系统事件进行问题调试
17+
- **运维分析**:分析系统行为模式和趋势
18+
- **根本原因分析**:调查系统故障和性能瓶颈
19+
20+
> **注意:** 此表包含原始日志数据,这些数据会提供给其他专门的历史记录表。其他表则提供了此数据的结构化、查询专用视图。
821
922
## 字段
1023

1124
| 字段 | 类型 | 描述 |
12-
|--------------|-----------|--------------------------------------------------|
13-
| timestamp | TIMESTAMP | 记录日志条目的时间戳 |
14-
| path | VARCHAR | 日志的源文件路径和行号 |
15-
| target | VARCHAR | 日志的目标模块或组件 |
16-
| log_level | VARCHAR | 日志级别(例如`INFO``ERROR` |
17-
| cluster_id | VARCHAR | 集群的标识符 |
18-
| node_id | VARCHAR | 节点的标识符 |
19-
| warehouse_id | VARCHAR | 计算集群(warehouse)的标识符 |
20-
| query_id | VARCHAR | 与日志关联的查询(query) ID |
21-
| message | VARCHAR | 日志消息内容 |
22-
| fields | VARIANT | 附加字段(作为 JSON 对象|
23-
| batch_number | BIGINT | 内部使用,无特殊含义 |
25+
|--------------|-----------|------------------------------------------|
26+
| timestamp | TIMESTAMP | 记录日志条目的时间戳 |
27+
| path | VARCHAR | 日志的源文件路径和行号 |
28+
| target | VARCHAR | 日志的目标模块或组件 |
29+
| log_level | VARCHAR | 日志级别(例如 `INFO``ERROR`|
30+
| cluster_id | VARCHAR | 集群的标识符 |
31+
| node_id | VARCHAR | 节点的标识符 |
32+
| warehouse_id | VARCHAR | 计算集群(Warehouse)的标识符 |
33+
| query_id | VARCHAR | 与日志关联的查询 ID |
34+
| message | VARCHAR | 日志消息内容 |
35+
| fields | VARIANT | 附加字段( JSON 对象形式|
36+
| batch_number | BIGINT | 内部使用,无特殊含义 |
2437

2538
注意:`message` 字段存储纯文本日志,而 `fields` 字段存储 JSON 格式的日志。
2639

27-
例如,某条日志条目的 `fields` 字段可能如下所示:
40+
例如,某个日志条目的 `fields` 字段可能如下所示:
2841
```
2942
fields: {"node_id":"8R5ZMF8q0HHE6x9H7U1gr4","query_id":"72d2319a-b6d6-4b1d-8694-670137a40d87","session_id":"189fd3e2-e6ac-48c3-97ef-73094c141312","sql":"select * from system_history.log_history"}
3043
```
3144

32-
另一条日志条目的 `message` 字段可能如下所示:
45+
另一个日志条目的 `message` 字段可能如下所示:
3346
```
3447
message: [HTTP-QUERY] Preparing to plan SQL query
3548
```

0 commit comments

Comments
 (0)