# 工具管理说明

腾讯云代码分析平台目前已集成众多自研、知名开源工具，并采用分层分离的架构，可以快速对接企业内部团队研发的工具，并将其集成到平台内供企业内部团队使用，满足快速自助的管理工具。

- 按工具来源划分，工具包含**平台提供**的工具，以及**团队接入**的工具。

  **平台提供工具**：由腾讯云代码分析平台提供的一系列自研、知名开源工具，此类工具都为公开工具，任何团队都可以使用此工具及工具规则进行代码分析。

  **团队接入**：由团队自行接入的工具，默认该工具仅能在团队内使用，如需跨团队使用或任何团队都可以使用需联系平台管理员进行配置。

- 按工具使用划分，工具包含**可自定义规则工具**、**可使用工具**两种。

  **可自定义规则工具**：该工具任何团队都可以使用，且该工具可以支持添加团队所需的自定义规则。如`RegexScan`工具，各个团队都可以使用该工具提供的规则，也可以自定义规则，此自定义规则团队隔离。

  **可使用工具**：该工具团队内可使用，但不能添加自定义规则

::: tip
目前开源版仅**`RegexFileScan`、`RegexScan`、[TCA-Armory-R](../代码检查/工具/TCA-Armory-R.md)**等三款工具支持用户自定义规则

需平台管理员在**后台管理**-**工具管理**中找到对应工具，并将其权限状态调整为**支持自定义规则**。
:::

## 自定义工具
### 工具白名单
默认自定义工具只能当前团队内使用，添加 `工具白名单` 后可以让其他团队使用。

## 使用场景说明

::: tip
添加工具、添加工具规则、添加自定义规则等均需团队内管理员可操作。分析。
:::

---

【用户 A1】【用户 A2】为【团队 O1】的管理员，【用户 A3】为【团队 O2】的普通成员。

【用户 B1】【用户 B2】为【团队 O2】的管理员，【用户 A3】为【团队 O2】的普通成员。

### 场景 1

- 【用户 A1】在工具管理页面添加了【工具 T1】，该工具为团队内工具； -【用户 A1】【用户 A2】均可操作该工具，如修改工具信息、添加工具规则等，【用户 A3】仅可以使用该工具，如在规则配置页面添加该工具规则；

- 由于【工具 T1】目前仅【团队 O1】可用，【团队 O2】中无法看到此工具，即【团队 O2】内的成员无法使用该工具。
- 如需【工具 T1】也让【团队 O2】使用有两种解决方法：1. 【工具 T1】将【团队 O2】加入使用白名单；2. 向平台发起申请，由平台管理员将【工具 T1】调整为全部团队都可使用。

### 场景 2

- 【用户 A3】在工具管理页面发现了可自定义规则的工具，如`正则工具 RegexScan`，进入工具-自定义规则栏，发现没有添加规则的入口；
- 由于【用户 A3】仅为普通成员权限，因此无法添加规则，此时需要【团队 O1】的管理员才能操作；
- 添加【自定义规则 R1】完成后，团队内全部成员均可使用该自定义规则，如在规则配置页面添加该自定义规则；
- 由于【自定义规则 R1】是团队隔离的，即【团队 O1】创建的自定义规则，在【团队 O2】中并看不到，且无法使用该规则；
- 如需【自定义规则 R1】也让【团队 O2】使用，则仅能向工具方发起申请，由工具方将该自定义规则调整为工具规则。
