# 11-OceanBase测评命令

> OceanBase测评取证命令单：obclient 连接 root@sys 租户与基础信息核查，validate_password 复杂度、default_password_lifetime 有效期与 connection_control 失败处理身份鉴别核查，SHOW GRANTS 与 mysql.user 访问控制核查，GV$OB_SQL_AUDIT SQL审计视图安全审计核查，ssl_enabled 传输加密与 tde_method 透明加密数据保密性核查，DBA_OB_TENANTS 多副本与 CDB_OB_BACKUP_JOBS 备份恢复核查，附模式与版本差异及现场编制取证注意事项。

---

LLMS index: [llms.txt](/wikis/llms.txt)

---

> OceanBase数据库三级等级保护现场核查命令脚本（统一编号版）
>
> 定位：三级等保现场测评取证命令单，按功能小节组织核查命令、预期现象与判定要点。
> 适用范围：OceanBase 社区版 4.x，现场以 MySQL 模式租户核查为主；Oracle 模式（Oracle 租户）与企业版能力差异见「主流版本差异说明」。

## 基础信息

```bash
# obclient 为 OceanBase 专用命令行客户端（基于 MariaDB-CLI），登录用户名采用 用户名@租户名 三段式
obclient -V                                        # obclient 客户端版本信息（--version 等价）
obclient -h192.168.10.21 -P2881 -uroot@sys -p -A   # 直连 OBServer 节点登录 sys 系统租户，mysql_port 默认 2881
# 经 OBProxy 接入时端口默认 2883，用户名带集群名：obclient -h<OBProxy_IP> -P2883 -uroot@sys#集群名 -p -A
obd cluster list                                   # OBD 部署工具：列出本机管理的部署名（只读）
obd cluster display <部署名>                        # OBD：展示该部署各节点组件与进程状态（只读）
```

```sql
select version();                          -- 版本串以 5.7.25 开头属正常（MySQL 兼容协议版本号），OceanBase 版本看 OceanBase_CE 串
show variables like 'version%';            -- version / version_comment 变量，辅助确认社区版（_CE）与内核版本
select user();                             -- 回显 当前用户@租户 登录形态，与三段式登录方式互证
show databases;                            -- 数据库列表（MySQL 模式租户内）
show parameters like 'mysql_port';         -- SQL 服务协议端口，默认 2881（V3.2.4 前默认 2880）
show parameters like 'rpc_port';           -- 节点间 RPC 端口，默认 2882
```

- **对应控制点**：无对应条款（测评准备项：确认测评对象、版本与部署形态，据此选定后续核查命令）。
- **判定要点**：仅记录事实，不下符合性结论；先确认社区版/企业版、内核版本（4.x 具体小版本）与部署形态（单机/三副本多 Zone/经 OBProxy 接入），并确认核查目标为 sys 租户还是业务租户（差异见「重点差异」）。
- **取证要求**：`version()`、端口与监听查询截图，登录账号（用户名@租户名）与来源记录，部署形态（Zone/Region 分布、组件清单：OBServer/ODP/OCP/ODC）说明。
- **备注**：`select version()` 输出以 `5.7.25-OceanBase_CE-v4.x.x.x` 形式呈现是官方为兼容 MySQL 协议而固定的前缀，现场不应据此判定对象为 MySQL 数据库；OceanBase 为分布式多租户数据库，测评边界按集群/租户划定，操作系统级控制点（最小安装、恶意代码防范等）由宿主服务器测评覆盖，本分册不重复取证。
- **预期证据**：版本查询结果截图、租户与登录形态截图、部署架构图或 obd/OCP 集群拓扑截图。


<details class="td-details"><summary>示例输出（节选）</summary><div class="highlight"><pre tabindex="0" class="chroma"><code class="language-sql" data-lang="sql"><span class="line"><span class="cl"><span class="n">obclient</span><span class="o">&gt;</span><span class="w"> </span><span class="k">select</span><span class="w"> </span><span class="k">version</span><span class="p">();</span><span class="w">
</span></span></span><span class="line"><span class="cl"><span class="o">+</span><span class="c1">------------------------------+
</span></span></span><span class="line"><span class="cl"><span class="o">|</span><span class="w"> </span><span class="k">version</span><span class="p">()</span><span class="w">                    </span><span class="o">|</span><span class="w">
</span></span></span><span class="line"><span class="cl"><span class="o">+</span><span class="c1">------------------------------+
</span></span></span><span class="line"><span class="cl"><span class="o">|</span><span class="w"> </span><span class="mi">5</span><span class="p">.</span><span class="mi">7</span><span class="p">.</span><span class="mi">25</span><span class="o">-</span><span class="n">OceanBase_CE</span><span class="o">-</span><span class="n">v4</span><span class="p">.</span><span class="mi">3</span><span class="p">.</span><span class="mi">5</span><span class="p">.</span><span class="mi">1</span><span class="w"> </span><span class="o">|</span><span class="w">
</span></span></span><span class="line"><span class="cl"><span class="o">+</span><span class="c1">------------------------------+
</span></span></span><span class="line"><span class="cl"><span class="mi">1</span><span class="w"> </span><span class="k">row</span><span class="w"> </span><span class="k">in</span><span class="w"> </span><span class="k">set</span><span class="w"> </span><span class="p">(</span><span class="mi">0</span><span class="p">.</span><span class="mi">001</span><span class="w"> </span><span class="n">sec</span><span class="p">)</span><span class="w">
</span></span></span><span class="line"><span class="cl"><span class="w">
</span></span></span><span class="line"><span class="cl"><span class="n">obclient</span><span class="o">&gt;</span><span class="w"> </span><span class="k">show</span><span class="w"> </span><span class="n">variables</span><span class="w"> </span><span class="k">like</span><span class="w"> </span><span class="s1">&#39;version%&#39;</span><span class="p">;</span><span class="w">
</span></span></span><span class="line"><span class="cl"><span class="o">+</span><span class="c1">-----------------+------------------------------+
</span></span></span><span class="line"><span class="cl"><span class="o">|</span><span class="w"> </span><span class="n">Variable_name</span><span class="w">   </span><span class="o">|</span><span class="w"> </span><span class="n">Value</span><span class="w">                        </span><span class="o">|</span><span class="w">
</span></span></span><span class="line"><span class="cl"><span class="o">+</span><span class="c1">-----------------+------------------------------+
</span></span></span><span class="line"><span class="cl"><span class="o">|</span><span class="w"> </span><span class="k">version</span><span class="w">         </span><span class="o">|</span><span class="w"> </span><span class="mi">5</span><span class="p">.</span><span class="mi">7</span><span class="p">.</span><span class="mi">25</span><span class="o">-</span><span class="n">OceanBase_CE</span><span class="o">-</span><span class="n">v4</span><span class="p">.</span><span class="mi">3</span><span class="p">.</span><span class="mi">5</span><span class="p">.</span><span class="mi">1</span><span class="w"> </span><span class="o">|</span><span class="w">
</span></span></span><span class="line"><span class="cl"><span class="o">|</span><span class="w"> </span><span class="n">version_comment</span><span class="w"> </span><span class="o">|</span><span class="w"> </span><span class="n">OceanBase_CE</span><span class="w"> </span><span class="k">Database</span><span class="w"> </span><span class="mi">4</span><span class="p">.</span><span class="n">x</span><span class="w">    </span><span class="o">|</span><span class="w">
</span></span></span><span class="line"><span class="cl"><span class="o">+</span><span class="c1">-----------------+------------------------------+
</span></span></span><span class="line"><span class="cl"><span class="w">
</span></span></span><span class="line"><span class="cl"><span class="n">obclient</span><span class="o">&gt;</span><span class="w"> </span><span class="k">show</span><span class="w"> </span><span class="k">parameters</span><span class="w"> </span><span class="k">like</span><span class="w"> </span><span class="s1">&#39;mysql_port&#39;</span><span class="p">;</span><span class="w">
</span></span></span><span class="line"><span class="cl"><span class="o">+</span><span class="c1">--------+----------+---------------+----------+-------------+-------+----------+---------------+----------+---------+
</span></span></span><span class="line"><span class="cl"><span class="o">|</span><span class="w"> </span><span class="k">zone</span><span class="w">   </span><span class="o">|</span><span class="w"> </span><span class="n">svr_type</span><span class="w"> </span><span class="o">|</span><span class="w"> </span><span class="n">svr_ip</span><span class="w">        </span><span class="o">|</span><span class="w"> </span><span class="n">svr_port</span><span class="w"> </span><span class="o">|</span><span class="w"> </span><span class="n">name</span><span class="w">        </span><span class="o">|</span><span class="w"> </span><span class="n">value</span><span class="w"> </span><span class="o">|</span><span class="w"> </span><span class="n">info</span><span class="w">     </span><span class="o">|</span><span class="w"> </span><span class="n">section</span><span class="w">       </span><span class="o">|</span><span class="w"> </span><span class="n">editable</span><span class="w"> </span><span class="o">|</span><span class="w"> </span><span class="n">visible</span><span class="w"> </span><span class="o">|</span><span class="w">
</span></span></span><span class="line"><span class="cl"><span class="o">+</span><span class="c1">--------+----------+---------------+----------+-------------+-------+----------+---------------+----------+---------+
</span></span></span><span class="line"><span class="cl"><span class="o">|</span><span class="w"> </span><span class="n">zone1</span><span class="w">  </span><span class="o">|</span><span class="w"> </span><span class="n">observer</span><span class="w"> </span><span class="o">|</span><span class="w"> </span><span class="mi">192</span><span class="p">.</span><span class="mi">168</span><span class="p">.</span><span class="mi">10</span><span class="p">.</span><span class="mi">21</span><span class="w"> </span><span class="o">|</span><span class="w">     </span><span class="mi">2882</span><span class="w"> </span><span class="o">|</span><span class="w"> </span><span class="n">mysql_port</span><span class="w">  </span><span class="o">|</span><span class="w"> </span><span class="mi">2881</span><span class="w">  </span><span class="o">|</span><span class="w"> </span><span class="p">...</span><span class="w">      </span><span class="o">|</span><span class="w"> </span><span class="n">OBSERVER</span><span class="w">      </span><span class="o">|</span><span class="w"> </span><span class="k">False</span><span class="w">    </span><span class="o">|</span><span class="w"> </span><span class="p">...</span><span class="w">     </span><span class="o">|</span><span class="w">
</span></span></span><span class="line"><span class="cl"><span class="o">|</span><span class="w"> </span><span class="n">zone2</span><span class="w">  </span><span class="o">|</span><span class="w"> </span><span class="n">observer</span><span class="w"> </span><span class="o">|</span><span class="w"> </span><span class="mi">192</span><span class="p">.</span><span class="mi">168</span><span class="p">.</span><span class="mi">10</span><span class="p">.</span><span class="mi">22</span><span class="w"> </span><span class="o">|</span><span class="w">     </span><span class="mi">2882</span><span class="w"> </span><span class="o">|</span><span class="w"> </span><span class="n">mysql_port</span><span class="w">  </span><span class="o">|</span><span class="w"> </span><span class="mi">2881</span><span class="w">  </span><span class="o">|</span><span class="w"> </span><span class="p">...</span><span class="w">      </span><span class="o">|</span><span class="w"> </span><span class="n">OBSERVER</span><span class="w">      </span><span class="o">|</span><span class="w"> </span><span class="k">False</span><span class="w">    </span><span class="o">|</span><span class="w"> </span><span class="p">...</span><span class="w">     </span><span class="o">|</span><span class="w">
</span></span></span><span class="line"><span class="cl"><span class="o">+</span><span class="c1">--------+----------+---------------+----------+-------------+-------+----------+---------------+----------+---------+
</span></span></span></code></pre></div>
</details>



## 身份鉴别

- **对应控制点**：GB/T 22239-2019 8.1.4.1 身份鉴别（a 标识唯一/复杂度/定期更换，b 登录失败处理，c 远程管理防窃听，d 组合鉴别）。
- **判定要点**：OceanBase 原生提供口令复杂度系统变量（validate_password 系列）与口令有效期变量（default_password_lifetime），但默认值全部为"关闭"（policy 默认 low 且 length 默认 0，lifetime 默认 0 永不过期），未配置且无补偿判 a) 部分符合；登录失败处理为租户级配置项 connection_control 系列（默认 0 不启用），开启后仅施加连接延迟、不做账户锁定，判定时应说明该边界；`ssl_enabled` 默认 False 且无补偿判 c) 不符合；未实现双因素判 d) 不符合。新搭建集群 sys 租户 root 初始密码为空，现场须核实已修改。
- **取证要求**：口令策略与有效期变量查询截图、失败处理配置项截图、账户清单截图、SSL 配置截图、双因素认证截图、账号管理制度。

<div class="alert alert-warning" role="alert">


**高风险提示**：root@sys 或业务租户 root 保留空口令/默认口令/弱口令、口令复杂度变量全部保持默认关闭且无外围补偿，均属高风险情形。对应判定详见 [22、高风险判定指引与加固对照表](../../../../reinforce/其他系统或设备/22高风险判定指引与加固对照表/)。
</div>


### A. 身份标识唯一、口令复杂度、定期更换

```sql
select user, host from mysql.user order by user, host;   -- MySQL 模式租户内账户清单（兼容 mysql.user 表），核查账户唯一性与共享账户
show variables like 'validate_password%';                -- 口令复杂度系列变量：默认 check_user_name=OFF，length/mixed_case_count/number_count/special_char_count 默认 0，policy 默认 LOW
show variables like 'default_password_lifetime';         -- 口令有效期（天），默认 0=永不过期；配置后过期须重置口令方可继续操作
```

