DocCore SDK商业授权方案与集成指南

授权模型、功能开关、部署要求、审计条款全景

概述

DocCore SDK是深圳智数融合科技有限公司面向.NET开发者提供的商业PDF与文档智能处理工具包,涵盖文档解析、文本提取、页面渲染、OCR识别、表格检测、结构化输出等能力。作为商业软件,DocCore采用与开源库截然不同的授权模型——通过明确的授权范围、许可证管理和技术支持条款,保证客户的合规使用与智能工程文档的技术权益。本文系统介绍DocCore的授权方案、功能开关、部署注意事项、审计与合规要求,帮助客户在选型和集成过程中避免误区。

一、授权模型

DocCore采用"开发者许可 + 运行时许可 + 企业许可"三层模型。不同项目和部署规模对应不同层级:

许可类型 范围 适用场景 计价方式
开发者许可(Developer)每位开发者一个许可,仅用于开发环境研发团队内部使用,不含生产部署按开发者人数年度订阅
运行时许可(Runtime)按部署实例计算,用于生产环境公有云/私有云SaaS、桌面产品按实例/核心/用户数计费
企业许可(Enterprise)企业范围内不限用户、不限部署大型集团内部系统、多业务单元年度或多年打包价
OEM授权嵌入到客户发布的第三方产品中软件厂商、ISV按终端数或版税模式
评估许可(Evaluation)30/60天,用于评估试用采购决策前的POC免费,需申请

授权组合原则

  • 开发者许可是运行时许可的前提:任何运行时部署都需要对应的开发者做过开发许可覆盖
  • 运行时许可按实际部署计数,包括开发测试环境的容器/VM,但允许CI/CD过程中的临时构建环境
  • 企业许可是封顶方案,不限内部开发与部署数量,但不允许对外转售
  • OEM授权需单独签订合作协议,包含产品注册、使用报告、版税结算等条款

二、功能开关与模块化

DocCore SDK采用模块化架构,不同功能模块可单独授权。客户可以根据实际需求组合购买,避免为不需要的功能付费。核心模块:

模块 包含能力 典型应用
Core(核心)PDF加载、文本提取、搜索、元数据所有场景必选
Render(渲染)页面栅格化、缩略图、打印预览PDF预览、缩略图生成
VisionOCROCR识别、版面分析、表格检测扫描件文档数字化
Pipeline(流水线)批量处理、并发、重试、监控大规模文档批处理
Forms(表单)结构化字段抽取、规则引擎发票、表格、标书解析
Redact(脱敏)敏感信息识别与遮盖隐私合规、信息脱敏
Compare(比对)文档版本差异比对合同对比、标书查重

三、许可证加载与激活

DocCore SDK使用基于证书的许可证机制,证书文件由智数云科技签发,包含授权类型、有效期、允许的模块、部署限制等信息。加载许可证的标准方式:

using DocCore.Licensing;

// 方式1:从文件加载
DocCoreLicense.Activate("./doccore.license");

// 方式2:从字符串加载(适合Docker环境变量)
var licenseKey = Environment.GetEnvironmentVariable("DOCCORE_LICENSE");
DocCoreLicense.ActivateFromString(licenseKey);

// 方式3:从Azure Key Vault / 阿里云KMS加载
var licenseFromKv = await secretClient.GetSecretAsync("doccore-license");
DocCoreLicense.ActivateFromString(licenseFromKv.Value.Value);

// 方式4:联网激活(在线许可服务器)
DocCoreLicense.ActivateOnline(productKey: "PRD-XXXX-XXXX-XXXX",
    server: "https://license.zhishuronghe.com");

// 校验当前许可状态
var status = DocCoreLicense.GetStatus();
Console.WriteLine($"授权类型: {status.LicenseType}, 有效期至: {status.ExpiresAt}");
Console.WriteLine($"已激活模块: {string.Join(",", status.Modules)}");

许可证加载应当在应用启动的最早期阶段完成,推荐放在Program.cs的构建器配置之前。未激活许可的情况下调用付费功能会抛出LicenseRequiredException

四、部署模式

1. 本地部署(On-Premises)

适用于私有化数据中心、内网系统、涉密项目。许可证为离线证书,不需要访问外网。部署后在每台运行DocCore的服务器上加载相同证书。优点是无网络依赖,缺点是许可证到期或变更需要人工分发。

2. 公有云/私有云部署

按实例数计算运行时许可。DocCore支持:

  • Docker容器:镜像中不包含许可证,通过环境变量或挂载卷注入
  • Kubernetes:通过Secret或ConfigMap管理许可证
  • Azure/AWS/阿里云:可集成Key Vault/Secrets Manager/KMS
  • Serverless(Lambda/Function App):建议使用运行时激活模式,冷启动会自动加载

3. 桌面应用嵌入

将DocCore嵌入.NET桌面应用(WPF、WinForms、MAUI)时,建议采用OEM模式或开发者许可+单机运行时许可。每个安装版本对应一个许可证,通过机器指纹绑定防止非法分发。

