mirror of
https://github.com/hpd840321/craftlabs-authorization-sdk.git
synced 2026-06-09 18:10:30 +08:00
3894315759
Made-with: Cursor
10 KiB
10 KiB
比特授权云:机制与授权模式梳理
依据公开文档站点整理,主要页面入口:欢迎页、授权模式分类、客户端 API、授权设计与创建、基本授权过程、SDK 概述。
整理日期:2026-04-06
1. 总体机制:控制台与产品模型
比特授权云将「卖什么、怎么控、怎么发到客户端」拆成多层概念:
| 概念 | 作用 |
|---|---|
| 产品(Product) | 对应一套或一组软件;内建 特征项(功能/加密点) 与 配置项(小型安全存储,键值字符串)。 |
| 模版(Template) | 产品特征项的子集,常对应一个发行版本(如「简单版 / 专业版」)。 |
| 业务(Business) | 定义商业模式 + 授权类型(云、集团、单机浮动、演示、帐号等)及各类授权属性(有效期、终端数、离线策略等)。 |
| 授权码 SN | 16 位全球唯一标识;用户付费后发放;客户端用 SN 做激活、续期、升级。 |
集成侧:库文件与头文件与产品绑定,混用会导致 **Login 返回 0x105**(文档明确说明)。
典型流程:规划功能与模块 → 控制台建立产品与模版 → 下载对应开发模块 → 建立业务 → 生成并分发授权码 → 客户端激活与运行时校验。
1.1 保护方式与平台
- 保护方式:欢迎页 说明提供 API 与 外壳 两种;可组合使用以提高安全性。
- 平台:Windows(32/64)、Linux(含 ARM/x86)、macOS、Android、iOS 等;其它语言可通过动态库集成。
2. SDK 侧:与模式无关的共性(运行时语义)
来源:SDK 概述
| 名词 | 含义 |
|---|---|
| 资源 | 需要保护或控制的功能或数据单元。 |
| 授权 | 将资源访问权下放给设备或用户。 |
| 激活 | 将设备/用户与权限绑定(典型:在线更新许可,再登录)。 |
| 授权升级 | 增加或减少资源访问权限。 |
| 授权检查 | 检查是否拥有某资源权限。 |
| 授权文件 / License 文件 | 单机类授权保存在设备本地的许可数据。 |
| 特征项 | 与程序中「加密点 / 功能开关」对应;可有版本;类型包括只读、读写、算法、密钥等。 |
| 内存授权 | 将已有 License 传入 API 校验,无激活过程。 |
文档强调:在集团授权场景下,QueryFeature 与 ReleaseFeature 应成对调用(占用与释放模块用户数)。
示例主流程(文档 C 示例):Bit_Login(..., BIT_MODE_AUTO) → 失败则输入 SN → Bit_UpdateOnline 激活 → 再 Bit_Login → 结束 Bit_Logout。
3. 授权模式分述
文档中「本地授权」与「云授权」的区分要点:云授权 页指出,除云授权外,其它方式通常需向客户端发放与硬件指纹绑定的电子许可证,激活后往往不必再连授权服务器(云授权则运行时实时连网、授权数据不落客户端)。
3.1 云授权
- 文档:云授权
- 许可数据:始终在云端;客户端不保存完整授权数据。
- 标识:授权码 SN;文档描述为同一 SN 同一时间仅一台计算机使用。验证时上传 SN + 本机硬件指纹。
- 安全会话:验证通过后握手,用产品预置密钥派生会话密钥,后续通讯加密(文档类比网银并强调更复杂)。
- 心跳:约 每 20 分钟与服务器心跳以保持会话。
- 多进程:同一客户端同一 SN 最多 10 个进程;控制台可管理在线状态。
- 管控:授权属性变更可对在线客户端快速生效。
- 局限:运行期通常需联网;文档提及 云授权 2.0 改善依赖并支持高优先级登录、短时离线等。
- 业务属性:使用时间、次数、有效期;可设终端限制等。
3.2 单机浮动授权
- 文档:单机浮动授权
- 运行期:激活后一般不连外部授权服务器即可使用(与云授权对比)。
- 激活:客户端提交 SN + 硬件指纹,服务器验证后下发与本机绑定的本地许可;复制到其它机器不可用。
- 许可存放:本机;对比——集团授权在集团服务器,云授权在云端。
- 常见业务属性:
- 离线 vs 智能连接:完全离线,或联网时后台自动校验/升级且不打断用户。
- 强制认证:最大离线时长,到期必须再连服务器。
- 安装限制:激活次数上限(多客户端共享该次数池)。
- 终端限制:允许多少台机器激活。
- 失效与恢复:许可损坏、硬盘问题或硬件变更可致失效;可按规则重新下载许可(可能消耗安装次数或终端名额)。
3.3 集团授权
- 文档:集团授权
- 形态:开发商自建授权服务器,对局域网或互联网用户做并发控制。
- 控制台:创建业务时选择「集团授权」;可配置用户数(并发上限),默认描述为最多 999 并发。
- 服务端组件(需单独下载安装):
- 集团服务安装程序
bit_service.exe(Windows 服务),默认端口 8273(通讯)、8274(Web 管理)。 - 集团服务扩展模块(.EXT):与产品绑定,不可混用。
- 集团授权管理中心:浏览器访问,默认示例
http://localhost:8274。
- 集团服务安装程序
- 客户端:需配置集团服务器地址(API 或配置文件),参见 部署和配置客户端 等文档。
3.4 比特 ID 授权
- 文档:比特 ID 授权
- 机制:在单机授权基础上增加 USB 比特 ID 绑定;插硬件的机器才能正常使用。
- 场景:离线环境下便于带硬件换机;控制台可追踪、注销设备。
3.5 演示授权
- 文档:演示授权
- 特点:演示码可被多台客户端重复使用;有有效期(如 15–180 天);重装无法简单延长试用期;可改为正式 SN。
- 数据:激活需连授权中心,可统计演示用户量、分布等。
- 归类:文档说明为本地授权——激活后使用不必再连服务器。
3.6 帐号授权
- 文档:帐号授权
- 对象:从设备授权扩展到人/帐号,常为订阅模式。
- 集成路径:
- 库直连:
Bit_LoginByPassword(业务 GUID、密钥、帐号、密码等)。 - OIDC(文档更推荐):托管登录页取得
code→POST /oidc/token换 access_token →Bit_LoginByToken。
- 库直连:
- 实践建议:认证模块(Launchpad)与主程序分离,token 传入主程序。
4. 授权设计与特征项、配置项(摘要)
来源:授权设计与创建
- 业务可配维度(随授权类型不同而变化)包括:连接类型、强制认证周期、安装限制、有效期、集团用户数、起止日期、使用次数、终端限制等。
- 授权内容更新生效:
- 云授权:可较快反映到客户端(文档称可无需重启应用)。
- 集团 / 单机:一般在客户端下次连服务器时同步;智能连接、强制认证会影响同步时机。
- 特征项类型:只读、读写、算法、密钥等;均支持 QueryFeature / ReleaseFeature;集团场景下成对调用尤其重要。
- 配置项(Data):存配置与小数据,UTF-8;不宜替代特征项做安全控制;客户端可能有缓存,异常断电有丢失风险。
5. 模式对照表(便于与自研抽象对齐)
| 维度 | 云授权 | 单机 / 演示 / 比特 ID(本地类) | 集团授权 | 帐号授权 |
|---|---|---|---|---|
| 判定位置 | 云端实时 | 本地许可(可选定期/智能连网同步) | 集团服务器(并发) | 云端 + token/密码 |
| 长期联网 | 一般需要 | 通常不强制(依业务属性) | 依部署与策略 | 登录/刷新时需要 |
| 并发模型 | SN + 在线会话/心跳 | 终端数、安装次数等 | 并发用户数 | 订阅/帐号维度 |
| 典型标识 | SN | SN(演示码策略特殊) | SN + 服务器地址 | 帐号 / OIDC token |
6. 免责声明
本文档为对 doc.bitanswer.cn 公开页面的学习性整理,不替代原厂文档;产品行为、默认值与 API 以官方网站与最新版本为准。