- **备注**：validate_password 系列为 OceanBase 租户级系统变量（validate_password_length 自 V2.2.77 引入，MySQL/Oracle 模式租户均可设置），并非 MySQL 的 validate_password 组件/插件，无需安装、直接 `SHOW VARIABLES` 可见，但默认全部不校验——policy 默认 `LOW` 仅做长度检测而长度默认 0，等价于未启用复杂度校验。未启用时应核查是否由堡垒机、统一身份认证或口令管理制度补偿。`SET GLOBAL validate_password_…`、`SET GLOBAL default_password_lifetime` 属变更操作，现场只记录不执行。Oracle 模式（Oracle 租户）的口令策略与用户清单口径不同（DBA_USERS 等视图仅企业版适用），以现场版本官方文档为准。
- **预期证据**：账户列表截图、口令复杂度变量截图、口令有效期截图、账号管理制度或账号台账。
- **整改对照（由 DBA 执行，属变更操作）**：`SET GLOBAL validate_password_policy='MEDIUM';`、`SET GLOBAL validate_password_length=8;`、`SET GLOBAL default_password_lifetime=90;`、`ALTER USER root IDENTIFIED BY '新口令';`。此类语句会改变全部账户的口令校验行为，须走变更审批并在业务低峰执行。


<details class="td-details"><summary>示例输出（节选）</summary><div class="highlight"><pre tabindex="0" class="chroma"><code class="language-sql" data-lang="sql"><span class="line"><span class="cl"><span class="n">obclient</span><span class="o">&gt;</span><span class="w"> </span><span class="k">show</span><span class="w"> </span><span class="n">variables</span><span class="w"> </span><span class="k">like</span><span class="w"> </span><span class="s1">&#39;validate_password%&#39;</span><span class="p">;</span><span class="w">
</span></span></span><span class="line"><span class="cl"><span class="o">+</span><span class="c1">--------------------------------------+-------+
</span></span></span><span class="line"><span class="cl"><span class="o">|</span><span class="w"> </span><span class="n">Variable_name</span><span class="w">                        </span><span class="o">|</span><span class="w"> </span><span class="n">Value</span><span class="w"> </span><span class="o">|</span><span class="w">
</span></span></span><span class="line"><span class="cl"><span class="o">+</span><span class="c1">--------------------------------------+-------+
</span></span></span><span class="line"><span class="cl"><span class="o">|</span><span class="w"> </span><span class="n">validate_password_check_user_name</span><span class="w">    </span><span class="o">|</span><span class="w"> </span><span class="k">OFF</span><span class="w">   </span><span class="o">|</span><span class="w">
</span></span></span><span class="line"><span class="cl"><span class="o">|</span><span class="w"> </span><span class="n">validate_password_length</span><span class="w">             </span><span class="o">|</span><span class="w"> </span><span class="mi">8</span><span class="w">     </span><span class="o">|</span><span class="w">
</span></span></span><span class="line"><span class="cl"><span class="o">|</span><span class="w"> </span><span class="n">validate_password_mixed_case_count</span><span class="w">   </span><span class="o">|</span><span class="w"> </span><span class="mi">1</span><span class="w">     </span><span class="o">|</span><span class="w">
</span></span></span><span class="line"><span class="cl"><span class="o">|</span><span class="w"> </span><span class="n">validate_password_number_count</span><span class="w">       </span><span class="o">|</span><span class="w"> </span><span class="mi">1</span><span class="w">     </span><span class="o">|</span><span class="w">
</span></span></span><span class="line"><span class="cl"><span class="o">|</span><span class="w"> </span><span class="n">validate_password_policy</span><span class="w">             </span><span class="o">|</span><span class="w"> </span><span class="n">MEDIUM</span><span class="o">|</span><span class="w">
</span></span></span><span class="line"><span class="cl"><span class="o">|</span><span class="w"> </span><span class="n">validate_password_special_char_count</span><span class="w"> </span><span class="o">|</span><span class="w"> </span><span class="mi">1</span><span class="w">     </span><span class="o">|</span><span class="w">
</span></span></span><span class="line"><span class="cl"><span class="o">+</span><span class="c1">--------------------------------------+-------+
</span></span></span><span class="line"><span class="cl"><span class="mi">6</span><span class="w"> </span><span class="k">rows</span><span class="w"> </span><span class="k">in</span><span class="w"> </span><span class="k">set</span><span class="w"> </span><span class="p">(</span><span class="mi">0</span><span class="p">.</span><span class="mi">002</span><span class="w"> </span><span class="n">sec</span><span class="p">)</span><span class="w">
</span></span></span><span class="line"><span class="cl"><span class="w">
</span></span></span><span class="line"><span class="cl"><span class="n">obclient</span><span class="o">&gt;</span><span class="w"> </span><span class="k">show</span><span class="w"> </span><span class="n">variables</span><span class="w"> </span><span class="k">like</span><span class="w"> </span><span class="s1">&#39;default_password_lifetime&#39;</span><span class="p">;</span><span class="w">
</span></span></span><span class="line"><span class="cl"><span class="o">+</span><span class="c1">---------------------------+-------+
</span></span></span><span class="line"><span class="cl"><span class="o">|</span><span class="w"> </span><span class="n">Variable_name</span><span class="w">             </span><span class="o">|</span><span class="w"> </span><span class="n">Value</span><span class="w"> </span><span class="o">|</span><span class="w">
</span></span></span><span class="line"><span class="cl"><span class="o">+</span><span class="c1">---------------------------+-------+
</span></span></span><span class="line"><span class="cl"><span class="o">|</span><span class="w"> </span><span class="n">default_password_lifetime</span><span class="w"> </span><span class="o">|</span><span class="w"> </span><span class="mi">90</span><span class="w">    </span><span class="o">|</span><span class="w">
</span></span></span><span class="line"><span class="cl"><span class="o">+</span><span class="c1">---------------------------+-------+
</span></span></span><span class="line"><span class="cl"><span class="err">（默认值为</span><span class="w"> </span><span class="mi">0</span><span class="o">=</span><span class="err">永不过期，示例中</span><span class="w"> </span><span class="mi">90</span><span class="w"> </span><span class="err">为现场已配置值）</span><span class="w">
</span></span></span></code></pre></div>
</details>



### B. 登录失败处理、会话超时退出

```sql
show parameters like 'connection_control%';   -- 租户级配置项（仅 MySQL 模式）：failed_connections_threshold 默认 0=不启用，min/max_connection_delay 为失败后的连接延迟（毫秒）
show variables like 'wait_timeout';           -- 非交互连接空闲超时（秒），默认 28800
show variables like 'interactive_timeout';    -- 交互连接空闲超时（秒），会话启动时按客户端类型选用其一初始化会话超时
select * from oceanbase.GV$OB_PROCESSLIST limit 20;  -- sys 租户查看全集群会话（关键字段含 ID/USER/TENANT/HOST/DB/COMMAND/TIME/STATE，以现场版本字段为准），辅助核对登录来源与会话管理
```

- **备注**：connection_control 系列为 OceanBase 内置租户级配置项（V3.2.1 起提供，仅 MySQL 模式），不同于 MySQL 需安装 CONNECTION_CONTROL 插件；但阈值触发后的处理方式为**增加连接响应延迟**（min_connection_delay 起步、逐次累加、至 max_connection_delay 封顶），并非账户锁定，判定 b) 时应如实说明该能力边界，锁定类控制需堡垒机/防暴力破解系统补偿。wait_timeout/interactive_timeout 默认 28800（8 小时），现场应核查是否已调小；ob_query_timeout（默认 10 秒）、ob_trx_timeout（默认 24 小时）为 SQL 执行与事务超时，不属空闲退出，勿混用口径。
- **预期证据**：失败处理配置项截图、会话超时变量截图、会话清单截图、堡垒机/运维平台超时与锁定策略截图、访谈记录。


<details class="td-details"><summary>示例输出（节选）</summary><div class="highlight"><pre tabindex="0" class="chroma"><code class="language-sql" data-lang="sql"><span class="line"><span class="cl"><span class="n">obclient</span><span class="o">&gt;</span><span class="w"> </span><span class="k">show</span><span class="w"> </span><span class="k">parameters</span><span class="w"> </span><span class="k">like</span><span class="w"> </span><span class="s1">&#39;connection_control%&#39;</span><span class="p">;</span><span class="w">
</span></span></span><span class="line"><span class="cl"><span class="o">+</span><span class="c1">-------------+----------------------------------------------+-------+
</span></span></span><span class="line"><span class="cl"><span class="o">|</span><span class="w"> </span><span class="n">name</span><span class="w">        </span><span class="o">|</span><span class="w"> </span><span class="n">info</span><span class="w">                                         </span><span class="o">|</span><span class="w"> </span><span class="n">value</span><span class="w"> </span><span class="o">|</span><span class="w">
</span></span></span><span class="line"><span class="cl"><span class="o">+</span><span class="c1">-------------+----------------------------------------------+-------+
</span></span></span><span class="line"><span class="cl"><span class="o">|</span><span class="w"> </span><span class="n">connection_control_failed_connections_threshold</span><span class="w"> </span><span class="o">|</span><span class="w"> </span><span class="err">用户错误登录尝试的阈值</span><span class="w"> </span><span class="o">|</span><span class="w"> </span><span class="mi">5</span><span class="w">     </span><span class="o">|</span><span class="w">
</span></span></span><span class="line"><span class="cl"><span class="o">|</span><span class="w"> </span><span class="n">connection_control_min_connection_delay</span><span class="w">         </span><span class="o">|</span><span class="w"> </span><span class="err">失败后最小连接延迟</span><span class="p">(</span><span class="n">ms</span><span class="p">)</span><span class="w"> </span><span class="o">|</span><span class="w"> </span><span class="mi">1000</span><span class="w">  </span><span class="o">|</span><span class="w">
</span></span></span><span class="line"><span class="cl"><span class="o">|</span><span class="w"> </span><span class="n">connection_control_max_connection_delay</span><span class="w">         </span><span class="o">|</span><span class="w"> </span><span class="err">失败后最大连接延迟</span><span class="p">(</span><span class="n">ms</span><span class="p">)</span><span class="w"> </span><span class="o">|</span><span class="w"> </span><span class="mi">60000</span><span class="w"> </span><span class="o">|</span><span class="w">
</span></span></span><span class="line"><span class="cl"><span class="o">+</span><span class="c1">-------------+----------------------------------------------+-------+
</span></span></span><span class="line"><span class="cl"><span class="err">（三项默认值均为</span><span class="w"> </span><span class="mi">0</span><span class="o">=</span><span class="err">不启用，示例为现场已配置值）</span><span class="w">
</span></span></span><span class="line"><span class="cl"><span class="w">
</span></span></span><span class="line"><span class="cl"><span class="n">obclient</span><span class="o">&gt;</span><span class="w"> </span><span class="k">show</span><span class="w"> </span><span class="n">variables</span><span class="w"> </span><span class="k">like</span><span class="w"> </span><span class="s1">&#39;wait_timeout&#39;</span><span class="p">;</span><span class="w">
</span></span></span><span class="line"><span class="cl"><span class="o">+</span><span class="c1">---------------+-------+
</span></span></span><span class="line"><span class="cl"><span class="o">|</span><span class="w"> </span><span class="n">Variable_name</span><span class="w"> </span><span class="o">|</span><span class="w"> </span><span class="n">Value</span><span class="w"> </span><span class="o">|</span><span class="w">
</span></span></span><span class="line"><span class="cl"><span class="o">+</span><span class="c1">---------------+-------+
</span></span></span><span class="line"><span class="cl"><span class="o">|</span><span class="w"> </span><span class="n">wait_timeout</span><span class="w">  </span><span class="o">|</span><span class="w"> </span><span class="mi">600</span><span class="w">   </span><span class="o">|</span><span class="w">
</span></span></span><span class="line"><span class="cl"><span class="o">+</span><span class="c1">---------------+-------+
</span></span></span></code></pre></div>
</details>



### C. 远程管理传输保密

```sql
show parameters like '%ssl%';    -- ssl_enabled 默认 False；另可核对 ssl_external_kms_info（SSL 密钥信息，JSON）、_ob_ssl_invited_nodes（RPC 链路 SSL 白名单）等
```

```bash
# 客户端侧取证：obclient 支持 --ssl/--ssl-ca/--ssl-cert/--ssl-key/--ssl-verify-server-cert/--tls-version 等 TLS 选项
obclient -h192.168.10.21 -P2881 -uroot@sys -p --ssl-ca /data/ssl/ca.pem --ssl-verify-server-cert -A
# 注意：obclient 无 --ssl-mode 选项（勿照抄 MySQL 客户端口径），加密与证书校验由上述选项控制
```

- **备注**：`ssl_enabled` 为集群级配置项，默认 False，仅"支持 SSL"不等于"已强制使用"；开启后还应在客户端以 TLS 选项实际重连取证，并区分 SQL 链路（客户端—OBServer/ODP）与 RPC 链路（节点间，需配置 `_ob_ssl_invited_nodes`，修改后需重启 OBServer 生效）。经 OBProxy 接入时还应核查 ODP 侧 `enable_server_ssl`（默认 False）等配置。未启用 SSL 且无堡垒机等密码技术补偿时，判 c) 不符合。
- **预期证据**：SSL 配置项截图、证书文件截图、客户端加密连接演示截图、堡垒机/远程管理链路说明。
- **高风险提示**：三级系统远程管理时鉴别信息明文传输（ssl_enabled=False 且无补偿措施）属高风险情形，见 [22、高风险判定指引与加固对照表](../../../../reinforce/其他系统或设备/22高风险判定指引与加固对照表/)。


