feat: add azure key vault resource discovery
This commit is contained in:
@@ -38,7 +38,7 @@ Heicode 是一款覆盖软件生命周期的智能开发 Code 工具。它面向
|
||||
| Heicode Manager / 浏览器控制台 | 辅助控制台,负责账号与安全、客户端下载、Git/云资源绑定、Agnet 部署、任务状态总览、模型余额与用量、审计与日志查看 |
|
||||
| Agnet 平台 | 执行层,负责部署和运行子 Agnet,在任务推进过程中完成需求、开发、测试、修复、交付与部署,并回传日志、状态、事件和指标 |
|
||||
| CodeGW | 内部模型网关与计费服务,普通用户不直接进入后台 |
|
||||
| 密钥保管器 | OpenBao 实现,保存长期凭证,按审批和权限提供短期凭证租约 |
|
||||
| 密钥保管器 | Azure Key Vault 实现,保存长期凭证引用,按审批和权限提供短期访问能力 |
|
||||
|
||||
说明:Heicode 客户端是用户主体验,用户不在网页上编码。Heicode Manager 是浏览器里的辅助控制台,承担资源、部署、状态、余额、审计和下载等辅助操作。真正持续推进任务的是 Heicode 调度下的 Agnet 执行闭环,Agnet 在过程中还可以调用已授权的 SK 工具和外部能力,最终完成交付与部署并把结果回传到客户端。
|
||||
|
||||
|
||||
@@ -136,7 +136,7 @@
|
||||
| 客户端 | 主对话体验、任务推进和高危审批 |
|
||||
| Agnet 平台 | AKS 执行层 |
|
||||
| CodeGW | 模型网关与用量 |
|
||||
| OpenBao | 密钥保管器 |
|
||||
| Azure Key Vault | 密钥保管器 |
|
||||
|
||||
补充说明:
|
||||
|
||||
@@ -170,4 +170,4 @@
|
||||
- 信息密度适中,避免空泛大词。
|
||||
- 主色与 Heicode 和客户端保持一致。
|
||||
- 图片优先使用真实界面和流程,不使用无意义装饰图。
|
||||
- 首页文案避免出现 CodeGW 后台、OpenBao 控制台、模型提供方配置等内部概念。
|
||||
- 首页文案避免出现 CodeGW 后台、Azure Key Vault 控制台、模型提供方配置等内部概念。
|
||||
|
||||
@@ -12,7 +12,7 @@
|
||||
https://code.xinghanlab.com
|
||||
```
|
||||
|
||||
用户只需要登录 Heicode。普通用户不需要登录 CodeGW 后台,也不需要登录 OpenBao。
|
||||
用户只需要登录 Heicode。普通用户不需要登录 CodeGW 后台,也不需要登录 Azure Key Vault。
|
||||
|
||||
## 第一步:登录 Heicode
|
||||
|
||||
|
||||
@@ -65,7 +65,7 @@ Heicode 是一款全流程智能开发 Code 工具。它让用户输入想法,
|
||||
|
||||
讲述:
|
||||
|
||||
用户不需要直接操作 CodeGW 后台,也不需要直接管理 OpenBao。所有操作都在 Heicode 和客户端内完成。
|
||||
用户不需要直接操作 CodeGW 后台,也不需要直接管理 Azure Key Vault。所有操作都在 Heicode 和客户端内完成。
|
||||
|
||||
## Slide 5:核心能力
|
||||
|
||||
@@ -91,13 +91,13 @@ Heicode 是一款全流程智能开发 Code 工具。它让用户输入想法,
|
||||
-> Heicode Manager
|
||||
-> Agnet 平台
|
||||
-> CodeGW
|
||||
-> OpenBao
|
||||
-> Azure Key Vault
|
||||
-> Git / SK / 云资源
|
||||
```
|
||||
|
||||
讲述:
|
||||
|
||||
客户端是主体验,Manager 是辅助控制台。Agnet 平台是执行层,执行过程中可调用 SK。CodeGW 是模型网关和计费服务。OpenBao 是密钥保管器。
|
||||
客户端是主体验,Manager 是辅助控制台。Agnet 平台是执行层,执行过程中可调用 SK。CodeGW 是模型网关和计费服务。Azure Key Vault 是密钥保管器。
|
||||
|
||||
## Slide 7:安全模型
|
||||
|
||||
@@ -108,7 +108,7 @@ Heicode 是一款全流程智能开发 Code 工具。它让用户输入想法,
|
||||
要点:
|
||||
|
||||
- Heicode 服务端数据库只保存 `secret_ref`。
|
||||
- 长期密钥进入 OpenBao。
|
||||
- 长期密钥进入 Azure Key Vault。
|
||||
- 子 Agnet 只获得短期、最小权限凭证。
|
||||
- 高危操作必须在客户端审批。
|
||||
- 日志、Markdown、前端响应不包含明文密钥。
|
||||
@@ -141,7 +141,7 @@ Heicode 是一款全流程智能开发 Code 工具。它让用户输入想法,
|
||||
|
||||
> 当前 MVP 先闭环三件事
|
||||
|
||||
1. Heicode、CodeGW、OpenBao 解耦部署。
|
||||
1. Heicode、CodeGW、Azure Key Vault 解耦部署。
|
||||
2. 资源绑定、Resource Grant、manifest 和密钥保管。
|
||||
3. 客户端只登录 Heicode,只使用 Heicode 模型。
|
||||
|
||||
|
||||
@@ -26,17 +26,17 @@ Heicode 是 SaaS 产品,不能把凭证管理转嫁给用户,也不能让密
|
||||
|
||||
用户可见名称:密钥保管器。
|
||||
|
||||
技术实现:OpenBao,兼容 Vault API。
|
||||
技术实现:Azure Key Vault。生产环境中 Manager 通过 VM Managed Identity 访问 Key Vault,不在业务数据库保存明文密钥。
|
||||
|
||||
用户不需要直接登录 OpenBao,也不需要看到 OpenBao 控制台。
|
||||
用户不需要直接登录 Azure Key Vault,也不需要看到 Key Vault 控制台。
|
||||
|
||||
## Secret Broker 流程
|
||||
|
||||
```text
|
||||
用户绑定资源
|
||||
-> Heicode 接收授权结果
|
||||
-> Heicode Secret Broker 写入 OpenBao
|
||||
-> OpenBao 返回或形成 secret_ref
|
||||
-> Heicode Secret Broker 写入 Azure Key Vault
|
||||
-> Azure Key Vault 返回或形成 azkv://... 形式的 secret_ref
|
||||
-> Heicode DB 保存 secret_ref
|
||||
-> 前端只展示脱敏引用和状态
|
||||
```
|
||||
@@ -87,7 +87,7 @@ Heicode 生成 Resource Grant
|
||||
3. 禁止前端返回明文密钥。
|
||||
4. 禁止在日志中打印密钥。
|
||||
5. 禁止把长期云密钥注入子 Agnet。
|
||||
6. 禁止把 OpenBao 暴露为普通公网入口。
|
||||
6. 禁止把 Azure Key Vault 管理入口作为普通用户入口暴露。
|
||||
7. 禁止把 CodeGW key 原文交给客户端长期保存。
|
||||
|
||||
## 用户侧解释
|
||||
@@ -105,4 +105,4 @@ Heicode 生成 Resource Grant
|
||||
| 日志 | 不包含 token、password、private key、access key |
|
||||
| 子 Agnet | 不保存长期凭证 |
|
||||
| 高危操作 | 有客户端审批记录 |
|
||||
| OpenBao | 不对普通公网暴露 |
|
||||
| Azure Key Vault | 普通用户不可直接进入;Manager 仅通过受控后端身份访问 |
|
||||
|
||||
@@ -1,8 +1,8 @@
|
||||
# 07. CodeGW、OpenBao、Agnet 平台边界说明
|
||||
# 07. CodeGW、Azure Key Vault、Agnet 平台边界说明
|
||||
|
||||
## 目标
|
||||
|
||||
本文用于讲清楚 Heicode 与 CodeGW、OpenBao、Agnet 平台之间的产品和技术边界,避免再次变成缝合式系统。
|
||||
本文用于讲清楚 Heicode 与 CodeGW、Azure Key Vault、Agnet 平台之间的产品和技术边界,避免再次变成缝合式系统。
|
||||
|
||||
## 总体边界
|
||||
|
||||
@@ -10,7 +10,7 @@
|
||||
|------|----------|----------------------|
|
||||
| Heicode | 产品总入口,包含客户端主体验与 Manager 辅助控制台 | 是 |
|
||||
| CodeGW | 模型网关、模型调用、余额、额度、用量日志 | 否 |
|
||||
| OpenBao | 长期凭证保管、短期凭证租约 | 否 |
|
||||
| Azure Key Vault | 长期凭证托管、密钥引用、后端受控读取 | 否 |
|
||||
| Agnet 平台 | AKS 执行层、状态、日志、事件、指标 | 否 |
|
||||
|
||||
## Heicode 与 CodeGW
|
||||
@@ -34,20 +34,20 @@ Heicode 不做:
|
||||
|
||||
> CodeGW 是 Heicode 的模型网关和计费底座,用户在 Heicode 中查看模型和用量,不直接使用 CodeGW 后台。
|
||||
|
||||
## Heicode 与 OpenBao
|
||||
## Heicode 与 Azure Key Vault
|
||||
|
||||
Heicode 使用 OpenBao 的方式:
|
||||
Heicode 使用 Azure Key Vault 的方式:
|
||||
|
||||
- 写入用户授权后的长期凭证。
|
||||
- 保存和管理 `secret_ref`。
|
||||
- 执行密钥 health、metadata、轮换、禁用、撤销。
|
||||
- 执行密钥健康检查、metadata、轮换、禁用、撤销。
|
||||
- 为高危操作申请短期凭证。
|
||||
|
||||
Heicode 不做:
|
||||
|
||||
- 在数据库保存明文密钥。
|
||||
- 把 OpenBao token 交给前端。
|
||||
- 把 OpenBao 作为普通公网服务暴露。
|
||||
- 把 Azure Key Vault access token 交给前端。
|
||||
- 把 Azure Key Vault 管理入口作为普通用户入口暴露。
|
||||
|
||||
产品口径:
|
||||
|
||||
@@ -86,7 +86,7 @@ Heicode 不传:
|
||||
|
||||
- 长期明文密钥。
|
||||
- CodeGW key 原文。
|
||||
- OpenBao root token。
|
||||
- Azure Key Vault 管理凭据。
|
||||
- 数据库密码。
|
||||
|
||||
产品口径:
|
||||
@@ -117,7 +117,7 @@ Manager 主做:
|
||||
|
||||
- 选择模型提供方。
|
||||
- 配置 CodeGW 渠道。
|
||||
- 直接访问 OpenBao。
|
||||
- 直接访问 Azure Key Vault。
|
||||
- 直接保存长期云密钥。
|
||||
|
||||
Manager 不做:
|
||||
@@ -144,5 +144,5 @@ Heicode 到 Agnet 平台真实部署 API 的完整联调仍可延期。
|
||||
1. 普通用户只进入 Heicode。
|
||||
2. 客户端只登录 Heicode。
|
||||
3. CodeGW 独立服务运行。
|
||||
4. OpenBao 只通过受控内网或后端访问。
|
||||
4. Azure Key Vault 只通过 Manager 后端受控身份访问,普通用户不直接进入。
|
||||
5. Agnet 平台接口只收结构化上下文和 `secret_ref`,不收长期明文密钥。
|
||||
|
||||
@@ -104,7 +104,7 @@ macOS 注意:
|
||||
2. 旧登录入口。
|
||||
3. 第三方路由登录入口。
|
||||
4. CodeGW 后台入口。
|
||||
5. OpenBao 地址或 token。
|
||||
5. Azure Key Vault 地址、access token 或密钥保管器后台信息。
|
||||
6. 长期云密钥输入框。
|
||||
7. 无法解释的个人 API key 自动复制。
|
||||
|
||||
|
||||
@@ -166,7 +166,7 @@
|
||||
|
||||
1. 不展示真实密钥。
|
||||
2. 不进入 CodeGW 管理后台。
|
||||
3. 不展示 OpenBao token。
|
||||
3. 不展示 Azure Key Vault access token。
|
||||
4. 不强调底层配置复杂度,强调用户流程。
|
||||
5. 如果 Agnet 真实部署尚未联调,明确说当前展示的是 Heicode 侧 payload、manifest 和占位控制面。
|
||||
|
||||
@@ -174,4 +174,4 @@
|
||||
|
||||
话术:
|
||||
|
||||
> Heicode 是从想法到上线的智能开发工具。用户主要在客户端输入想法和继续推进任务,在 Manager 绑定 Git、文档、SK 和云资源并部署 Agnet。Heicode 生成子 Agnet 团队、角色和权限,密钥进入密钥保管器,子 Agnet 只拿短期凭证。Agnet 在执行中可以调用 SK 工具,最后完成交付与部署;CodeGW 提供模型、余额和用量,Heicode 展示日志、状态和审计。用户不需要进入 CodeGW 后台,也不需要管理 OpenBao,只在 Heicode 和客户端完成整个开发流程。
|
||||
> Heicode 是从想法到上线的智能开发工具。用户主要在客户端输入想法和继续推进任务,在 Manager 绑定 Git、文档、SK 和云资源并部署 Agnet。Heicode 生成子 Agnet 团队、角色和权限,密钥进入密钥保管器,子 Agnet 只拿短期凭证。Agnet 在执行中可以调用 SK 工具,最后完成交付与部署;CodeGW 提供模型、余额和用量,Heicode 展示日志、状态和审计。用户不需要进入 CodeGW 后台,也不需要管理 Azure Key Vault,只在 Heicode 和客户端完成整个开发流程。
|
||||
|
||||
@@ -38,7 +38,7 @@ Heicode 不以后台菜单作为主体验。建议使用顶部轻量入口和主
|
||||
- CodeGW 后台。
|
||||
- 渠道管理。
|
||||
- 模型供应商配置。
|
||||
- OpenBao 控制台。
|
||||
- Azure Key Vault 控制台。
|
||||
- 模型提供方选择。
|
||||
- 旧服务入口。
|
||||
|
||||
@@ -322,7 +322,7 @@ Heicode 只追问影响执行路径的少量问题:
|
||||
## 文案规则
|
||||
|
||||
- 用“任务上下文”或“资源上下文”,不要把主流程叫成资源管理。
|
||||
- 用“密钥保管器”,不用“OpenBao”作为普通用户标题。
|
||||
- 用“密钥保管器”,不要用具体实现名作为普通用户标题。
|
||||
- 用“客户端”,不用“本地模型提供方”。
|
||||
- 用“模型与余额”,不用“CodeGW 后台”。
|
||||
- 用“执行计划”,不用“控制面草案”。
|
||||
|
||||
@@ -334,7 +334,7 @@ Heicode 会复用之前的项目上下文、资源绑定和 Agnet 角色,生
|
||||
## 口述时不要说
|
||||
|
||||
1. 让用户去 CodeGW 后台配置模型。
|
||||
2. 让用户去 OpenBao 控制台管理密钥。
|
||||
2. 让用户去 Azure Key Vault 控制台管理密钥。
|
||||
3. 让客户端选择模型提供方。
|
||||
4. 让用户手写复杂 manifest。
|
||||
5. 把 tenant/project 当作当前产品主轴。
|
||||
|
||||
@@ -256,7 +256,9 @@ Heicode 通过服务端调用 CodeGW,并把普通用户需要的信息展示
|
||||
|
||||
### 5.5 密钥保管器
|
||||
|
||||
密钥保管器用于保存长期凭证。当前技术实现是 OpenBao。
|
||||
密钥保管器用于保存长期凭证。当前技术实现是 Azure Key Vault。
|
||||
|
||||
生产环境中 Manager 使用 VM Managed Identity 访问 Azure Key Vault。用户绑定资源后,Manager 将敏感凭证写入 Key Vault,并在 Heicode 数据库中只保存 `azkv://<vault>/secrets/<name>` 形式的 `secret_ref`。
|
||||
|
||||
它负责:
|
||||
|
||||
@@ -334,7 +336,7 @@ Heicode 判断当前任务需要哪些上下文
|
||||
用户不需要直接使用:
|
||||
|
||||
- CodeGW 后台。
|
||||
- OpenBao 控制台。
|
||||
- Azure Key Vault 控制台。
|
||||
- Agnet 平台后台。
|
||||
|
||||
用户不应该看到:
|
||||
@@ -342,7 +344,7 @@ Heicode 判断当前任务需要哪些上下文
|
||||
- 模型提供方选择。
|
||||
- 旧服务入口。
|
||||
- 明文密钥。
|
||||
- OpenBao token。
|
||||
- Azure Key Vault access token。
|
||||
- CodeGW 管理员配置。
|
||||
|
||||
## 十一、常见问题
|
||||
|
||||
@@ -14,7 +14,7 @@
|
||||
| [`04-platform-usage-guide.md`](./04-platform-usage-guide.md) | 登录平台和使用平台指南,面向真实用户上手 |
|
||||
| [`05-ppt-copy.md`](./05-ppt-copy.md) | 产品 PPT 文案,面向路演、客户介绍和团队同步 |
|
||||
| [`06-security-and-credential-management.md`](./06-security-and-credential-management.md) | 安全与凭证管理说明,解释密钥保管器、`secret_ref`、高危审批 |
|
||||
| [`07-integration-boundaries.md`](./07-integration-boundaries.md) | CodeGW、OpenBao、Agnet 平台边界说明 |
|
||||
| [`07-integration-boundaries.md`](./07-integration-boundaries.md) | CodeGW、Azure Key Vault、Agnet 平台边界说明 |
|
||||
| [`08-client-guide.md`](./08-client-guide.md) | Heicode 客户端说明,强调只登录 Heicode、只使用 Heicode 模型 |
|
||||
| [`09-demo-script.md`](./09-demo-script.md) | 5 分钟演示脚本,用于产品演示和录屏 |
|
||||
| [`10-frontend-detail-spec.md`](./10-frontend-detail-spec.md) | 前端细节说明,覆盖 Heicode 和客户端页面、组件、状态、文案规则 |
|
||||
@@ -37,7 +37,7 @@ Heicode 是一款面向全流程智能开发的 SaaS Code 工具。用户注册
|
||||
- `Heicode Manager` 是浏览器里的辅助控制台,负责账号与安全、客户端下载、Git/云资源绑定、Agnet 部署、任务状态、余额与审计。
|
||||
- 继续开发时,Heicode 会持续调用 Agnet 推进需求、开发、测试、修复和部署等子环节。
|
||||
- Agnet 在执行过程中可以调用已授权的 SK 工具,最终完成交付与部署并把结果回传给客户端和 Manager。
|
||||
- 用户侧叫 `密钥保管器`,技术实现可以说明是 OpenBao。
|
||||
- 用户侧叫 `密钥保管器`,技术实现可以说明是 Azure Key Vault;Manager 通过 VM Managed Identity 访问,不要求普通用户进入 Key Vault 后台。
|
||||
- 用户侧叫 `资源绑定`,不要叫 Git 来源。
|
||||
- 客户端不出现 `模型提供方`、`旧服务入口`、`第三方路由入口`。
|
||||
- CodeGW 是内部模型网关和计费服务,不作为普通用户产品入口。
|
||||
|
||||
Reference in New Issue
Block a user