# ShareServer PRD ## 文档信息 | 项目 | 内容 | | --- | --- | | 状态 | 设计中 | | 版本 | 0.1 | | 日期 | 2026-09-03 | | 适用产品 | 独立部署的 ShareServer 与 Web 管理控制台 | | 关联架构 | [共享网络总体设计](../../architecture/share-network-architecture.md) | | 关联文档 | [功能逻辑](./logic-design.md)、[管理界面](./ui-design.md)、[技术设计](./technical-design.md) | ## 1. 背景 局域网配对适合附近设备,但不能统一解决跨网络访问、成员离职、组织策略、集中更新、审计和 跨组织协作。ShareServer 提供一个可自建的组织控制面,让设备通过主动出站连接注册能力并 接收任务,不要求为每台桌面设备开放公网端口。 ## 2. 产品目标 1. 组织可在自有网络、私有云或公网独立部署 ShareServer。 2. 管理员可统一管理用户、组、设备、能力、权限、更新和审计。 3. 成员通过桌面端使用获准能力,无需日常进入管理控制台。 4. 设备离线、用户撤销或策略变化能准确影响新任务,不破坏历史证据。 5. 两个组织可经双边确认建立有限范围的联邦协作。 6. ShareServer 可以只运行控制面,也可按部署策略提供数据中继和包存储。 ## 3. 产品范围 ### 3.1 包含 - 本地账号及可配置 OIDC 身份源。 - 组织、成员、角色、用户组、设备组和服务账号。 - 设备注册、状态、撤销和合规元数据。 - 能力目录、Publication、Grant、强制策略和审批。 - 设备出站控制通道、任务路由、取消和可选中继。 - 签名能力包仓库、发布通道、更新策略和撤销。 - ShareServer 间双边联邦。 - 审计、用量、保留和导出。 - Web 管理控制台和成员自助页面。 ### 3.2 不包含 - 远程管理设备桌面、任意 Shell 或任意文件系统。 - 发现未注册的局域网设备。 - 保存或分发用户 API Key、Cookie 和桌面登录状态。 - 默认查看任务正文、附件和模型输出。 - 未经提供者发布自动盘点设备能力。 - 自动信任同域邮箱、同一网络或其他 ShareServer。 - 公共开放市场、计费结算或匿名能力调用。 - 替代 GoodBuddy 官方客户端、模型和 Agent 发布源。 ## 4. 功能需求 ### FR-1 实例初始化 - 首次启动通过一次性引导创建实例标识和首个系统管理员。 - 引导完成后永久关闭初始化入口,后续管理员通过正常身份流程创建。 - 实例公开描述包含名称、协议版本、登录方式和联邦端点,不包含内部拓扑。 ### FR-2 身份与组织 - 支持一个实例承载多个隔离组织,也支持部署为单组织模式。 - 支持本地账号和 OIDC;组织可限制允许的身份源。 - 成员可以属于多个组并拥有有界角色,角色不隐式跨组织。 - 停用用户立即停止签发新设备和任务凭据。 ### FR-3 设备管理 - 桌面端经用户登录、一次性挑战和设备签名完成注册。 - 设备条目显示所有者、平台、客户端版本、最近在线、连接和撤销状态。 - 设备主动建立出站控制连接;服务端不能借此调用未发布能力。 - 管理员可撤销设备并终止其新任务资格。 ### FR-4 能力目录 - 只接收已注册设备或服务节点提交的显式 Publication。 - 目录按调用者身份、设备状态、组织和策略过滤后返回。 - 支持同一能力多个版本和多个 provider,不掩盖来源。 - provider 离线时保留目录事实但显示不可用,不派发新任务。 ### FR-5 授权策略 - Grant 可绑定用户、组、设备、设备组和联邦组织。 - 可约束能力、版本、动作、输入类型、数据分类、提供者、时间、次数、并发和委托。 - 支持组织强制策略和用户可收紧偏好;拒绝优先。 - 每个决定返回稳定结果、命中策略和面向用户的原因。 ### FR-6 审批 - 调用、能力发布、权限扩大更新和联邦关系可以要求审批。 - 审批项显示申请人、对象、影响范围、数据类别、期限和策略依据。 - 批准结果有明确范围和有效期,不提供无边界“永久允许”。 - 申请内容变化后旧审批失效。 ### FR-7 任务路由 - 根据冻结 provider、在线连接和路由策略把任务声明发送给目标设备。 - 支持直连协商、网关中继和取消传播。 - 任务正文与控制元数据分离;默认审计不保存正文。 - 已接受任务断线后允许查询同一 task,不自动创建重复执行。 ### FR-8 能力包与更新 - 保存不可变签名 Package 和发布目录。 - 支持组织、组、平台、架构和维护窗口的更新策略。 - 支持固定版本、允许版本范围、暂停发布和紧急撤销。 - 权限扩大必须触发新批准,不能被普通自动更新策略覆盖。 - 包来源、大小、摘要、签名和下载结果可审计。 ### FR-9 联邦 - 两个 ShareServer 通过指纹交换和双方管理员确认建立关系。 - 双方分别配置公开能力、允许主体、数据范围、用量和期限。 - 最终权限取双方策略交集;任一端撤销后停止新任务。 - 不默认链式转发到第三个组织。 ### FR-10 审计与用量 - 记录身份、设备、发布、授权、审批、任务、包和联邦管理事件。 - 默认仅记录共享架构定义的有界元数据。 - 支持按组织隔离查询、条件筛选、分页和流式导出。 - 审计员只读,不能因查看日志取得任务正文或管理权限。 ### FR-11 管理控制台 - 提供概览、组织与成员、设备、能力目录、权限策略、审批、发布与更新、网关联邦、任务与 中继、审计、系统设置。 - 普通成员只看到自己的设备、授权和待办;管理员栏目按权限隐藏并在 API 再次校验。 - 所有高影响操作说明对象、范围和后果。 ### FR-12 可部署性 - 支持容器部署,配置与持久数据分离。 - 支持外部 PostgreSQL;对象存储和中继按功能启用。 - 提供健康、就绪、指标、结构化日志、备份和恢复说明。 - 服务升级不能要求同时升级所有在线桌面端;按协议版本协商兼容集合。 ## 5. 产品验收 - 新实例可完成初始化、登录、创建组织、邀请成员和注册真实桌面设备。 - 两个不同组织不能通过 API、搜索、计数、错误或审计结果读取对方数据。 - 设备只有发布能力后才进入获准目录,撤销后不能接收新任务。 - 调用授权能同时处理用户、设备、组织、提供者、数据和联邦限制。 - 任务中继关闭时控制面仍可运行;中继开启时可取消并形成准确终态。 - 权限扩大的包更新不能自动部署。 - 两个独立 ShareServer 能建立、使用、暂停和撤销双边联邦。 - 备份恢复后组织、策略、发布和审计身份保持一致,短期连接和令牌不恢复。