<details class="td-details"><summary>示例输出（节选）</summary><div class="highlight"><pre tabindex="0" class="chroma"><code class="language-sql" data-lang="sql"><span class="line"><span class="cl"><span class="n">obclient</span><span class="o">&gt;</span><span class="w"> </span><span class="k">show</span><span class="w"> </span><span class="k">parameters</span><span class="w"> </span><span class="k">like</span><span class="w"> </span><span class="s1">&#39;%ssl%&#39;</span><span class="p">;</span><span class="w">
</span></span></span><span class="line"><span class="cl"><span class="o">+</span><span class="c1">---------------------------+----------------------------------------------+-------+
</span></span></span><span class="line"><span class="cl"><span class="o">|</span><span class="w"> </span><span class="n">name</span><span class="w">                      </span><span class="o">|</span><span class="w"> </span><span class="n">info</span><span class="w">                                         </span><span class="o">|</span><span class="w"> </span><span class="n">value</span><span class="w"> </span><span class="o">|</span><span class="w">
</span></span></span><span class="line"><span class="cl"><span class="o">+</span><span class="c1">---------------------------+----------------------------------------------+-------+
</span></span></span><span class="line"><span class="cl"><span class="o">|</span><span class="w"> </span><span class="n">ssl_enabled</span><span class="w">               </span><span class="o">|</span><span class="w"> </span><span class="err">是否启用</span><span class="w"> </span><span class="n">SSL</span><span class="w"> </span><span class="err">通信功能</span><span class="w">                        </span><span class="o">|</span><span class="w"> </span><span class="k">True</span><span class="w">  </span><span class="o">|</span><span class="w">
</span></span></span><span class="line"><span class="cl"><span class="o">|</span><span class="w"> </span><span class="n">ssl_external_kms_info</span><span class="w">     </span><span class="o">|</span><span class="w"> </span><span class="n">SSL</span><span class="w"> </span><span class="err">功能运行依赖信息（</span><span class="n">JSON</span><span class="err">）</span><span class="w">                 </span><span class="o">|</span><span class="w"> </span><span class="p">...</span><span class="w">   </span><span class="o">|</span><span class="w">
</span></span></span><span class="line"><span class="cl"><span class="o">|</span><span class="w"> </span><span class="n">_ob_ssl_invited_nodes</span><span class="w">     </span><span class="o">|</span><span class="w"> </span><span class="n">RPC</span><span class="w"> </span><span class="err">通信</span><span class="w"> </span><span class="n">SSL</span><span class="w"> </span><span class="err">白名单</span><span class="w">                          </span><span class="o">|</span><span class="w"> </span><span class="k">ALL</span><span class="w">   </span><span class="o">|</span><span class="w">
</span></span></span><span class="line"><span class="cl"><span class="o">+</span><span class="c1">---------------------------+----------------------------------------------+-------+
</span></span></span></code></pre></div>
</details>



### D. 组合鉴别

- **备注**：OceanBase 原生口令认证外，双因素通常由堡垒机、统一身份认证、MFA 平台实现，应在记录中注明，其中一种鉴别技术须基于密码技术；企业版/云上还可结合 SSL 客户端证书认证（obclient --ssl-cert/--ssl-key 双向认证）作为第二鉴别要素的支撑证据。
- **预期证据**：双因素登录界面截图、堡垒机认证策略截图、统一认证平台策略截图、访谈记录。


## 访问控制

- **对应控制点**：GB/T 22239-2019 8.1.4.2 访问控制（a 分配账户权限，b 默认账户，c 多余/过期账户，d 最小权限与权限分离，e 授权策略，f 授权粒度，g 安全标记）。
- **判定要点**：OceanBase 无安全标记能力（g 一般判不符合或由上位措施说明）；多租户架构下租户为资源（CPU/内存/分区）与数据隔离单元，租户间数据默认不可互访，可作为隔离性的架构支撑，但**不能替代租户内访问控制判定**——同一租户内仍须逐账户核查最小权限；重点查 MySQL 模式 `mysql.user` 中 `host='%'` 账户、GRANT OPTION 转授、多人共用 root、sys 租户 root 与各业务租户 root 是否分工分离。
- **取证要求**：mysql.user 查询截图、SHOW GRANTS 输出、授权视图抽查截图、账号权限台账与审批记录、sys 租户/业务租户管理员分工说明。

### A. 账户、权限分配

```sql
select user, host from mysql.user order by user, host;        -- 租户内账户与允许登录来源主机
show grants for 'root'@'%';                                   -- 默认账户权限（用户与 host 写全，host 省略时默认 '%'）
show grants for 'appuser'@'192.168.10.%';                     -- 抽查业务账户权限（以现场实际账户替换）
select * from information_schema.COLUMN_PRIVILEGES;           -- 列级授权清单（与 mysql.columns_priv 互证）
select user, host, db, table_name, column_name, column_priv
  from mysql.columns_priv;                                    -- 列级权限明细（兼容表）
```

- **备注**：MySQL 模式用户、权限体系与 MySQL 兼容，全局权限看 mysql.user、库级看 mysql.db、列级看 mysql.columns_priv / information_schema.COLUMN_PRIVILEGES，均可由 `SHOW GRANTS` 逐账户印证。重点核查高危权限（ALL PRIVILEGES、GRANT OPTION、DROP、FILE 类权限的等价物）与 `host='%'` 的宽来源授权。
- **预期证据**：账户与权限截图、SHOW GRANTS 输出、角色分工说明、账号权限审批记录。


<details class="td-details"><summary>示例输出（节选）</summary><div class="highlight"><pre tabindex="0" class="chroma"><code class="language-sql" data-lang="sql"><span class="line"><span class="cl"><span class="n">obclient</span><span class="o">&gt;</span><span class="w"> </span><span class="k">show</span><span class="w"> </span><span class="n">grants</span><span class="w"> </span><span class="k">for</span><span class="w"> </span><span class="s1">&#39;root&#39;</span><span class="o">@</span><span class="s1">&#39;%&#39;</span><span class="p">;</span><span class="w">
</span></span></span><span class="line"><span class="cl"><span class="o">+</span><span class="c1">--------------------------------------------------------------+
</span></span></span><span class="line"><span class="cl"><span class="o">|</span><span class="w"> </span><span class="n">Grants</span><span class="w"> </span><span class="k">for</span><span class="w"> </span><span class="n">root</span><span class="o">@%</span><span class="w">                                            </span><span class="o">|</span><span class="w">
</span></span></span><span class="line"><span class="cl"><span class="o">+</span><span class="c1">--------------------------------------------------------------+
</span></span></span><span class="line"><span class="cl"><span class="o">|</span><span class="w"> </span><span class="k">GRANT</span><span class="w"> </span><span class="k">ALL</span><span class="w"> </span><span class="k">PRIVILEGES</span><span class="w"> </span><span class="k">ON</span><span class="w"> </span><span class="o">*</span><span class="p">.</span><span class="o">*</span><span class="w"> </span><span class="k">TO</span><span class="w"> </span><span class="o">`</span><span class="n">root</span><span class="o">`@`%`</span><span class="w"> </span><span class="k">WITH</span><span class="w"> </span><span class="k">GRANT</span><span class="w"> </span><span class="k">OPTION</span><span class="w">  </span><span class="o">|</span><span class="w">
</span></span></span><span class="line"><span class="cl"><span class="o">+</span><span class="c1">--------------------------------------------------------------+
</span></span></span><span class="line"><span class="cl"><span class="n">obclient</span><span class="o">&gt;</span><span class="w"> </span><span class="k">show</span><span class="w"> </span><span class="n">grants</span><span class="w"> </span><span class="k">for</span><span class="w"> </span><span class="s1">&#39;appuser&#39;</span><span class="o">@</span><span class="s1">&#39;192.168.10.%&#39;</span><span class="p">;</span><span class="w">
</span></span></span><span class="line"><span class="cl"><span class="o">+</span><span class="c1">------------------------------------------------------------------+
</span></span></span><span class="line"><span class="cl"><span class="o">|</span><span class="w"> </span><span class="n">Grants</span><span class="w"> </span><span class="k">for</span><span class="w"> </span><span class="n">appuser</span><span class="o">@</span><span class="mi">192</span><span class="p">.</span><span class="mi">168</span><span class="p">.</span><span class="mi">10</span><span class="p">.</span><span class="o">%</span><span class="w">                                  </span><span class="o">|</span><span class="w">
</span></span></span><span class="line"><span class="cl"><span class="o">+</span><span class="c1">------------------------------------------------------------------+
</span></span></span><span class="line"><span class="cl"><span class="o">|</span><span class="w"> </span><span class="k">GRANT</span><span class="w"> </span><span class="k">SELECT</span><span class="p">,</span><span class="w"> </span><span class="k">INSERT</span><span class="p">,</span><span class="w"> </span><span class="k">UPDATE</span><span class="w"> </span><span class="k">ON</span><span class="w"> </span><span class="o">`</span><span class="n">appdb</span><span class="o">`</span><span class="p">.</span><span class="o">*</span><span class="w"> </span><span class="k">TO</span><span class="w"> </span><span class="o">`</span><span class="n">appuser</span><span class="o">`@`</span><span class="mi">192</span><span class="p">.</span><span class="mi">168</span><span class="p">.</span><span class="mi">10</span><span class="p">.</span><span class="o">%`</span><span class="w"> </span><span class="o">|</span><span class="w">
</span></span></span><span class="line"><span class="cl"><span class="o">+</span><span class="c1">------------------------------------------------------------------+
</span></span></span></code></pre></div>
</details>



### B. 默认账户、多余账户、来源地址限制

```sql
select user, host from mysql.user order by user, host;          -- 排查 root 用途、测试/遗留账户与来源网段
select user, host from mysql.user where host = '%';             -- 限定来源为任意主机的账户清单，重点核实是否经网络层收紧
```

- **备注**：sys 租户与各用户租户各有独立 root 账户，租户间账户互不相通；root@sys 仅作集群/租户管理用途，不应承载业务应用。新建集群 root@sys 初始密码为空、经 OBD 部署时由 OB_SYS_PASSWORD 指定，现场须核实已按制度修改。删除多余账户（DROP USER）、改口令属变更操作，现场只记录不执行；OceanBase 数据库层面无内置 IP 白名单配置项，来源控制以 user@host 限定的同时，应结合主机/网络防火墙、OBProxy 访问控制与安全组策略取证。
- **预期证据**：账户来源地址截图、多余/过期账户清理记录、账号台账、网络层访问控制策略截图。
- **高风险提示**：默认账户未改空口令/默认口令、共享账户或宽来源管理账户属高风险情形，见 [22、高风险判定指引与加固对照表](../../../../reinforce/其他系统或设备/22高风险判定指引与加固对照表/)。


<details class="td-details"><summary>示例输出（节选）</summary><div class="highlight"><pre tabindex="0" class="chroma"><code class="language-sql" data-lang="sql"><span class="line"><span class="cl"><span class="n">obclient</span><span class="o">&gt;</span><span class="w"> </span><span class="k">select</span><span class="w"> </span><span class="k">user</span><span class="p">,</span><span class="w"> </span><span class="k">host</span><span class="w"> </span><span class="k">from</span><span class="w"> </span><span class="n">mysql</span><span class="p">.</span><span class="k">user</span><span class="w"> </span><span class="k">where</span><span class="w"> </span><span class="k">host</span><span class="w"> </span><span class="o">=</span><span class="w"> </span><span class="s1">&#39;%&#39;</span><span class="p">;</span><span class="w">
</span></span></span><span class="line"><span class="cl"><span class="o">+</span><span class="c1">---------+------+
</span></span></span><span class="line"><span class="cl"><span class="o">|</span><span class="w"> </span><span class="k">user</span><span class="w">    </span><span class="o">|</span><span class="w"> </span><span class="k">host</span><span class="w"> </span><span class="o">|</span><span class="w">
</span></span></span><span class="line"><span class="cl"><span class="o">+</span><span class="c1">---------+------+
</span></span></span><span class="line"><span class="cl"><span class="o">|</span><span class="w"> </span><span class="n">root</span><span class="w">    </span><span class="o">|</span><span class="w"> </span><span class="o">%</span><span class="w">    </span><span class="o">|</span><span class="w">
</span></span></span><span class="line"><span class="cl"><span class="o">|</span><span class="w"> </span><span class="n">appuser</span><span class="w"> </span><span class="o">|</span><span class="w"> </span><span class="o">%</span><span class="w">    </span><span class="o">|</span><span class="w">
</span></span></span><span class="line"><span class="cl"><span class="o">+</span><span class="c1">---------+------+
</span></span></span><span class="line"><span class="cl"><span class="mi">2</span><span class="w"> </span><span class="k">rows</span><span class="w"> </span><span class="k">in</span><span class="w"> </span><span class="k">set</span><span class="w"> </span><span class="p">(</span><span class="mi">0</span><span class="p">.</span><span class="mi">002</span><span class="w"> </span><span class="n">sec</span><span class="p">)</span><span class="w">
</span></span></span><span class="line"><span class="cl"><span class="err">（</span><span class="k">host</span><span class="o">=</span><span class="s1">&#39;%&#39;</span><span class="w"> </span><span class="err">账户应在网络层或部署形态上说明等效来源控制）</span><span class="w">
</span></span></span></code></pre></div>
</details>



### C. 细粒度授权与最小权限

```sql
select user, host, db, table_name from mysql.columns_priv;    -- 抽查敏感字段列级授权
select grantee, table_schema, table_name, privilege_type
  from information_schema.COLUMN_PRIVILEGES
 where grantee like '%appuser%';                              -- SQL 视图口径与兼容表互证（grantee 以现场实际账户替换）
show databases;                                               -- 核对业务账户可见库范围与授权范围是否一致
```