// Docker Compose 部署示例
version: '3.8'
services:
  doc-processor:
    image: your-company/doc-processor:latest
    environment:
      - DOCCORE_LICENSE=${DOCCORE_LICENSE}
      - ASPNETCORE_ENVIRONMENT=Production
    volumes:
      - ./data:/data
    deploy:
      resources:
        limits:
          cpus: '4'
          memory: 4G

// Kubernetes Secret 示例
apiVersion: v1
kind: Secret
metadata:
  name: doccore-license
type: Opaque
stringData:
  license.key: |
    -----BEGIN DOCCORE LICENSE-----
    ...
    -----END DOCCORE LICENSE-----

五、审计与合规

1. 使用审计

DocCore SDK内置使用审计机制,记录每个API调用的基础元数据(不含文件内容),以供合规追溯。客户可以选择将审计日志导出到自有SIEM系统:

// 启用审计日志
using DocCore.Auditing;

DocCoreAudit.Configure(new AuditOptions {
    Enabled = true,
    Sink = AuditSink.File,
    FilePath = "/var/log/doccore/audit.log",
    LogLevel = AuditLevel.Invocation,
    IncludeFileMetadata = true,
    IncludeFileContent = false    // 默认不记录内容
});

// 或导出到OpenTelemetry
DocCoreAudit.AddOpenTelemetry(builder =>
    builder.AddOtlpExporter(o => o.Endpoint = new Uri("http://otel-collector:4317")));

2. 许可合规

对于企业许可和OEM许可客户,智数云科技会定期发送合规报告请求,要求客户提供:

  • 实际部署的实例数量与分布
  • 内部使用的开发者/运维人员列表
  • OEM场景下的终端激活数
  • 使用的模块清单

3. 数据安全

DocCore SDK本身不会将客户的文档内容或数据上传至任何外部服务器。所有处理完全在客户的本地/私有环境中完成。联网激活模式下,仅与license服务器交互许可证验证信息(无文档数据)。对于涉密、金融、医疗等严格行业,推荐使用离线许可模式。

六、支持与更新条款

1. 版本更新

  • 补丁版本(x.y.Z):Bug修复,所有付费客户免费更新
  • 次要版本(x.Y.z):新特性与非破坏性变更,订阅内客户免费升级
  • 主要版本(X.y.z):含破坏性变更,可能需要单独购买升级

2. 技术支持

支持级别 响应时间 服务内容
标准支持工作日24小时内邮件工单、文档答疑、一般Bug修复
优先支持工作日4小时内电话支持、加急Bug修复、远程诊断
专属支持7×24小时专属技术经理、现场支持、定制开发

3. 定制开发

对于有特定行业需求的客户,智数云科技提供定制开发服务:行业模板定制、特殊格式支持、算法调优、性能优化、与客户系统集成等。定制开发按项目报价,成果归客户所有。

七、常见合规问题

Q:开发者跑在本地机器上也需要许可吗?

是的。每位开发者在本地开发、单元测试、功能演示时都需要对应的开发者许可。开发者离职或转岗后应释放许可,以便复用。

Q:CI/CD流水线中的构建节点算一个运行时许可吗?

单元测试与集成测试过程中的临时构建运行不计入运行时许可。但如果CI/CD中包含长期运行的文档处理服务(如自动化业务验证环境),则按实例计入运行时许可。

Q:许可证过期后会怎样?

许可证过期前30天,SDK会输出警告日志;过期后付费功能停用,抛出LicenseExpiredException。客户应在到期前续签,避免影响生产。

Q:跨国使用需要额外授权吗?

DocCore的标准许可授权覆盖全球使用。但对特定禁运地区,可能需要单独评估。海外子公司的部署建议在购买时提前说明。

八、集成Checklist

开始集成DocCore SDK前,建议按以下清单检查:

  • 确认需要的模块组合(Core、Render、VisionOCR、Pipeline等)
  • 估算生产环境实例数,确定运行时许可规模
  • 确认部署平台(.NET 6/8/Framework 4.8),匹配SDK版本
  • 确认部署环境(Windows x64等),下载对应原生依赖
  • 评估许可证加载方式(文件、环境变量、KMS)
  • 制定许可证管理流程(分发、轮换、过期预警)
  • 审计需求对接(日志格式、存储位置、保留周期)
  • 签订技术支持协议(支持级别、响应时间、升级条款)

九、询价与试用流程

DocCore SDK的商业授权采用"需求评估 + 报价 + POC + 签约"流程:

  1. 客户通过官网联系销售团队,说明使用场景和规模
  2. 销售团队提供初步报价与技术方案建议
  3. 客户申请评估许可证(30-60天),完成技术验证(POC)
  4. 双方签订软件授权协议与技术支持协议
  5. 智数云科技签发正式许可证,客户进行生产部署
  6. 按合同约定的支持级别开展技术支持与版本更新

总结

DocCore SDK的商业授权体系围绕"灵活、合规、透明"三大原则设计:灵活的模块组合适配不同业务规模,完善的合规机制保证双方权益,透明的支持条款让客户在集成过程中清楚预期。对于正在评估PDF与OCR SDK的.NET团队,建议尽早进入POC阶段,通过实际代码验证DocCore在贵公司场景下的表现,再根据实际需求选择合适的授权组合。

想了解DocCore SDK商业授权?

联系销售获取报价
处理流水线