Skip to content
KitploitKITPLOIT
工具漏洞利用博客
Log in
提交
工具漏洞利用博客
提交

黑客、渗透测试和网络安全工具,武装您的安全武器库!

Kitploit 是一个黑客、网络安全和渗透测试工具的目录。发现最新的项目更新,查找漏洞、分析系统、自动化测试并加强你的安全。

订阅源联系隐私© 2026 Kitploit

工具目录

分类

查看所有分类
Loading categories
isms-builder — 自托管的信息安全管理体系 — ISO 27001、NIS2、GDPR/DSGVO、BSI IT-Grundschutz | Kitploit
工具/GitHubGitHub/coolstartnow/isms-builder
学习与教育事件响应精选资源学习路径与课程
GitHubcoolstartnow/isms-builder

isms-builder

自托管的信息安全管理体系 — ISO 27001、NIS2、GDPR/DSGVO、BSI IT-Grundschutz

查看仓库网站
20447381个月前Kitploit 审核通过

最受欢迎

查看全部 →

发现我们社区最常用的工具。

探索所有工具

浏览我们的工具集合

查看所有工具 →
分享
<!-- © 2026 Claude Hecker — ISMS Builder V 1.40.3 — AGPL-3.0 -->
![ISMS Builder Banner](https://assets.kitploit.com/production/public/readmes/12462/26d3b00b65a4f94cc34514132f1ee5f5c9036e45516880da99fb9501dd79bead.png)
# ISMS Builder

**自托管信息安全管理体系 — 开源,无需云服务**

[![CI](https://github.com/coolstartnow/isms-builder/actions/workflows/ci.yml/badge.svg)](https://github.com/coolstartnow/isms-builder/actions/workflows/ci.yml)
[![Tests](https://img.shields.io/badge/tests-423%20passing-brightgreen)](https://github.com/coolstartnow/isms-builder/actions)
[![License: AGPL-3.0](https://img.shields.io/badge/License-AGPL--3.0-blue.svg)](LICENSE)
[![Node.js](https://img.shields.io/badge/Node.js-18+-339933?logo=node.js&logoColor=white)](https://nodejs.org)
[![Version](https://raw.githubusercontent.com/coolstartnow/isms-builder/HEAD/docs/badges/version.svg)](CHANGELOG.md)

📖 **[Wiki](https://github.com/coolstartnow/isms-builder/wiki)** — Docker 镜像使用与
环境变量、架构与模块、常见问题、参与贡献(德语/英语)

<!-- GDPR NOTE: The four badges above (CI, Tests, License, Node.js) load resources
     from external servers (github.com, shields.io/Cloudflare, img.shields.io).
     When this README is rendered in a browser, these requests transmit the viewer's
     IP address to third parties (incl. US-based servers — GDPR Art. 44 ff.).
     For 100% GDPR-compliant self-hosted documentation, replace these four badge
     lines with their local equivalents from docs/badges/ or remove them entirely. -->

---

> ## ⚠️ 安全警告:传播恶意软件的虚假仓库和副本
> ISMS Builder **没有打包的“发行版”、安装程序或可下载的 ZIP 文件** — 唯一
> 合法来源是本仓库,直接从 GitHub 克隆或下载为纯
> 源代码。我们已知至少有一个**冒充本项目的恶意仓库**
> (虚假 README、虚假“下载”按钮,链接到一个伪装成截图的 ZIP,其中包含
> Windows 恶意软件加载器 — `.cmd` → `.exe` → Lua-DLL 载荷链)。**请勿从本仓库以外的任何地方下载或运行任何
> “isms_builder” ZIP/安装程序/exe。**
> 如果你发现冒充本项目的可疑仓库或网站,请提交
> [issue](https://github.com/coolstartnow/isms-builder/issues) 或
> [discussion](https://github.com/coolstartnow/isms-builder/discussions),以便我们标记它。

---

> **状态:积极开发中 — 尚未成为成品。**
> 核心模块已可运行并正在使用,但部分功能尚未完成,
> 平台仍在成长。非常欢迎贡献、反馈和真实环境
> 测试 — 这正是本项目开源的原因。

---

> 🛡️ **相关项目:[NIS2 Quick-Check](https://github.com/coolstartnow/nis2-quickcheck)** —
> 一个免费、独立的 NIS2 自检工具(10 个领域 × 5 个问题,覆盖全部 27 个欧盟成员国、全部 24 种
> 欧盟官方语言)。完全在浏览器中运行,无后端,无需安装。它不属于
> ISMS Builder,也不是使用 ISMS Builder 的必要条件 — 只是一个用于快速初步定位的配套工具。

---

## 什么是 ISMS Builder?

ISMS Builder 是一个用于管理信息安全管理体系(ISMS)的**自托管 Web 平台**。
它覆盖完整的合规生命周期 — 从策略编写到审计证据 — 适用于 ISO 27001:2022、NIS2、GDPR/DSGVO、BSI IT-Grundschutz 及其他框架。

**无云服务。无 SaaS 费用。你的数据留在你的服务器上。**

> 专为需要真正 ISMS 工具但又不想承担五位数供应商合同的中小企业、IT 团队和顾问而设计。

---

## 预期用途与范围

本项目最初是作为单个 ISMS 从业者的工作工具,并由此发展而来。它
开源是因为这项工作可能对他人有用 — 而不是因为它是一个伪装的商业产品。
明确说明这一点有助于你判断它是否适合你的情况。

**它的构建目标。** 一个小型 ISMS 团队 — 通常是一个人,有时是少数几个人 — 负责
编写和维护管理体系的文档:策略、风险、资产、
控制措施、证据。*需要账户*的人数预计会保持较少。
覆盖大量受众无需账户即可实现:策略确认以
基于令牌的链接发送,因此接收者无需登录即可阅读并确认文档,
也不会出现在任何用户列表中。

**它对你的期望。** ISMS Builder 是自托管的,由此产生的一切都由你负责:
部署、TLS、加固、备份、更新、访问控制,以及你存储于其中的任何内容所涉及的数据保护
义务。本项目提供合理的默认配置,
而不是托管服务。

**它不是什么。** 没有托管 SaaS 产品、没有商业支持合同,也没有
服务级别协议。它不是多租户托管产品。它不会让你获得任何标准的认证,
也不是法律建议 — 它帮助你组织和证明工作,
但评估仍然由你和你的审计师负责。

**谁维护它。** 一个人,在全职工作之外维护。Issue 和讨论会被阅读并
回复,通常在几天内;安全报告会被优先处理。欢迎功能请求,它们
确实会影响路线图,但要在有限的晚间时间中竞争。如果你的组织依赖
固定时间表或保证响应,诚实的建议是选择商业供应商 —
这不是避免本项目的理由,只是现实规划的理由。

---

## 截图

| 登录 | 仪表板 |
|---|---|
| ![Login](https://assets.kitploit.com/production/public/readmes/12462/dad90b27558016928f149aa956d5b5ecef78f7639fe00117fa6e7b6b9c610884.png) | ![Dashboard](https://assets.kitploit.com/production/public/readmes/12462/ad427999a2d247f7b486faff089572c213b6bf809d64946438305c1519e54566.png) |

| 适用性声明 | 风险管理 |
|---|---|
| ![SoA](https://assets.kitploit.com/production/public/readmes/12462/19133912a32d643c4db93e977047aa6f93cc85889555a63dc29b986f5290d196.png) | ![Risks](https://assets.kitploit.com/production/public/readmes/12462/19133912a32d643c4db93e977047aa6f93cc85889555a63dc29b986f5290d196.png) |

| GDPR 与数据保护 | 资产管理 |
|---|---|
| ![GDPR](https://assets.kitploit.com/production/public/readmes/12462/453b4e84b6c08241d87e8edd96d803a68b5d56565aee2b317444f30db8d9ffb5.png) | ![Assets](https://assets.kitploit.com/production/public/readmes/12462/053332b35c995bc3a672be7bfd193ca3789f3245e7cdffaa456833fabdec309e.png) |

| 指南与文档 | 报告 |
|---|---|
| ![Guidance](https://assets.kitploit.com/production/public/readmes/12462/2eb44e0df23e8eba8d70e09a14a18028d1d9dc37e8e734d0c837f2b7fe6ec787.png) | ![Reports](https://assets.kitploit.com/production/public/readmes/12462/765395a2a3cf39ec72a00ad53df464bc79d54a69ca34738bdeb775ff7e1584f3.png) |

> 运行 `npm start` 并打开 `https://localhost:3000`,在本地探索完整的演示数据集。

---

## 功能概览

| 模块 | 描述 | 标准 |
|---|---|---|
| **策略管理** | 模板 CRUD、版本控制、生命周期(草稿 → 审查 → 批准 → 归档)、空间层级、附件 | ISO 27001 §5 |
| **适用性声明** | 跨 8 个框架的 313 项控制措施、内联编辑、差距分析、交叉映射 | ISO 27001 A / BSI / NIS2 / EUCS / EUAI / ISO 9001 / CRA |
| **风险管理** | 风险登记册、处置计划、审计员角色 | ISO 27001 §6.1 |
| **安全目标** | 带进度条的 KPI 跟踪、日历集成 | ISO 27001 §6.2 |
| **GDPR 与隐私** | VVT、AV 合同、DSFA、TOM、DSAR 队列、72 小时计时器、带电子邮件警报的删除日志 | DSGVO Art. 13–35 |
| **资产管理** | 资产登记册、可编辑资产类型、保护目标(CIA + 真实性)及依赖继承、分类级别、EoL 跟踪 | ISO 27001 A.5.9–5.12 |
| **BCM / BCP** | 业务影响分析、连续性计划、演练 | ISO 27001 A.5.29–5.30 / NIS2 |
| **培训记录** | 培训目录、完成情况跟踪、证书上传 | ISO 27001 A.6.3 |
| **供应商管理** | 供应商登记册、审计安排、风险评估 | ISO 27001 A.5.19–5.22 |
| **法律与合同** | 合同、NDA、隐私政策、到期日历 | |
| **事件收件箱** | CISO 收件箱 + **公开报告表单**(无需登录) | NIS2 / BSI |
| **治理** | 管理评审、行动跟踪 | ISO 27001 §9.3 |
| **报告** | 合规矩阵(控制措施 × 实体)、差距报告、审查周期、CSV 导出 | |
| **审计发现** | 发现登记册(IST→SOLL→风险→建议)、行动计划、严重性/状态跟踪、FIND-YYYY-NNNN 编号 | ISO 27001 §9.2 |
| **可追溯性** | 每条记录都链接到 SoA 控制措施 + 策略文档 — 双向 | |
| **语义搜索** | 通过 Ollama(nomic-embed-text)进行本地 AI 搜索,并带有关键词回退 | |
| **多实体** | 公司结构树、控制措施和策略的按实体适用性 | |
| **多语言 UI 与演示数据** | 完整 UI 和演示内容支持 🇩🇪 DE / 🇬🇧 EN / 🇫🇷 FR / 🇳🇱 NL;管理员控制可用语言 | |

---

### ⚠ 重要:ISO 控制措施需要管理员手动安装

> **ISO 27001:2022、ISO 9000:2015 和 ISO 9001:2015** 是受版权保护的标准,由
> 国际标准化组织(ISO,© ISO)发布。控制措施定义
> (标题、描述、要求文本)**不包含**在本软件中,且**不得**
> 在没有有效 ISO 许可证的情况下再分发。

**这在实践中意味着什么:**
ISO 27001、ISO 9000 和 ISO 9001 的 SoA 模块不附带控制措施内容。
管理员**必须手动导入**控制措施,这些框架才可使用:

1. 从 [iso.org](https://www.iso.org/) 或授权的国家机构获取标准的许可副本
2. 准备一个包含你的控制措施定义的 JSON 文件(格式记录在 `scripts/import-iso-controls.sh` 中)
3. 运行导入脚本:   ```bash
   bash scripts/import-iso-controls.sh path/to/iso-controls.json
   ```
4. 重启 ISMS Builder 服务器

> **开箱即用的框架(无需 ISO 许可证):**
> BSI IT-Grundschutz、EU NIS2、EUCS、EU AI Act 和 CRA 基于公开可用的
> 欧盟法规和德国联邦出版物,已完全预装。

在没有相应标准有效许可证的情况下操作 ISO 框架模块,其
全部责任由操作者承担。ISMS Builder 项目及其贡献者对未经许可使用
ISO 受保护内容不承担任何责任。

---

## 快速开始```bash
git clone https://github.com/coolstartnow/isms-builder.git
cd isms-builder
npm install
cp .env.example .env          # set JWT_SECRET to a long random string
npm start                     # http://localhost:3000
```
使用 **`[email protected]` / `adminpass`** 登录。首次登录时,系统会提示你选择**演示数据语言**(🇩🇪 DE / 🇬🇧 EN / 🇫🇷 FR / 🇳🇱 NL),或以空系统开始。登录后请立即修改管理员密码。

用于生产环境的 HTTPS 部署:```bash
# .env
JWT_SECRET=your-very-long-random-secret
STORAGE_BACKEND=json
SSL_CERT_FILE=/etc/ssl/certs/your.crt
SSL_KEY_FILE=/etc/ssl/private/your.key
```
**在评估演示数据后准备正式上线?** 请运行交互式生产准备工具,而不是从全新安装开始——它会逐模块(或一次性全部)清除演示/测试内容,这样您已经录入的任何真实数据(例如风险、资产)就无需重新输入:```bash
bash stop.sh
node scripts/prepare-production.js
bash start.sh
```
它总是在更改任何内容之前创建一个备份(`data.bak.<timestamp>/`,位于你的 `data/` 目录旁边),并且从不触碰 `STORAGE_BACKEND` —— 这与应用内的“Demo Reset”管理操作不同,后者是为演示实例设计的,并且出于历史原因仍然会切换到 `sqlite`(参见 [Issue #42](https://github.com/coolstartnow/isms-builder/issues/42))。

---

## Docker

每个版本都会作为 GitHub Package 发布在 GitHub Container Registry 中,适用于
`linux/amd64` 和 `linux/arm64` —— 标记为 `:latest` 和 `:<version>`(例如 `:1.37.5.2`):```bash
docker compose up -d
# App runs at http://localhost:3000
```
或者不使用 Compose(`data/` 必须是绑定挂载——数据永远不会烘焙到镜像中):```bash
docker run -d --name isms-builder -p 3000:3000 \
  -e JWT_SECRET="$(openssl rand -hex 32)" \
  -v "$PWD/data:/app/data" \
  ghcr.io/coolstartnow/isms-builder:latest
```
这是默认方式,将数据以纯 JSON 文件的形式存储在 `./data` 中——完全不需要数据库容器。这是小型团队推荐使用的配置,也是上面两条命令所采用的方式。

**改用 PostgreSQL(或 MariaDB)代替 JSON。** 该镜像开箱即支持这种方式,但与上面的 JSON 配置不同,它需要一个额外的容器(即实际的数据库),再加上一些环境变量来告诉应用如何连接它。如果你只是拉取了镜像本身(`docker pull ghcr.io/coolstartnow/isms-builder`)而从未克隆过此仓库,那么这些变量名默认在任何地方都不可见——记录它们的 `docker-compose.yml` 和 `.env.example` 是此 Git 仓库中的文件,而不是镜像的一部分。本节的存在就是为了让这些信息不再只是仓库里的秘密。

`isms-builder` 镜像本身从不捆绑数据库服务器——`postgres:17`(或 `mariadb:11`)是来自 Docker Hub 的完全通用、空白的数据库引擎,对本项目的表结构一无所知。那些表(风险、资产、SoA 控制项等)会在应用启动并发现空数据库的那一刻由应用自身自动创建——无需手动导入 SQL,也无需单独运行迁移步骤。如果你想了解完整的机制,请参阅下面的“数据库模式是如何创建的?”。

两个容器,一个共享的 Docker 网络,然后告诉应用在哪里找到数据库:```bash
# 1) An isolated network so the two containers can reach each other by name
docker network create isms-net

# 2) The database — empty until the app first connects and creates its tables
docker run -d --name isms-postgres --network isms-net \
  -e POSTGRES_DB=isms_builder \
  -e POSTGRES_USER=isms \
  -e POSTGRES_PASSWORD="$(openssl rand -hex 16)" \
  -v isms-postgres-data:/var/lib/postgresql/data \
  postgres:17-alpine

# 3) The app, pointed at that database by container name (isms-postgres) via
#    Docker's built-in DNS on the shared network — no host/port juggling needed
docker run -d --name isms-builder --network isms-net -p 3000:3000 \
  -e JWT_SECRET="$(openssl rand -hex 32)" \
  -e STORAGE_BACKEND=postgres \
  -e DB_HOST=isms-postgres \
  -e DB_PORT=5432 \
  -e DB_USER=isms \
  -e DB_PASS="<same password as POSTGRES_PASSWORD above>" \
  -e DB_NAME=isms_builder \
  ghcr.io/coolstartnow/isms-builder:latest
```
各变量的含义:

| 变量 | 用途 |
|---|---|
| `STORAGE_BACKEND` | `postgres`(或 `pg`)用于 PostgreSQL,`mariadb` 用于 MariaDB/MySQL。留空(或 `json`)则使用默认的 JSON 配置。 |
| `DB_HOST` | 数据库容器的主机名。在共享 Docker 网络中,这仅仅是容器的 `--name` —— Docker 会自动解析它。 |
| `DB_PORT` | PostgreSQL 为 `5432`,MariaDB 为 `3306`。 |
| `DB_USER` / `DB_PASS` / `DB_NAME` | 必须与你在数据库容器上设置的值一致(上面的 `POSTGRES_USER`/`POSTGRES_PASSWORD`/`POSTGRES_DB`,或 MariaDB 的对应变量)。 |

对于 MariaDB,将 `postgres:17-alpine` 替换为 `mariadb:11`,在步骤 2 中使用其 `MARIADB_DATABASE` /
`MARIADB_USER` / `MARIADB_PASSWORD` 变量,并在步骤 3 中设置 `STORAGE_BACKEND=mariadb` /
`DB_PORT=3306`。本项目所理解的所有环境变量的完整交叉引用列表——包括此处未涵盖的变量(SSL、反向代理信任、SMTP、
2FA 等)——位于本仓库的 [`.env.example`](https://github.com/coolstartnow/isms-builder/blob/main/.env.example) 中。

Compose 用户无需额外操作即可获得此功能:`docker-compose.yml` 已经提供了 `mariadb` 和 `postgres`
服务配置文件(默认被注释掉,旁边附有等效的环境变量说明)——
`docker compose --profile postgres up -d` 会自动启动两个容器并将它们连接在一起,
无需手动配置网络或复制粘贴密码。

**数据库模式是如何创建的?** `postgres:17` 和 `mariadb:11`
镜像对本项目一无所知——它们只是来自 Docker Hub 的通用、空数据库引擎。没有 SQL 转储文件需要导入,也没有单独的迁移命令需要手动运行。
相反,当 `isms-builder` 容器启动并连接到一个空数据库时,其自身的应用程序代码(而非数据库镜像)会即时创建它所需的所有表——参见
[`server/db/knexDatabase.js`](https://github.com/coolstartnow/isms-builder/blob/main/server/db/knexDatabase.js):一个表定义列表,每个表都用 `hasTable()` 检查,如果缺失则用 `createTable()` 创建,所有这些都在应用开始接受 HTTP 请求之前完成。这使其具有幂等性——首次启动从零构建完整模式,之后针对同一数据库的每次重启都是静默无操作,因为表已经存在。这是相同的机制,未经修改,已在 SQLite、MariaDB 11 和 PostgreSQL 17 上进行了实时验证(参见 [#70](https://github.com/coolstartnow/isms-builder/issues/70))。

要从源代码构建,请取消注释 `docker-compose.yml` 中的 `build:` 块,然后运行
`docker compose up -d --build`。

镜像带有签名的构建来源证明:```bash
gh attestation verify oci://ghcr.io/coolstartnow/isms-builder:latest --owner coolstartnow
```
---

## 环境要求

- **Node.js 18+**(已测试:18、20、22)
- npm 9+
- (可选)Docker + Docker Compose
- (可选)[Ollama](https://ollama.ai) 用于本地 AI 语义搜索

---

## 配置(`.env`)

| 变量 | 默认值 | 描述 |
|---|---|---|
| `JWT_SECRET` | *(必填)* | 用于 JWT 签名的密钥 — 请使用 32 位以上随机字符 |
| `PORT` | `3000` | HTTP/HTTPS 监听端口 |
| `STORAGE_BACKEND` | `json` | `json`(开发/演示)或 `sqlite`(生产环境) |
| `SSL_CERT_FILE` | — | TLS 证书路径 → 启用 HTTPS |
| `SSL_KEY_FILE` | — | TLS 私钥路径 |
| `DATA_DIR` | `./data` | 覆盖数据目录(Docker 卷) |
| `SMTP_HOST` | — | 用于邮件告警的 SMTP 服务器 |
| `SMTP_PORT` | `587` | SMTP 端口 |
| `SMTP_USER` | — | SMTP 用户名 |
| `SMTP_PASS` | — | SMTP 密码 |
| `SMTP_FROM` | — | 通知的发件人地址 |

---

## 架构```
server/
  index.js          — Express app setup, router mounts
  auth.js           — JWT auth, RBAC ranks, session
  routes/           — 17 Express route modules (one per domain)
  db/               — Data stores (jsonStore / sqliteStore / orgSettingsStore / …)
  ai/               — Semantic search (embedder, embeddingStore, lexicalSearch)
  reports.js        — Report generation logic
ui/
  index.html        — SPA shell (Atlassian Dark Theme)
  app.js            — All render functions, ~6000 lines vanilla JS
  style.css         — CSS variables, dark theme
data/               — JSON files / SQLite DB (gitignored)
docs/
  ISMS-build-documentation.md  — Full architecture reference
  architecture/                — C4 diagrams, data model, OpenAPI 3.0.3 spec
tests/              — Jest + Supertest (176 tests, --runInBand)
```
- **认证:** JWT cookie(`sm_session`)、bcrypt 密码、TOTP 双因素认证(可强制全组织启用)
- **RBAC:** `reader` → `editor` / `dept_head` → `contentowner` / `auditor` → `admin`
- **持久化:** JSON 文件(默认/演示)或通过 `better-sqlite3` 使用 SQLite
- **AI:** 可选的本地 Ollama(nomic-embed-text);关键词搜索始终作为回退方案可用
- **审计日志:** 记录每次创建/更新/删除/登录操作,可筛选、可导出

参见 [`docs/architecture/`](https://github.com/coolstartnow/isms-builder/blob/main/docs/architecture) 获取 C4 图、完整数据模型和 OpenAPI 3.0.3 规范(80+ 端点)。

---

## 运行测试

> **注意:** `tests/` 下的测试套件是作者的个人开发测试,随项目一同发布以保持透明度。它**不是**应用程序本身的一部分,运行应用**不需要**它。这些测试覆盖内部 API 行为,并使用仅存在于隔离测试环境中的硬编码测试凭据——它们与任何生产或演示数据无关。```bash
npm test                  # runs all 423 tests
npm run preflight         # exactly what CI gates on (tests + pinning + audit)
npm test -- --verbose     # with test names
```
测试使用隔离的临时目录——不会触及任何生产数据。

---

## 贡献

非常欢迎贡献!请参阅 [CONTRIBUTING.md](https://github.com/coolstartnow/isms-builder/blob/main/CONTRIBUTING.md) 了解:

- 开发环境搭建(5 分钟即可完成首次测试运行)
- 代码风格与约定
- 如何提交高质量的 issue 或 PR

**发现安全问题?** 请不要公开提交 issue——请使用
[私密漏洞报告](https://github.com/coolstartnow/isms-builder/security/advisories/new)。
[SECURITY.md](https://github.com/coolstartnow/isms-builder/blob/main/SECURITY.md) 说明了范围、安全港条款以及可以合理预期的事项。

**适合新手的问题** 在 issue 跟踪器中标记为 [`good first issue`](https://github.com/coolstartnow/isms-builder/issues?q=label%3A%22good+first+issue%22)。

---

## 路线图

| 状态 | 功能 |
|---|---|
| ✅ 已完成 | 语义搜索(Ollama / nomic-embed-text) |
| ✅ 已完成 | SQLite 后端、Docker、CI/CD |
| ✅ 已完成 | GDPR 删除日志邮件告警 |
| ✅ 已完成 | 多语言演示包(DE / EN / FR / NL) |
| ✅ 已完成 | 审计发现模块,含行动计划(V 1.37.2.0) |
| ✅ 已完成 | FR/NL 指南翻译 + 管理员语言配置(V 1.37.2.0) |
| ✅ 已完成 | MariaDB/MySQL 后端(`STORAGE_BACKEND=mariadb`,V 1.37.2.1) |
| ✅ 已完成 | 扫描器 → 风险草稿(Greenbone/OpenVAS XML + PDF 导入,V 1.37.2.0) |
| ✅ 已完成 | 策略确认——员工以数字化方式确认策略,并保留审计追踪(V 1.37.2.0) |
| ✅ 已完成 | 指南 CRUD——创建、编辑并上传自己的文档(V 1.37.2.0) |
| ✅ 已完成 | 指南搜索——跨类别全文搜索,带摘录(V 1.37.2.0) |
| ✅ 已完成 | 资产保护目标——CIA + 真实性(1–4)、依赖关系以及 BSI 最大原则继承(V 1.37.2.0) |
| ✅ 已完成 | NIS2 第 21 条治理检查清单(30 项)和第 23 条报告截止日期,带自动告警(V 1.37.2.0) |
| ✅ 已完成 | PostgreSQL 后端(`STORAGE_BACKEND=pg`)——与 MariaDB 使用相同的 Knex 存储层,已针对真实 PostgreSQL 17 实例验证,包括完整的 `docker compose` 路径(V 1.37.5) |
| ✅ 已完成 | ownCloud / Nextcloud 集成——已批准的策略通过 WebDAV 自动发布为 PDF,可选收藏/公开链接可见性,已针对真实 NextcloudPi 实例进行实时验证(#66,V 1.37.5.1) |
| ✅ 已完成 | 每次发布后将 Docker 镜像发布到 GitHub Container Registry(`ghcr.io/coolstartnow/isms-builder`,`linux/amd64` + `linux/arm64`,带签名的构建来源)——由 @bucherfa 贡献(#71,V 1.40.0)。维护工作量试行:如果实际维护成本超出预期,将再次移除。 |
| 🔜 下一步 | AI 策略助手——Ollama 根据标题 + 框架起草策略内容 |
| 🔜 下一步 | 定时报告——通过电子邮件发送每周/每月合规报告 |
| 🔜 下一步 | 审计日志异常检测(LLM 批处理) |
| 🚀 后续 | 定量风险评分(€ 值,受 FAIR 启发) |
| 🚀 后续 | 审计员协作门户——为审计员提供外部只读访问 |
| 🚀 后续 | 策略差距分析(LLM) |
| 🏁 V 2.x | 可配置的指南类别——管理员可定义自定义类别(例如工作流、组织文档) |

---

## 关于作者

**Claude Hecker** 在 IT 行业工作超过 35 年。在担任约 15 年 CIO 之后,他转型担任 CISO 和数据保护官(DSO/DSB)。在职业生涯中,他曾为一家大型欧洲企业设计并实施企业级 IT 基础设施和广域网连接(VPN、MPLS)——负责多个站点和司法管辖区内的可靠、安全运营。

ISMS Builder 正是源于这段经历:在现实世界中、在真实审计中、在真实监管压力下构建和维护合规的 ISMS。该工具反映的是从业者真正需要的东西——而不是产品经理认为他们需要的东西。

**为什么开源?**
中小企业应当能够使用合适的 ISMS 平台,而不必支付五位数的许可费用。无论选择哪种工具,入门投入都是实实在在的——但这一成本不应因供应商锁定或数据离开你自己的基础设施而进一步加重。本项目代表软件自由,以及你的合规数据属于你自己的原则。

---

## 标准引用声明

本软件仅为互操作性和合规管理目的引用已发布标准中的控制项标识符和简短标题。

- **ISO/IEC 27001、ISO 9000、ISO 9001** 是由国际标准化组织(ISO)发布的标准。这些标准的控制项定义**不包含**在本软件发行版中——ISO 版权不允许再分发控制项文本。用户必须自行提供 JSON 文件(见上文部分和 `scripts/import-iso-controls.sh`)。这些标准必须从 [ISO](https://www.iso.org/) 或授权的国家分销商处获取。
- **BSI IT-Grundschutz** 材料由德国联邦信息安全局(BSI)发布,可在 [bsi.bund.de](https://www.bsi.bund.de) 免费获取。
- **NIS2、CRA、EUCS、EU AI Act** 是欧盟立法法案,可通过 [eur-lex.europa.eu](https://eur-lex.europa.eu) 公开获取。

---

## 许可证

Copyright (C) 2026 Claude Hecker

本程序是自由软件,依据
[GNU Affero General Public License v3.0](https://github.com/coolstartnow/isms-builder/blob/main/LICENSE) 授权。

如果你将修改后的版本作为网络服务运行,你必须向该服务的用户提供
完整源代码(AGPL §13)。

本项目包含依据 MIT、BSD-2-Clause 和
Apache-2.0 许可证授权的第三方组件。完整的署名和许可证文本请参阅
[THIRD-PARTY-LICENSES.md](https://github.com/coolstartnow/isms-builder/blob/main/THIRD-PARTY-LICENSES.md)。
下载工具