- **备注**：重点抽查重要业务库、敏感字段的授权是否最小化，是否存在超范围的全库授权；库级/表级权限结合 mysql.db 与 SHOW GRANTS 取证。
- **预期证据**：库级/列级授权截图、敏感字段权限抽查记录、权限申请审批记录。


### D. 权限分离与管理员账户划分

- **备注**：OceanBase 无 openGauss 式三权分立开关，sys 租户管理员与业务租户管理员的权限分离主要靠部署与制度实现：sys 租户 root 负责集群与租户生命周期管理、业务租户 root 负责租户内对象管理、OCP/OBProxy 等平台账户单独管理，审计操作在企业版 Oracle 租户由内置 ORAAUDITOR 用户承担（社区版无此能力，见安全审计节）。现场未实现技术性分离时，应核查是否以岗位分工、堡垒机会话授权等外围措施补偿并在记录中说明。
- **预期证据**：sys 租户/业务租户管理员账户清单与用途说明、岗位分工文件、堡垒机授权策略截图、访谈记录。


## 安全审计

- **对应控制点**：GB/T 22239-2019 8.1.4.3 安全审计（启用审计并覆盖每个用户、记录要素、记录保护与定期备份、审计进程保护）。
- **判定要点**：OceanBase 的原生"安全审计"（AUDIT/NOAUDIT 语句、内置 ORAAUDITOR 审计管理员、审计记录以日志方式持久化）仅在企业版 Oracle 租户支持；社区版仅提供 MySQL 模式，无专用审计功能，仅具备内存级 SQL 审计视图（GV$OB_SQL_AUDIT/V$OB_SQL_AUDIT，enable_sql_audit 默认开启、数据存内存并按 ob_sql_audit_percentage 默认 3% 淘汰，无持久留存）与 observer.log 等运行日志。仅有 SQL 审计视图/运行日志而无第三方审计、日志外发集中存储等补偿判"部分符合"；无任何审计措施判"不符合"。
- **取证要求**：SQL 审计配置项截图、审计视图记录样例（时间/用户/来源/语句/结果）、日志目录与留存策略截图、第三方审计或日志平台截图。

<div class="alert alert-warning" role="alert">


**高风险提示**：审计功能未开启且无任何替代审计措施（第三方数据库审计、日志审计平台等）属高风险情形。对应判定详见 [22、高风险判定指引与加固对照表](../../../../reinforce/其他系统或设备/22高风险判定指引与加固对照表/)。
</div>


### A. 审计功能是否开启

```sql
show parameters like 'enable_sql_audit';         -- 集群级配置项，默认 True：SQL Audit 总开关
show parameters like 'ob_sql_audit_percentage';  -- SQL Audit 内存占租户内存百分比，默认 3，达到上限后淘汰旧记录
show variables like 'ob_enable_sql_audit';       -- 租户会话级开关（默认 True），与集群配置项叠加控制
```

- **备注**：SQL Audit 官方定位是 SQL 执行性能诊断与监控（记录客户端来源、执行状态、耗时等），数据驻留内存、按阈值自动淘汰、**不做持久化留存**，不能单独满足等保审计记录留存要求，判定时应如实说明；合规审计留存（不少于 6 个月）需以第三方数据库审计、堡垒机审计或日志外发平台补偿取证。开启/关闭 SQL Audit（ALTER SYSTEM SET enable_sql_audit）属变更操作，现场只记录不执行。
- **预期证据**：enable_sql_audit 与 ob_sql_audit_percentage 截图、SQL 审计记录样例截图、第三方审计/日志平台截图。


<details class="td-details"><summary>示例输出（节选）</summary><div class="highlight"><pre tabindex="0" class="chroma"><code class="language-sql" data-lang="sql"><span class="line"><span class="cl"><span class="n">obclient</span><span class="o">&gt;</span><span class="w"> </span><span class="k">show</span><span class="w"> </span><span class="k">parameters</span><span class="w"> </span><span class="k">like</span><span class="w"> </span><span class="s1">&#39;enable_sql_audit&#39;</span><span class="p">;</span><span class="w">
</span></span></span><span class="line"><span class="cl"><span class="o">+</span><span class="c1">------------------+------------------------------------+-------+
</span></span></span><span class="line"><span class="cl"><span class="o">|</span><span class="w"> </span><span class="n">name</span><span class="w">             </span><span class="o">|</span><span class="w"> </span><span class="n">info</span><span class="w">                               </span><span class="o">|</span><span class="w"> </span><span class="n">value</span><span class="w"> </span><span class="o">|</span><span class="w">
</span></span></span><span class="line"><span class="cl"><span class="o">+</span><span class="c1">------------------+------------------------------------+-------+
</span></span></span><span class="line"><span class="cl"><span class="o">|</span><span class="w"> </span><span class="n">enable_sql_audit</span><span class="w"> </span><span class="o">|</span><span class="w"> </span><span class="err">是否开启</span><span class="w"> </span><span class="k">SQL</span><span class="w"> </span><span class="n">Audit</span><span class="w"> </span><span class="err">功能（集群级）</span><span class="w">  </span><span class="o">|</span><span class="w"> </span><span class="k">True</span><span class="w">  </span><span class="o">|</span><span class="w">
</span></span></span><span class="line"><span class="cl"><span class="o">+</span><span class="c1">------------------+------------------------------------+-------+
</span></span></span><span class="line"><span class="cl"><span class="n">obclient</span><span class="o">&gt;</span><span class="w"> </span><span class="k">show</span><span class="w"> </span><span class="k">parameters</span><span class="w"> </span><span class="k">like</span><span class="w"> </span><span class="s1">&#39;ob_sql_audit_percentage&#39;</span><span class="p">;</span><span class="w">
</span></span></span><span class="line"><span class="cl"><span class="o">+</span><span class="c1">--------------------------+--------------------------------------+-------+
</span></span></span><span class="line"><span class="cl"><span class="o">|</span><span class="w"> </span><span class="n">name</span><span class="w">                     </span><span class="o">|</span><span class="w"> </span><span class="n">info</span><span class="w">                                 </span><span class="o">|</span><span class="w"> </span><span class="n">value</span><span class="w"> </span><span class="o">|</span><span class="w">
</span></span></span><span class="line"><span class="cl"><span class="o">+</span><span class="c1">--------------------------+--------------------------------------+-------+
</span></span></span><span class="line"><span class="cl"><span class="o">|</span><span class="w"> </span><span class="n">ob_sql_audit_percentage</span><span class="w">  </span><span class="o">|</span><span class="w"> </span><span class="k">SQL</span><span class="w"> </span><span class="n">Audit</span><span class="w"> </span><span class="err">内存占租户内存百分比</span><span class="w">        </span><span class="o">|</span><span class="w"> </span><span class="mi">3</span><span class="w">     </span><span class="o">|</span><span class="w">
</span></span></span><span class="line"><span class="cl"><span class="o">+</span><span class="c1">--------------------------+--------------------------------------+-------+
</span></span></span></code></pre></div>
</details>



### B. 审计范围与审计对象

```sql
-- sys 租户查询全局 SQL 审计（V4.0.0 起为 GV$OB_/V$OB_ 前缀视图，3.x 及以下为 GV$SQL_AUDIT/V$SQL_AUDIT，以现场版本实测为准）
select user_name, user_client_ip, db_name, query_sql, elapsed_time, ret_code
  from oceanbase.GV$OB_SQL_AUDIT
 order by elapsed_time desc limit 10;             -- 抽取最近执行记录：用户、来源 IP、库名、SQL 文本、耗时（微秒）、返回码
select user_name, user_client_ip, query_sql, ret_code
  from oceanbase.V$OB_SQL_AUDIT limit 10;         -- 本节点视角的 SQL 审计表
```

- **备注**：视图字段覆盖客户端来源（USER_CLIENT_IP）、用户（USER_NAME）、库名、SQL 文本（QUERY_SQL）、耗时与返回码（RET_CODE，非 0 即执行失败，可作为失败操作留痕），满足审计记录基本要素；注意 QUERY_SQL 字段自 V4.3.5 BP4 起仅 SYS 租户可查看，普通租户核查时以现场实际可见字段为准。SQL 审计按租户隔离，业务租户仅能查看本租户记录；跨租户核查须以 sys 租户登录。
- **预期证据**：GV$OB_SQL_AUDIT 记录样例截图（含用户、来源、语句、结果）、审计覆盖范围说明。


<details class="td-details"><summary>示例输出（节选）</summary><div class="highlight"><pre tabindex="0" class="chroma"><code class="language-sql" data-lang="sql"><span class="line"><span class="cl"><span class="n">obclient</span><span class="o">&gt;</span><span class="w"> </span><span class="k">select</span><span class="w"> </span><span class="n">user_name</span><span class="p">,</span><span class="w"> </span><span class="n">user_client_ip</span><span class="p">,</span><span class="w"> </span><span class="n">db_name</span><span class="p">,</span><span class="w"> </span><span class="n">query_sql</span><span class="p">,</span><span class="w"> </span><span class="n">elapsed_time</span><span class="p">,</span><span class="w"> </span><span class="n">ret_code</span><span class="w">
</span></span></span><span class="line"><span class="cl"><span class="w">    </span><span class="o">-&gt;</span><span class="w">   </span><span class="k">from</span><span class="w"> </span><span class="n">oceanbase</span><span class="p">.</span><span class="n">GV$OB_SQL_AUDIT</span><span class="w"> </span><span class="k">order</span><span class="w"> </span><span class="k">by</span><span class="w"> </span><span class="n">elapsed_time</span><span class="w"> </span><span class="k">desc</span><span class="w"> </span><span class="k">limit</span><span class="w"> </span><span class="mi">3</span><span class="p">;</span><span class="w">
</span></span></span><span class="line"><span class="cl"><span class="o">+</span><span class="c1">-----------+-----------------+---------+----------------------------------------------+--------------+----------+
</span></span></span><span class="line"><span class="cl"><span class="o">|</span><span class="w"> </span><span class="n">USER_NAME</span><span class="w"> </span><span class="o">|</span><span class="w"> </span><span class="n">USER_CLIENT_IP</span><span class="w">  </span><span class="o">|</span><span class="w"> </span><span class="n">DB_NAME</span><span class="w"> </span><span class="o">|</span><span class="w"> </span><span class="n">QUERY_SQL</span><span class="w">                                    </span><span class="o">|</span><span class="w"> </span><span class="n">ELAPSED_TIME</span><span class="w"> </span><span class="o">|</span><span class="w"> </span><span class="n">RET_CODE</span><span class="w"> </span><span class="o">|</span><span class="w">
</span></span></span><span class="line"><span class="cl"><span class="o">+</span><span class="c1">-----------+-----------------+---------+----------------------------------------------+--------------+----------+
</span></span></span><span class="line"><span class="cl"><span class="o">|</span><span class="w"> </span><span class="n">appuser</span><span class="w">   </span><span class="o">|</span><span class="w"> </span><span class="mi">192</span><span class="p">.</span><span class="mi">168</span><span class="p">.</span><span class="mi">10</span><span class="p">.</span><span class="mi">30</span><span class="w">   </span><span class="o">|</span><span class="w"> </span><span class="n">appdb</span><span class="w">   </span><span class="o">|</span><span class="w"> </span><span class="k">SELECT</span><span class="w"> </span><span class="o">*</span><span class="w"> </span><span class="k">FROM</span><span class="w"> </span><span class="n">t_order</span><span class="w"> </span><span class="k">WHERE</span><span class="w"> </span><span class="n">order_id</span><span class="w"> </span><span class="o">=</span><span class="w"> </span><span class="mi">10086</span><span class="w"> </span><span class="o">|</span><span class="w">       </span><span class="mi">413372</span><span class="w"> </span><span class="o">|</span><span class="w">        </span><span class="mi">0</span><span class="w"> </span><span class="o">|</span><span class="w">
</span></span></span><span class="line"><span class="cl"><span class="o">|</span><span class="w"> </span><span class="n">appuser</span><span class="w">   </span><span class="o">|</span><span class="w"> </span><span class="mi">192</span><span class="p">.</span><span class="mi">168</span><span class="p">.</span><span class="mi">10</span><span class="p">.</span><span class="mi">30</span><span class="w">   </span><span class="o">|</span><span class="w"> </span><span class="n">appdb</span><span class="w">   </span><span class="o">|</span><span class="w"> </span><span class="k">UPDATE</span><span class="w"> </span><span class="n">t_order</span><span class="w"> </span><span class="k">SET</span><span class="w"> </span><span class="n">status</span><span class="w"> </span><span class="o">=</span><span class="w"> </span><span class="mi">1</span><span class="w"> </span><span class="k">WHERE</span><span class="w"> </span><span class="p">...</span><span class="w">      </span><span class="o">|</span><span class="w">       </span><span class="mi">102504</span><span class="w"> </span><span class="o">|</span><span class="w">        </span><span class="mi">0</span><span class="w"> </span><span class="o">|</span><span class="w">
</span></span></span><span class="line"><span class="cl"><span class="o">|</span><span class="w"> </span><span class="n">root</span><span class="w">      </span><span class="o">|</span><span class="w"> </span><span class="mi">192</span><span class="p">.</span><span class="mi">168</span><span class="p">.</span><span class="mi">10</span><span class="p">.</span><span class="mi">8</span><span class="w">    </span><span class="o">|</span><span class="w"> </span><span class="k">NULL</span><span class="w">    </span><span class="o">|</span><span class="w"> </span><span class="k">SELECT</span><span class="w"> </span><span class="mi">1</span><span class="w">                                     </span><span class="o">|</span><span class="w">         </span><span class="mi">6721</span><span class="w"> </span><span class="o">|</span><span class="w">        </span><span class="mi">0</span><span class="w"> </span><span class="o">|</span><span class="w">
</span></span></span><span class="line"><span class="cl"><span class="o">+</span><span class="c1">-----------+-----------------+---------+----------------------------------------------+--------------+----------+
</span></span></span></code></pre></div>
</details>



### C. 审计日志保护与留存

```sql
show parameters like 'enable_syslog_recycle';    -- 运行日志自动回收开关，默认 False
show parameters like 'max_syslog_file_count';    -- 单节点最大日志文件数量，默认 0=不限；与上一项配合控制日志占用
```

```bash
ls -lh <安装目录>/log/ | head -20   # 主机侧只读查看运行日志文件（observer.log/rootservice.log/election.log/trace.log/alert.log 等）
```

- **备注**：OceanBase 运行日志位于安装目录 log/ 下，分 observer.log（主运行日志）、rootservice.log（RootService 日志）、election.log（选举日志）、trace.log、alert.log 等类型，单文件默认不超过 256MB 并切片；运行日志含登录等连接事件但属诊断日志，非专用审计日志。等保口径留存不少于 6 个月，运行日志自动回收开启时更须核查集中日志平台/定期备份是否满足留存要求；日志目录权限、防篡改措施需在操作系统侧取证。
- **预期证据**：日志目录与文件权限截图、日志回收参数截图、集中日志平台留存策略截图、备份策略说明。


<details class="td-details"><summary>示例输出（节选）</summary><div class="highlight"><pre tabindex="0" class="chroma"><code class="language-text" data-lang="text"><span class="line"><span class="cl">$ ls -lh /home/admin/oceanbase/log/ | head -8
</span></span><span class="line"><span class="cl">-rw-r--r-- 1 admin admin 256M Sep  2 23:58 observer.log
</span></span><span class="line"><span class="cl">-rw-r--r-- 1 admin admin 256M Sep  2 23:58 observer.log.20260902000000000
</span></span><span class="line"><span class="cl">-rw-r--r-- 1 admin admin  12M Sep  2 23:58 election.log
</span></span><span class="line"><span class="cl">-rw-r--r-- 1 admin admin  96M Sep  2 23:58 rootservice.log
</span></span><span class="line"><span class="cl">-rw-r--r-- 1 admin admin  88M Sep  2 23:58 trace.log
</span></span><span class="line"><span class="cl">-rw-r--r-- 1 admin admin 1.2M Sep  2 23:58 alert.log
</span></span></code></pre></div>
</details>



### D. 审计记录查询（企业版 Oracle 租户口径）与失效告警

- **备注**：企业版 Oracle 租户支持 AUDIT/NOAUDIT 设置审计规则（需 AUDIT SYSTEM 权限、由内置 ORAAUDITOR 用户操作，该用户默认锁定、启用前须解锁），审计记录以日志方式持久化，每个业务租户有后台线程打印审计日志，并支持 `AUDIT` 语法按语句/对象设置规则；社区版不具备该能力，现场应如实记录版本差异。审计失效告警需补查监控平台、OCP 告警策略与审计员独立性，取证以平台截图为准。
- **预期证据**：审计规则与审计记录样例截图（企业版 Oracle 租户）、监控告警规则与样例截图、审计管理制度、访谈记录。


## 数据完整性

- **对应控制点**：GB/T 22239-2019 8.1.4.7 数据完整性（a 传输过程、b 存储过程）。
- **判定要点**：传输完整性以 SSL/TLS 证据为准（ssl_enabled=True、客户端 TLS 连接、RPC 白名单配置）；存储完整性 OceanBase 依托多副本 Paxos 协议实现数据多副本强一致与自动校验，可作架构支撑证据，但完整性的管理措施（备份校验、变更控制、权限与审计）仍需综合判定，仅有数据库参数判"部分符合"。
- **取证要求**：SSL 配置截图、加密连接演示截图、多副本架构与一致性说明、备份校验记录、制度材料。

### A. 传输过程完整性

```sql
show parameters like '%ssl%';
```

- **备注**：使用 SSL/TLS 可作为传输完整性的重要证据，还应结合 obclient TLS 选项、ODP 侧 enable_server_ssl 与远程管理流程判断全链路生效。
- **预期证据**：SSL 参数截图、加密连接截图、网络传输加密说明。


<details class="td-details"><summary>示例输出（节选）</summary><div class="highlight"><pre tabindex="0" class="chroma"><code class="language-sql" data-lang="sql"><span class="line"><span class="cl"><span class="n">obclient</span><span class="o">&gt;</span><span class="w"> </span><span class="k">show</span><span class="w"> </span><span class="k">parameters</span><span class="w"> </span><span class="k">like</span><span class="w"> </span><span class="s1">&#39;%ssl%&#39;</span><span class="p">;</span><span class="w">
</span></span></span><span class="line"><span class="cl"><span class="err">（同数据保密性节</span><span class="w"> </span><span class="n">A</span><span class="w"> </span><span class="err">小节输出：</span><span class="n">ssl_enabled</span><span class="o">=</span><span class="k">True</span><span class="err">、</span><span class="n">_ob_ssl_invited_nodes</span><span class="o">=</span><span class="k">ALL</span><span class="w"> </span><span class="err">等）</span><span class="w">
</span></span></span></code></pre></div>
</details>



### B. 存储过程完整性

```sql
select tenant_id, tenant_name, locality, primary_zone
  from oceanbase.DBA_OB_TENANTS;                  -- 租户副本类型与 Zone 分布（如 FULL{1}@zone1,FULL{1}@zone2,FULL{1}@zone3），多副本冗余的架构证据
```

- **备注**：重点说明鉴别数据（口令哈希存储于租户内 mysql.user）、重要配置数据（集群配置项变更管理）、审计数据（日志目录权限与外发留存）是否具备防篡改或一致性保护措施；多副本强一致由 Paxos 协议保证，可作为存储完整性的技术支撑，但仍需结合备份校验、变更管理与制度说明综合判定。
- **预期证据**：租户副本分布截图、配置变更管理制度、备份校验记录、技术说明。


## 数据保密性

- **对应控制点**：GB/T 22239-2019 8.1.4.8 数据保密性（a 传输过程、b 存储过程）。
- **判定要点**：传输保密性看 ssl_enabled 与客户端 TLS 选项（obclient 无 --ssl-mode，用 --ssl/--ssl-ca/--ssl-verify-server-cert 等）；存储保密性看 tde_method 透明加密（默认 none=关闭，internal=使用内部存储主密钥的表空间加密）或磁盘/应用层加密，均无措施判"不符合"。
- **取证要求**：SSL 参数与客户端加密连接截图、tde_method 与加密表材料、密钥管理说明、磁盘加密证明材料。

<div class="alert alert-warning" role="alert">


**高风险提示**：远程管理与重要业务连接明文传输（ssl_enabled=False 且无其他密码技术补偿）属高风险情形。对应判定详见 [22、高风险判定指引与加固对照表](../../../../reinforce/其他系统或设备/22高风险判定指引与加固对照表/)。
</div>


### A. 传输过程保密性

```sql
show parameters like '%ssl%';    -- ssl_enabled、ssl_external_kms_info、_ob_ssl_invited_nodes（RPC 链路白名单）
```

```bash
obclient -h192.168.10.21 -P2881 -uroot@sys -p --ssl-ca /data/ssl/ca.pem --ssl-verify-server-cert -A   # 客户端 TLS 连接演示（证书路径以现场为准）
```

- **备注**：应证明数据库管理连接、重要业务连接在传输过程中采用密码技术保护；SSL 配置（ssl_external_kms_info 的 ssl_mode=file 时使用证书文件，配置 ssl_client_authentication 可开启双向认证）；OBServer 间 RPC 加密在配置后需重启 OBServer 生效，取证时以现场配置与实际连接为准。
- **预期证据**：SSL 配置项截图、证书文件截图、客户端加密连接截图、远程运维链路说明。


<details class="td-details"><summary>示例输出（节选）</summary><div class="highlight"><pre tabindex="0" class="chroma"><code class="language-sql" data-lang="sql"><span class="line"><span class="cl"><span class="n">obclient</span><span class="o">&gt;</span><span class="w"> </span><span class="k">show</span><span class="w"> </span><span class="k">parameters</span><span class="w"> </span><span class="k">like</span><span class="w"> </span><span class="s1">&#39;%ssl%&#39;</span><span class="p">;</span><span class="w">
</span></span></span><span class="line"><span class="cl"><span class="o">+</span><span class="c1">---------------------------+----------------------------------------------+-------+
</span></span></span><span class="line"><span class="cl"><span class="o">|</span><span class="w"> </span><span class="n">name</span><span class="w">                      </span><span class="o">|</span><span class="w"> </span><span class="n">info</span><span class="w">                                         </span><span class="o">|</span><span class="w"> </span><span class="n">value</span><span class="w"> </span><span class="o">|</span><span class="w">
</span></span></span><span class="line"><span class="cl"><span class="o">+</span><span class="c1">---------------------------+----------------------------------------------+-------+
</span></span></span><span class="line"><span class="cl"><span class="o">|</span><span class="w"> </span><span class="n">ssl_enabled</span><span class="w">               </span><span class="o">|</span><span class="w"> </span><span class="err">是否启用</span><span class="w"> </span><span class="n">SSL</span><span class="w"> </span><span class="err">通信功能</span><span class="w">                        </span><span class="o">|</span><span class="w"> </span><span class="k">True</span><span class="w">  </span><span class="o">|</span><span class="w">
</span></span></span><span class="line"><span class="cl"><span class="o">|</span><span class="w"> </span><span class="n">ssl_external_kms_info</span><span class="w">     </span><span class="o">|</span><span class="w"> </span><span class="n">SSL</span><span class="w"> </span><span class="err">功能运行依赖信息（</span><span class="n">JSON</span><span class="err">）</span><span class="w">                 </span><span class="o">|</span><span class="w"> </span><span class="p">...</span><span class="w">   </span><span class="o">|</span><span class="w">
</span></span></span><span class="line"><span class="cl"><span class="o">|</span><span class="w"> </span><span class="n">_ob_ssl_invited_nodes</span><span class="w">     </span><span class="o">|</span><span class="w"> </span><span class="n">RPC</span><span class="w"> </span><span class="err">通信</span><span class="w"> </span><span class="n">SSL</span><span class="w"> </span><span class="err">白名单</span><span class="w">                          </span><span class="o">|</span><span class="w"> </span><span class="k">ALL</span><span class="w">   </span><span class="o">|</span><span class="w">
</span></span></span><span class="line"><span class="cl"><span class="o">+</span><span class="c1">---------------------------+----------------------------------------------+-------+
</span></span></span></code></pre></div>
</details>



### B. 存储过程保密性

```sql
show parameters like 'tde_method';    -- 透明表空间加密方式：默认 none=关闭；internal=使用内部存储主密钥
```

- **备注**：tde_method 为集群/租户级配置项，默认 none；置为 internal 后可对建表指定表空间透明加密（配置项修改需重启生效，属变更操作，现场只记录不执行），官方同时注明 internal 模式下事务日志（clog）不做加密，判定时应说明该覆盖范围。透明加密的密钥管理与 KMS 集成能力以企业版文档为准，社区版现场应实际验证加密表可用性后再下结论；未启用 TDE 时，以磁盘加密或应用层加密补充判定。鉴别数据方面，核对口令以哈希存储（不可反查明文），结合制度与权限控制取证。
- **预期证据**：tde_method 截图、加密表清单或说明、密钥管理说明、磁盘加密或应用层加密证明。


<details class="td-details"><summary>示例输出（节选）</summary><div class="highlight"><pre tabindex="0" class="chroma"><code class="language-sql" data-lang="sql"><span class="line"><span class="cl"><span class="n">obclient</span><span class="o">&gt;</span><span class="w"> </span><span class="k">show</span><span class="w"> </span><span class="k">parameters</span><span class="w"> </span><span class="k">like</span><span class="w"> </span><span class="s1">&#39;tde_method&#39;</span><span class="p">;</span><span class="w">
</span></span></span><span class="line"><span class="cl"><span class="o">+</span><span class="c1">-------------+------------------------------------+-------+
</span></span></span><span class="line"><span class="cl"><span class="o">|</span><span class="w"> </span><span class="n">name</span><span class="w">        </span><span class="o">|</span><span class="w"> </span><span class="n">info</span><span class="w">                               </span><span class="o">|</span><span class="w"> </span><span class="n">value</span><span class="w"> </span><span class="o">|</span><span class="w">
</span></span></span><span class="line"><span class="cl"><span class="o">+</span><span class="c1">-------------+------------------------------------+-------+
</span></span></span><span class="line"><span class="cl"><span class="o">|</span><span class="w"> </span><span class="n">tde_method</span><span class="w">  </span><span class="o">|</span><span class="w"> </span><span class="err">设置透明表空间加密的方式</span><span class="w">           </span><span class="o">|</span><span class="w"> </span><span class="k">none</span><span class="w">  </span><span class="o">|</span><span class="w">
</span></span></span><span class="line"><span class="cl"><span class="o">+</span><span class="c1">-------------+------------------------------------+-------+
</span></span></span><span class="line"><span class="cl"><span class="mi">1</span><span class="w"> </span><span class="k">row</span><span class="w"> </span><span class="k">in</span><span class="w"> </span><span class="k">set</span><span class="w"> </span><span class="p">(</span><span class="mi">0</span><span class="p">.</span><span class="mi">002</span><span class="w"> </span><span class="n">sec</span><span class="p">)</span><span class="w">
</span></span></span></code></pre></div>
</details>



## 备份恢复

- **对应控制点**：GB/T 22239-2019 8.1.4.9 数据备份恢复（a 本地备份与恢复，b 异地实时备份，c 热冗余）。
- **判定要点**：具备日志归档+数据备份的定期策略（backup_dest/log_archive_dest/data_backup_dest 已配置、备份任务有成功记录）且经恢复演练验证判 a) 符合，无备份或从未演练判"不符合"；多副本/多 Zone 部署且副本分布跨地域（DBA_OB_ZONES 的 REGION/IDC 与机房说明互证）判 b)，仅同机房副本判"部分符合"；三副本及以上 FULL 副本、故障切换有演练记录判 c) 符合。
- **取证要求**：备份策略与任务记录截图、备份集/归档视图查询截图、恢复演练记录、Zone/Region 分布截图与机房说明、高可用架构图。

<div class="alert alert-warning" role="alert">


**高风险提示**：重要数据无本地备份、有备份但从未验证恢复属高风险情形。对应判定详见 [22、高风险判定指引与加固对照表](../../../../reinforce/其他系统或设备/22高风险判定指引与加固对照表/)。
</div>


### A. 本地数据备份与恢复

```sql
show parameters like '%backup_dest%';             -- 备份目的端：backup_dest（4.x 新增，统一基线备份与日志归档路径）或 data_backup_dest/log_archive_dest，未配置时值为空
show parameters like 'log_archive_dest';          -- 日志归档目的端（用户租户配置；sys 租户与 Meta 租户不支持备份恢复）
```

```sql
-- 用户租户内查询本租户备份任务（V4.0.0 起引入的视图体系）
select * from oceanbase.DBA_OB_BACKUP_JOBS limit 10;        -- 进行中的备份 Job
select * from oceanbase.DBA_OB_BACKUP_TASKS limit 10;       -- 进行中的备份 Task
-- sys 租户查询全部租户备份任务与历史
select tenant_id, job_id, job_type, status from oceanbase.CDB_OB_BACKUP_JOBS limit 10;
select tenant_id, job_id, job_type, status from oceanbase.CDB_OB_BACKUP_JOB_HISTORY order by 1 desc limit 10;   -- 已结束的历史备份任务
```

- **备注**：备份目的地（NFS/对象存储）通过 `ALTER SYSTEM SET DATA_BACKUP_DEST/LOG_ARCHIVE_DEST` 或 backup_dest 配置，属变更操作，现场只核查现状不执行；发起备份/恢复的语句同样属变更类，本分册不落核查块。备份策略的定时调度通常由 OCP 备份恢复模块或外部调度平台承担，应以其任务记录、备份集列表与恢复演练记录为主要证据；备份目的端未配置、视图无历史任务记录时，须重点访谈并核实实际备份手段。
- **预期证据**：备份目的端配置截图、备份任务/历史记录截图、OCP 备份策略与备份集截图、恢复演练记录。


<details class="td-details"><summary>示例输出（节选）</summary><div class="highlight"><pre tabindex="0" class="chroma"><code class="language-sql" data-lang="sql"><span class="line"><span class="cl"><span class="n">obclient</span><span class="o">&gt;</span><span class="w"> </span><span class="k">show</span><span class="w"> </span><span class="k">parameters</span><span class="w"> </span><span class="k">like</span><span class="w"> </span><span class="s1">&#39;log_archive_dest&#39;</span><span class="p">;</span><span class="w">
</span></span></span><span class="line"><span class="cl"><span class="o">+</span><span class="c1">-------------------+--------------------------------------------+--------------------------------+
</span></span></span><span class="line"><span class="cl"><span class="o">|</span><span class="w"> </span><span class="n">name</span><span class="w">              </span><span class="o">|</span><span class="w"> </span><span class="n">info</span><span class="w">                                       </span><span class="o">|</span><span class="w"> </span><span class="n">value</span><span class="w">                          </span><span class="o">|</span><span class="w">
</span></span></span><span class="line"><span class="cl"><span class="o">+</span><span class="c1">-------------------+--------------------------------------------+--------------------------------+
</span></span></span><span class="line"><span class="cl"><span class="o">|</span><span class="w"> </span><span class="n">log_archive_dest</span><span class="w">  </span><span class="o">|</span><span class="w"> </span><span class="err">日志归档目的端</span><span class="w">                             </span><span class="o">|</span><span class="w"> </span><span class="n">file</span><span class="p">:</span><span class="o">///</span><span class="k">data</span><span class="o">/</span><span class="n">backup</span><span class="o">/</span><span class="n">archive</span><span class="w">    </span><span class="o">|</span><span class="w">
</span></span></span><span class="line"><span class="cl"><span class="o">+</span><span class="c1">-------------------+--------------------------------------------+--------------------------------+
</span></span></span><span class="line"><span class="cl"><span class="n">obclient</span><span class="o">&gt;</span><span class="w"> </span><span class="k">select</span><span class="w"> </span><span class="n">tenant_id</span><span class="p">,</span><span class="w"> </span><span class="n">job_id</span><span class="p">,</span><span class="w"> </span><span class="n">job_type</span><span class="p">,</span><span class="w"> </span><span class="n">status</span><span class="w"> </span><span class="k">from</span><span class="w"> </span><span class="n">oceanbase</span><span class="p">.</span><span class="n">CDB_OB_BACKUP_JOB_HISTORY</span><span class="w"> </span><span class="k">limit</span><span class="w"> </span><span class="mi">5</span><span class="p">;</span><span class="w">
</span></span></span><span class="line"><span class="cl"><span class="o">+</span><span class="c1">-----------+--------+-------------------+-----------+
</span></span></span><span class="line"><span class="cl"><span class="o">|</span><span class="w"> </span><span class="n">tenant_id</span><span class="w"> </span><span class="o">|</span><span class="w"> </span><span class="n">job_id</span><span class="w"> </span><span class="o">|</span><span class="w"> </span><span class="n">job_type</span><span class="w">          </span><span class="o">|</span><span class="w"> </span><span class="n">status</span><span class="w">    </span><span class="o">|</span><span class="w">
</span></span></span><span class="line"><span class="cl"><span class="o">+</span><span class="c1">-----------+--------+-------------------+-----------+
</span></span></span><span class="line"><span class="cl"><span class="o">|</span><span class="w">    </span><span class="mi">100002</span><span class="w"> </span><span class="o">|</span><span class="w">      </span><span class="mi">1</span><span class="w"> </span><span class="o">|</span><span class="w"> </span><span class="k">FULL</span><span class="w"> </span><span class="n">BACKUP</span><span class="p">(</span><span class="k">ALL</span><span class="p">)</span><span class="w">  </span><span class="o">|</span><span class="w"> </span><span class="n">COMPLETED</span><span class="w"> </span><span class="o">|</span><span class="w">
</span></span></span><span class="line"><span class="cl"><span class="o">|</span><span class="w">    </span><span class="mi">100002</span><span class="w"> </span><span class="o">|</span><span class="w">      </span><span class="mi">2</span><span class="w"> </span><span class="o">|</span><span class="w"> </span><span class="n">ARCHIVELOG</span><span class="w">        </span><span class="o">|</span><span class="w"> </span><span class="n">COMPLETED</span><span class="w"> </span><span class="o">|</span><span class="w">
</span></span></span><span class="line"><span class="cl"><span class="o">+</span><span class="c1">-----------+--------+-------------------+-----------+
</span></span></span><span class="line"><span class="cl"><span class="err">（列以现场版本实际结构为准，节选示意）</span><span class="w">
</span></span></span></code></pre></div>
</details>



### B. 异地实时备份

```sql
select tenant_id, tenant_name, locality, primary_zone
  from oceanbase.DBA_OB_TENANTS;                  -- 租户副本分布（Locality）与主 Zone
select zone, region, idc, status
  from oceanbase.DBA_OB_ZONES;                    -- Zone 所属 Region 与机房（IDC），判定副本是否跨地域分布
```

- **备注**：OceanBase 多副本（如三副本 FULL）随事务实时同步，可作为异地实时备份/冗余的支撑证据，但仍需证明副本所在 Zone 位于异地（Region/IDC 与机房说明、网络拓扑图互证）；同城两Zone+异地一Zone 为常见合规形态。备库（standby）等容灾形态以现场实际部署为准另行取证。
- **预期证据**：租户 Locality 截图、Zone/Region/IDC 截图、异地机房说明、网络拓扑图。


<details class="td-details"><summary>示例输出（节选）</summary><div class="highlight"><pre tabindex="0" class="chroma"><code class="language-sql" data-lang="sql"><span class="line"><span class="cl"><span class="n">obclient</span><span class="o">&gt;</span><span class="w"> </span><span class="k">select</span><span class="w"> </span><span class="n">tenant_id</span><span class="p">,</span><span class="w"> </span><span class="n">tenant_name</span><span class="p">,</span><span class="w"> </span><span class="n">locality</span><span class="p">,</span><span class="w"> </span><span class="n">primary_zone</span><span class="w"> </span><span class="k">from</span><span class="w"> </span><span class="n">oceanbase</span><span class="p">.</span><span class="n">DBA_OB_TENANTS</span><span class="p">;</span><span class="w">
</span></span></span><span class="line"><span class="cl"><span class="o">+</span><span class="c1">-----------+-------------+---------------------------------------------+----------------+
</span></span></span><span class="line"><span class="cl"><span class="o">|</span><span class="w"> </span><span class="n">tenant_id</span><span class="w"> </span><span class="o">|</span><span class="w"> </span><span class="n">tenant_name</span><span class="w"> </span><span class="o">|</span><span class="w"> </span><span class="n">locality</span><span class="w">                                    </span><span class="o">|</span><span class="w"> </span><span class="n">primary_zone</span><span class="w">   </span><span class="o">|</span><span class="w">
</span></span></span><span class="line"><span class="cl"><span class="o">+</span><span class="c1">-----------+-------------+---------------------------------------------+----------------+
</span></span></span><span class="line"><span class="cl"><span class="o">|</span><span class="w">         </span><span class="mi">1</span><span class="w"> </span><span class="o">|</span><span class="w"> </span><span class="n">sys</span><span class="w">         </span><span class="o">|</span><span class="w"> </span><span class="k">FULL</span><span class="err">{</span><span class="mi">1</span><span class="err">}</span><span class="o">@</span><span class="n">zone1</span><span class="p">,</span><span class="w"> </span><span class="k">FULL</span><span class="err">{</span><span class="mi">1</span><span class="err">}</span><span class="o">@</span><span class="n">zone2</span><span class="p">,</span><span class="w"> </span><span class="k">FULL</span><span class="err">{</span><span class="mi">1</span><span class="err">}</span><span class="o">@</span><span class="n">zone3</span><span class="w"> </span><span class="o">|</span><span class="w"> </span><span class="n">zone1</span><span class="p">;</span><span class="n">zone2</span><span class="p">,</span><span class="n">zone3</span><span class="w"> </span><span class="o">|</span><span class="w">
</span></span></span><span class="line"><span class="cl"><span class="o">|</span><span class="w">    </span><span class="mi">100002</span><span class="w"> </span><span class="o">|</span><span class="w"> </span><span class="n">app_tenant</span><span class="w">  </span><span class="o">|</span><span class="w"> </span><span class="k">FULL</span><span class="err">{</span><span class="mi">1</span><span class="err">}</span><span class="o">@</span><span class="n">zone1</span><span class="p">,</span><span class="w"> </span><span class="k">FULL</span><span class="err">{</span><span class="mi">1</span><span class="err">}</span><span class="o">@</span><span class="n">zone2</span><span class="p">,</span><span class="w"> </span><span class="k">FULL</span><span class="err">{</span><span class="mi">1</span><span class="err">}</span><span class="o">@</span><span class="n">zone3</span><span class="w"> </span><span class="o">|</span><span class="w"> </span><span class="n">zone1</span><span class="p">;</span><span class="n">zone2</span><span class="p">,</span><span class="n">zone3</span><span class="w"> </span><span class="o">|</span><span class="w">
</span></span></span><span class="line"><span class="cl"><span class="o">+</span><span class="c1">-----------+-------------+---------------------------------------------+----------------+
</span></span></span><span class="line"><span class="cl"><span class="n">obclient</span><span class="o">&gt;</span><span class="w"> </span><span class="k">select</span><span class="w"> </span><span class="k">zone</span><span class="p">,</span><span class="w"> </span><span class="n">region</span><span class="p">,</span><span class="w"> </span><span class="n">idc</span><span class="p">,</span><span class="w"> </span><span class="n">status</span><span class="w"> </span><span class="k">from</span><span class="w"> </span><span class="n">oceanbase</span><span class="p">.</span><span class="n">DBA_OB_ZONES</span><span class="p">;</span><span class="w">
</span></span></span><span class="line"><span class="cl"><span class="o">+</span><span class="c1">-------+-----------+------+--------+
</span></span></span><span class="line"><span class="cl"><span class="o">|</span><span class="w"> </span><span class="k">zone</span><span class="w">  </span><span class="o">|</span><span class="w"> </span><span class="n">region</span><span class="w">    </span><span class="o">|</span><span class="w"> </span><span class="n">idc</span><span class="w">  </span><span class="o">|</span><span class="w"> </span><span class="n">status</span><span class="w"> </span><span class="o">|</span><span class="w">
</span></span></span><span class="line"><span class="cl"><span class="o">+</span><span class="c1">-------+-----------+------+--------+
</span></span></span><span class="line"><span class="cl"><span class="o">|</span><span class="w"> </span><span class="n">zone1</span><span class="w"> </span><span class="o">|</span><span class="w"> </span><span class="n">shanghai</span><span class="w">  </span><span class="o">|</span><span class="w"> </span><span class="n">IDC1</span><span class="w"> </span><span class="o">|</span><span class="w"> </span><span class="n">ACTIVE</span><span class="w"> </span><span class="o">|</span><span class="w">
</span></span></span><span class="line"><span class="cl"><span class="o">|</span><span class="w"> </span><span class="n">zone2</span><span class="w"> </span><span class="o">|</span><span class="w"> </span><span class="n">shanghai</span><span class="w">  </span><span class="o">|</span><span class="w"> </span><span class="n">IDC2</span><span class="w"> </span><span class="o">|</span><span class="w"> </span><span class="n">ACTIVE</span><span class="w"> </span><span class="o">|</span><span class="w">
</span></span></span><span class="line"><span class="cl"><span class="o">|</span><span class="w"> </span><span class="n">zone3</span><span class="w"> </span><span class="o">|</span><span class="w"> </span><span class="n">beijing</span><span class="w">   </span><span class="o">|</span><span class="w"> </span><span class="n">IDC3</span><span class="w"> </span><span class="o">|</span><span class="w"> </span><span class="n">ACTIVE</span><span class="w"> </span><span class="o">|</span><span class="w">
</span></span></span><span class="line"><span class="cl"><span class="o">+</span><span class="c1">-------+-----------+------+--------+
</span></span></span></code></pre></div>
</details>



### C. 热冗余与高可用

```bash
obd cluster display <部署名>    # OBD 查看部署内各节点组件运行状态（只读）；OCP 部署环境改以 OCP 集群总览页取证
```

- **备注**：重点确认是否具备热冗余（多副本 FULL）、故障自动切换与恢复能力；租户主 Zone 切换（switchover）、停机演练属变更操作，现场以演练记录、OCP 监控与告警记录取证，不在生产集群演示。
- **预期证据**：高可用架构图、obd/OCP 集群状态截图、故障切换演练记录。


## 剩余信息保护

- **对应控制点**：GB/T 22239-2019 8.1.4.10 剩余信息保护。
- **判定要点**：OceanBase 无直接核查命令，依据介质/云盘释放清除策略与销毁记录判定；仅删账户/表而无日志、备份残留清理判"部分符合"。
- **取证要求**：介质清除与销毁制度文件、云平台磁盘回收策略截图、销毁记录。

### A. 鉴别信息所在存储空间释放前清除

- **备注**：删除账户（DROP USER）仅删除租户内对象，磁盘块残留与备份残留需结合介质清除制度、虚拟磁盘回收策略、云盘释放策略、销毁记录综合判定。

- **预期证据**：介质清除制度、云平台磁盘释放策略、存储回收说明、销毁记录。

### B. 敏感数据所在存储空间释放前清除

- **备注**：需结合磁盘加密、虚拟化回收策略、介质销毁记录判定敏感数据残留风险控制情况；分布式场景还应关注多副本、备份集与回收站（ recyclebin 类机制以现场版本实测为准）中数据副本的同步清理。

- **预期证据**：磁盘加密截图、销毁记录、设备回收制度、存储平台策略截图。

## 个人信息保护

- **对应控制点**：GB/T 22239-2019 8.1.4.11 个人信息保护。
- **判定要点**：不存储个人信息判不适用（须访谈并留存边界说明）；涉及时核查敏感字段授权、脱敏、导出控制与审计留痕。
- **取证要求**：个人信息字段清单、字段级授权与审计截图、脱敏与分类分级材料。

### A. 个人信息访问控制与审计

- **备注**：若业务涉及个人信息，应抽查敏感表/列的授权（mysql.columns_priv、SHOW GRANTS）、访问留痕（GV$OB_SQL_AUDIT 记录、第三方审计）与导出控制。

- **预期证据**：敏感字段权限截图、导出审计截图、账号职责分工说明。

### B. 个人信息存储与传输保护

- **备注**：抽查脱敏、加密（tde_method/磁盘加密）、专门审计、分类分级等保护措施，不宜仅凭数据库参数单独下结论。

- **预期证据**：脱敏规则截图、加密设计说明、分类分级文件、系统设计材料。

## 入侵防范

- **对应控制点**：GB/T 22239-2019 8.1.4.4 入侵防范（a 最小安装，b 服务与端口，c 管理终端限制，e 漏洞发现与修补）；D 项对应 8.1.4.5 恶意代码防范。
- **判定要点**：OceanBase 为分布式数据库软件，最小安装与恶意代码防范由宿主 OS 侧测评覆盖，本节按集群/租户边界核查服务端口、来源限制与版本漏洞；`host='%'` 且无网络层限制判不符合，使用已停止维护版本且存在未修复高危漏洞判不符合并按高风险处理。
- **取证要求**：监听端口与进程清单截图、防火墙/堡垒机策略截图、漏洞扫描报告与补丁记录、EDR/防护软件界面截图。

### A. 访问来源限制/白名单

```sql
show parameters like 'mysql_port';    -- SQL 协议端口，默认 2881
show parameters like 'rpc_port';      -- 节点间 RPC 端口，默认 2882
```

```bash
ss -lntp | grep observer             # 或 netstat -lntp | grep observer：核对节点实际监听地址与端口（只读）
```

- **备注**：节点监听 SQL 端口（2881，经 OBProxy 时为 2883）与 RPC 端口（2882）；数据库层来源控制以 user@host 限定（见访问控制节），OceanBase 无内置客户端 IP 白名单配置项，网络层访问控制由防火墙、安全组与 OBProxy 部署边界实现，应逐一取证。管理端口不应暴露至非授权网段。
- **预期证据**：监听端口截图、user@host 截图、主机/网络防火墙策略、堡垒机访问策略截图。


<details class="td-details"><summary>示例输出（节选）</summary><div class="highlight"><pre tabindex="0" class="chroma"><code class="language-text" data-lang="text"><span class="line"><span class="cl">$ ss -lntp | grep observer
</span></span><span class="line"><span class="cl">LISTEN 0 128 *:2881  *:* users:((&#34;observer&#34;,pid=1201,...))
</span></span><span class="line"><span class="cl">LISTEN 0 128 *:2882  *:* users:((&#34;observer&#34;,pid=1201,...))
</span></span></code></pre></div>
</details>



### B. 异常访问与爆破防护

- **备注**：结合登录失败处理（connection_control 系列配置项）、会话超时（wait_timeout）、会话清单（GV$OB_PROCESSLIST）与 WAF/堡垒机/防暴力破解策略，确认具备阻断或告警能力。

- **预期证据**：失败连接阈值配置截图、策略截图、告警样例、访谈记录。

### C. 漏洞扫描与补丁管理

- **备注**：确认数据库漏洞扫描周期、补丁评估与修复流程；版本选择对照官方生命周期——官方产品生命周期表列出各 LTS 版本标准支持（EOS）与扩展支持（EOES）截止日期（如 V4.2.1 LTS EOS 2027-09-30、V4.2.5/V4.3.5 LTS EOS 2028-09-30），生命周期表已无 V4.1 条目（官方升级路径建议 V4.1 升级至 V4.4.x），现场在用版本应为受支持版本，否则应在记录中注明并按漏洞风险跟踪。
- **预期证据**：漏洞扫描报告、补丁更新记录、变更单、版本生命周期说明。

### D. 恶意代码/工具防护

- **备注**：确认主机侧安全防护软件或 EDR 对 observer 进程及 obclient/obd 等工具所在主机的防护与告警能力；OCP/ODP 等配套组件的部署最小化一并核查。

- **预期证据**：安全软件截图、策略配置截图、告警样例。

## 时间同步与日志一致性

- **对应控制点**：GB/T 22239-2019 8.1.5.4 安全管理中心·集中管控（时钟同步），并支撑 8.1.4.3 安全审计记录的时间可溯源。
- **判定要点**：集群各节点与统一时钟源正常同步（NTP/chrony 服务 active、偏差可接受）判符合，未同步或偏差大判不符合；OceanBase 选举协议依赖时钟同步，官方部署要求集群多节点与 OCP 节点配置 NTP/chrony 并将偏差控制在 100ms 以内（早期部署文档口径为 2s 以内）。
- **取证要求**：`chronyc tracking`/NTP 配置截图、时钟源说明、巡检记录。

```bash
chronyc tracking          # chrony 同步状态（或 ntpstat、ntpq -p）
timedatectl status | grep -Ei "NTP|synchronized"
```

- **备注**：确认全部 OBServer 节点与 OBProxy/OCP 节点时间同步（NTP/chrony），保证 GV$OB_SQL_AUDIT、运行日志的时间可比对、可溯源；监控告警中的 host_ntp_offset_too_large/host_ntp_service_not_exist 事件应一并核销。

- **预期证据**：NTP/chrony 配置截图、时间同步状态截图、运维制度或巡检记录。

## 主流版本差异说明

```text
OceanBase主流版本核查差异说明
```

## 版本识别

```bash
obclient -V                      # obclient 客户端版本
obd cluster display <部署名>      # 部署组件与版本信息（OBD 管理的部署）
```

```sql
select version();                -- 5.7.25 前缀为 MySQL 兼容协议版本号，真实版本看 OceanBase_CE 串
show variables like 'version%';  -- version / version_comment 辅助确认
```

说明：现场先确认社区版/企业版、内核小版本与租户模式（MySQL 模式/Oracle 租户），再选用对应命令与判定口径。

## 主流版本分档

1. OceanBase 社区版 V4.1.x（官方生命周期表已无条目，升级路径建议升至 V4.4.x，现场应评估停维风险）

2. OceanBase 社区版 V4.2.1 LTS（EOS 2027-09-30）/ V4.2.5 LTS（EOS 2028-09-30）

3. OceanBase 社区版 V4.3.5 LTS（EOS 2028-09-30，本分册参数默认值主要以 4.2.x/4.3.x 文档核验）

4. OceanBase 社区版 V4.4.x 及更高版本（V4.4.2 LTS EOS 2030-04-30）；企业版对应版本能力更全（审计、KMS 等），判定以现场版本文档为准

## 重点差异

### A. 模式差异：MySQL 模式与 Oracle 租户

1. 社区版仅提供 MySQL 模式租户，Oracle 租户为企业版能力；本分册核查命令均以 MySQL 模式租户为准

2. 原生安全审计（AUDIT/NOAUDIT、ORAAUDITOR 审计管理员、审计记录日志持久化）仅企业版 Oracle 租户支持；MySQL 模式租户仅有 SQL 审计视图与运行日志

3. 用户清单视图 Oracle 租户用 DBA_USERS/ALL_USERS（仅企业版适用），MySQL 模式用 mysql.user

推荐命令：

```sql
select user, host from mysql.user order by user, host;
select user_name, user_client_ip, query_sql, ret_code from oceanbase.GV$OB_SQL_AUDIT limit 10;
```

兼容提示：

1. Oracle 租户的口令策略、审计规则设置口径与 MySQL 模式完全不同，现场不得互套。

2. 4.x 视图统一带 OB_ 前缀（GV$OB_SQL_AUDIT/CDB_OB_BACKUP_JOBS），3.x 及以下为 GV$SQL_AUDIT 等旧名，跨版本核查前先以 SHOW PARAMETERS/视图实测确认。

### B. 身份鉴别：内置配置项而非插件

1. 口令复杂度（validate_password 系列）与口令有效期（default_password_lifetime）为租户级系统变量，开箱默认全部关闭；connection_control 失败处理为租户级配置项（V3.2.1 起，仅 MySQL 模式），默认 0 不启用

2. connection_control 触发后仅增加连接延迟、不锁定账户，与 MySQL 同名插件语义一致，判定均需说明边界

推荐命令：

```sql
show variables like 'validate_password%';
show variables like 'default_password_lifetime';
show parameters like 'connection_control%';
```

兼容提示：

1. root@sys 初始密码为空（OBD 部署由 OB_SYS_PASSWORD 指定），新建集群应首查该项。

2. SET GLOBAL/ALTER SYSTEM SET 均属变更操作，现场只记录不执行。

### C. 备份恢复与多副本视图

1. 4.x 备份体系以 backup_dest/data_backup_dest/log_archive_dest 目的地与 CDB_/DBA_OB_BACKUP_* 视图为主，由 OCP 或调度平台承担定时策略

2. sys 租户不支持备份恢复，备份目的地与备份任务均落在用户租户；sys 租户可经 CDB_ 视图查看全部租户

推荐命令：

```sql
show parameters like '%backup_dest%';
select tenant_id, tenant_name, locality, primary_zone from oceanbase.DBA_OB_TENANTS;
select zone, region, idc from oceanbase.DBA_OB_ZONES;
```

兼容提示：

1. 3.x 备份视图与参数体系与 4.x 不同，跨版本现场以实测视图为准，勿直接套用本分册视图名。

### D. 加密能力与版本能力差异

1. 传输加密由 ssl_enabled 配置项总控（默认 False），obclient 无 --ssl-mode 选项、用 --ssl/--ssl-ca/--ssl-verify-server-cert 等；RPC 链路加密另需 _ob_ssl_invited_nodes 白名单且重启生效

2. 透明加密 tde_method 默认 none，internal 模式主密钥内部存储且 clog 不加密；KMS 集成等存储加密能力以企业版为准

推荐命令：

```sql
show parameters like '%ssl%';
show parameters like 'tde_method';
```

兼容提示：

1. 社区版/企业版能力差异点（原生审计、KMS/存储加密、Oracle 租户）务必在报告中如实标注，避免把企业版能力写成社区版默认能力。

## 现场编制建议

1. 以 root@sys（或业务租户管理员）经 obclient 登录核查：SHOW PARAMETERS 在 sys 租户可查集群级与租户级配置项（可加 TENANT 关键字查指定租户），普通租户仅能查看本租户配置项，现场应提前确认登录通道与账户。

2. 配置项取证优先 `show parameters like '…'` 保留原始截图（含 zone/svr_ip 列以证明节点覆盖），变量用 `show variables like '…'`，两类对象不可混查——connection_control、ssl_enabled、tde_method、enable_sql_audit 等是配置项，validate_password、wait_timeout、default_password_lifetime 等是变量。

3. 先用 `select version()` 与 `obd cluster display`（或 OCP 总览）固定版本与部署形态，再对照本分册「重点差异」选命令；社区版与企业版、MySQL 模式与 Oracle 租户的口径差异必须写入报告。

4. 变更类操作（SET GLOBAL、ALTER SYSTEM SET、AUDIT、备份/恢复与切换演练）一律不现场执行，仅记录整改口径并注明审批要求。

5. SQL 审计视图数据为内存态、随时可能被淘汰，取证时应当场截图并注明查询时间窗口，不可事后补取。

## 取证注意事项

1. `select version()` 以 5.7.25 开头属正常现象，不得据此判定对象为 MySQL；版本以 OceanBase_CE 串、obclient -V 与 obd cluster display 输出互证。

2. SHOW PARAMETERS 输出列较多（zone/svr_type/svr_ip/name/value/info 等），截图应覆盖 name/value/info 与节点列；同一配置项各节点取值应一致，不一致需核查变更执行情况。

3. 用户名@租户名（经 OBProxy 再加 #集群名）为 OB 特有登录形态，取证记录中的"账号"应写全三段式；sys 租户与业务租户 root 分属不同管理边界，访谈与测试应分别进行。

4. 审计与留存判定：GV$OB_SQL_AUDIT 仅内存留存、运行日志非专用审计日志，社区版环境必须核查第三方审计/日志外发平台后才可判符合或部分符合，并如实标注企业版 Oracle 租户才具备原生审计能力。

5. 若为云数据库（OB Cloud）或托管版，OS 侧证据（日志目录、证书文件、监听端口）改由控制台或运维平台取证。

## 参考依据

1. GB/T 22239-2019《信息安全技术 网络安全等级保护基本要求》（openstd 实测可达，安全计算环境条款 8.1.4）：<https://openstd.samr.gov.cn/bzgk/gb/newGbInfo?hcno=BAFB47E8874764186BDB7865E8344DAF>
2. GB/T 28448-2019《信息安全技术 网络安全等级保护测评要求》（openstd 实测可达）：<https://openstd.samr.gov.cn/bzgk/gb/newGbInfo?hcno=7E736CDF4502B6FF1258DD250AA3EC8C>
3. 《网络安全等级保护测评高风险判定指引》（中关村信息安全测评联盟团体标准 T/ISEAA 001-2020；官方无公开直链，未引用二手站链接）。
4. OceanBase 官方文档 www.oceanbase.com/docs（社区版 4.x 中文文档为主，以下均于 2026-09-03 实际访问核验）：
   - 设置密码复杂度（validate_password 系列变量名、默认值 policy=LOW/length=0 等、SET GLOBAL 设置方式与报错 1819）：[社区版文档](https://www.oceanbase.com/docs/community-observer-cn-10000000000902265)
   - validate_password_length 变量（默认 0、V2.2.77 引入、MySQL/Oracle 模式租户均可设置）：[V4.4.0 文档](https://www.oceanbase.com/docs/common-oceanbase-database-cn-1000000003381372)
   - 安全认证最佳实践（口令复杂度、default_password_lifetime 密码过期时间配置）：[通用文档](https://www.oceanbase.com/docs/common-best-practices-1000000001489653)
   - default_password_lifetime 变量（默认 0 永不过期、取值 [0,65535] 天、Global 生效）：[企业版文档](https://www.oceanbase.com/docs/enterprise-oceanbase-database-cn-10000000000944925)
   - connection_control_failed_connections_threshold 配置项（默认 0、仅 MySQL 模式、V3.2.1 引入、与 min/max_connection_delay 配套）：[V4.x 文档](https://www.oceanbase.com/docs/common-oceanbase-database-cn-1000000003979748)
   - wait_timeout 变量（默认 28800、取值 [1,31536000]、与 interactive_timeout 会话初始化关系）：[V4.3.5 文档](https://www.oceanbase.com/docs/common-oceanbase-database-cn-1000000002016004)
   - 通过 OBClient 连接 OceanBase 租户（-h/-P/-u/-p/-A 参数、直连 2881 与 OBProxy 2883、用户名@租户名）：[V4.3.5 文档](https://www.oceanbase.com/docs/common-oceanbase-database-cn-1000000002013208)
   - OBClient 命令行选项参考（-V/--version、--ssl/--ssl-ca/--ssl-cert/--ssl-key/--ssl-verify-server-cert/--tls-version，无 --ssl-mode）：[命令行客户端文档](https://www.oceanbase.com/docs/common-obclient-doc-cn-1000000006361909)
   - 登录 OceanBase 租户（新集群 sys 租户 root 初始密码为空、登录后应立即修改）：[V4.1.0 文档](https://www.oceanbase.com/docs/common-oceanbase-database-cn-10000000001692790)
   - 查看用户权限（SHOW GRANTS、mysql.user/mysql.db 全局与库级权限）：[V4.4.0 文档](https://www.oceanbase.com/docs/common-oceanbase-database-cn-1000000003381920)与[企业版文档](https://www.oceanbase.com/docs/enterprise-oceanbase-database-cn-10000000000887418)；列级权限（mysql.columns_priv、information_schema.COLUMN_PRIVILEGES）：[V4.4.2 单机版文档](https://www.oceanbase.com/docs/common-oceanbase-database-standalone-1000000006078040)
   - SQL 审计（GV$OB_SQL_AUDIT/V$OB_SQL_AUDIT 定位与字段 USER_CLIENT_IP/USER_NAME/DB_NAME/QUERY_SQL/ELAPSED_TIME/RET_CODE、enable_sql_audit 开关、ob_sql_audit_percentage 默认 3、内存淘汰无持久留存、QUERY_SQL 自 V4.3.5 BP4 起仅 SYS 租户可查）：[V4.3.5 文档](https://www.oceanbase.com/docs/common-oceanbase-database-cn-1000000002016229)；[GV$OB_SQL_AUDIT V4.3.2](https://www.oceanbase.com/docs/common-oceanbase-database-cn-1000000001053020)
   - 开始审计/设置和查看审计规则（AUDIT/NOAUDIT、ORAAUDITOR 内置用户、AUDIT SYSTEM 权限、Oracle 租户）：[企业版文档](https://www.oceanbase.com/docs/enterprise-oceanbase-database-cn-0000000000526227)、[AUDIT 语句 V4.4.2](https://www.oceanbase.com/docs/common-oceanbase-database-cn-1000000005287880)、[查看审计记录 V4.4.1（审计记录以日志方式持久化）](https://www.oceanbase.com/docs/common-oceanbase-database-cn-1000000003977413)
   - 日志概述（observer.log/rootservice.log/election.log/trace.log/alert.log 五类日志、log 目录）：[V4.3.5 文档](https://www.oceanbase.com/docs/common-oceanbase-database-cn-1000000002012816)；日志自动清理（enable_syslog_recycle/max_syslog_file_count）：[知识库](https://www.oceanbase.com/knowledge-base/oceanbase-database-20000000109)
   - 数据传输加密概述（SSL/TLS 扩展支持）：[V4.3.5 文档](https://www.oceanbase.com/docs/common-oceanbase-database-cn-1000000002013026)；OBServer 传输加密（ssl_enabled、ssl_external_kms_info、_ob_ssl_invited_nodes、社区版差异、RPC 重启生效）：[V4.2.1 文档](https://www.oceanbase.com/docs/common-oceanbase-database-cn-1000000000218259)；[ssl_external_kms_info 配置项](https://www.oceanbase.com/docs/enterprise-oceanbase-database-cn-10000000000356050)
   - 为新创建的表设置透明加密（tde_method 默认 none、internal 主密钥内部存储、clog 不加密）：[V4.2.1 文档](https://www.oceanbase.com/docs/common-oceanbase-database-cn-1000000000218713)
   - 查看数据备份进度（CDB_OB_BACKUP_JOBS/CDB_OB_BACKUP_TASKS、DBA_OB_BACKUP_JOBS/DBA_OB_BACKUP_TASKS）：[社区版文档](https://www.oceanbase.com/docs/community-observer-cn-10000000000901794)、[V4.3.3 文档](https://www.oceanbase.com/docs/common-oceanbase-database-cn-1000000001429044)；备份任务历史视图（CDB_OB_BACKUP_JOB_HISTORY，V4.0.0 引入）：[V4.4.0 视图总览](https://www.oceanbase.com/en/docs/common-oceanbase-database-cn-1000000003380496)
   - backup_dest 配置项（4.x 新增，统一基线备份与日志归档路径）：<https://www.oceanbase.com/docs/common-oceanbase-database-cn-1000000000642179>；SET DATA_BACKUP_DEST（用户租户配置备份目的端、sys/Meta 租户不支持备份恢复）：[V4.3.0](https://www.oceanbase.com/docs/common-oceanbase-database-cn-1000000000642988)；SET LOG_ARCHIVE_DEST：[V4.3.4](https://www.oceanbase.com/docs/common-oceanbase-database-cn-1000000001577166)
   - 查看 Locality（DBA_OB_TENANTS 的 LOCALITY/PRIMARY_ZONE 字段）：[V4.3.0 文档](https://www.oceanbase.com/docs/common-oceanbase-database-cn-1000000000640371)、[修改租户属性 V4.2.5](https://www.oceanbase.com/docs/common-oceanbase-database-cn-1000000001499849)；Locality 介绍（DBA_OB_ZONES 的 REGION/IDC 字段）：[V4.3.0 文档](https://www.oceanbase.com/docs/common-oceanbase-database-cn-1000000000639949)
   - 查看集群配置项（SHOW PARAMETERS 与 GV$OB_PARAMETERS 视图口径）：[V4.2.1 文档](https://www.oceanbase.com/docs/common-oceanbase-database-cn-1000000000218342)；设置参数（sys 租户 TENANT 关键字、普通租户权限边界）：[V4.5.0 文档](https://www.oceanbase.com/docs/common-oceanbase-database-cn-1000000004476346)
   - 查看租户会话（GV$OB_PROCESSLIST）：[V4.0.0 文档](https://www.oceanbase.com/docs/common-oceanbase-database-cn-10000000000901651)
   - OBD 集群命令组（obd cluster deploy/start/list/display，deploy name 为部署配置别名）：[社区版 OBD 文档](https://www.oceanbase.com/docs/community-obd-cn-10000000001031933)
   - OceanBase 产品版本生命周期（LTS/LDS 定义、V4.2.1/V4.2.5/V4.3.5/V4.4.2 的 EOS/EOES 日期、生命周期表已无 V4.1 条目）：[知识库](https://www.oceanbase.com/knowledge-base/oceanbase-database-1000000001497334)；升级路径（V4.1 可直接升级至 V4.4.2）：[升级概述 V4.2.5](https://www.oceanbase.com/docs/common-oceanbase-database-cn-1000000001502708)；版本发布记录：<https://www.oceanbase.com/product/oceanbase-database-rn/releaseNote>
   - 配置时钟源（集群多节点与 OCP 节点须配置 NTP/chrony、时钟偏差 100ms 以内）：[企业版文档](https://www.oceanbase.com/docs/enterprise-oceanbase-database-cn-10000000000944271)；选举协议依赖时钟同步：[知识库](https://www.oceanbase.com/knowledge-base/oceanbase-database-20000000165)

命令核验说明：本文命令于 2026-09-03 逐条对照 www.oceanbase.com/docs 官方文档（社区版 4.x 中文文档为主，企业版页面用于标注能力差异）联网核验。OceanBase 兼容 MySQL 模式租户语法（mysql.user、SHOW GRANTS、validate_password 变量、wait_timeout 等），但**配置项（show parameters）与系统变量（show variables）是两套对象，不得互查**；口令复杂度、失败处理、SSL、SQL 审计开关、TDE 等均为 OceanBase 自有名称与默认值，严禁照搬 MySQL 原生参数口径（如 MySQL 的 have_ssl、general_log、binlog 系列均不适用）。模式与版本差异：社区版仅 MySQL 模式租户，原生安全审计（AUDIT/ORAAUDITOR）与 DBA_USERS 视图仅企业版 Oracle 租户适用；obclient 无 --ssl-mode 选项，TLS 以 --ssl 系列选项控制。未能核验而删除或改写的内容：SELECT DBVERSION 等未能在官方文档核验的视图未收录；OB 无内置客户端 IP 白名单配置项，来源限制改以 user@host 与网络层策略口径表述；DBA_OB_SERVERS、ob_compatibility_mode、账户级锁定字段（mysql.user 的 account_locked 列）等未逐项核验，未收录；connection_control 触发行为按官方"连接延迟"口径表述，未写成账户锁定；standby 备库、Oracle 租户 Profile 口令策略等未能核验，仅提示以现场版本官方文档为准。版本差异提示：各默认值（validate_password 系列全关、default_password_lifetime=0、connection_control=0、wait_timeout=28800、ob_sql_audit_percentage=3、tde_method=none、ssl_enabled=False）以 4.2.x/4.3.x 文档核验，现场判定一律以 SHOW PARAMETERS/SHOW VARIABLES 实测输出为准。

## 关联文章

- 分册目录：[数据库测评命令](../)
- 同系列分册：[01、MySQL](01-mysql/) / [12、TiDB](12-tidb/)
- 配套加固：[17、加固方案总纲](../../../../reinforce/其他系统或设备/17网络设备安全设备服务器数据库和应用系统的加固方案/)
- 取证记录：[16、安全评估加固记录表3.0](../../../../reinforce/其他系统或设备/16安全评估加固记录表3.0/)
- 高风险口径：[22、高风险判定指引与加固对照表](../../../../reinforce/其他系统或设备/22高风险判定指引与加固对照表/)
