@ copilotkit/ 许可证审核器
用于离线的 CopilotKit 许可证验证的公开运行时间包.
公共 API
软件包输出一个根切入点 :
import {
LICENSED_FEATURES,
addRuntimeKeyAttestation,
clearRuntimeKeys,
createLicenseChecker,
getFeatureDisplayName,
getFeatureLimit,
getMasterPublicKey,
getPublicKey,
isComponentFeature,
isFeatureEnabled,
isRuntimeFeature,
organizationEntitlementSchema,
parseOrganizationEntitlement,
verifyKeyAttestation,
verifyLicense,
type EntitlementReader,
type KeyAttestationData,
type LicenseChecker,
type LicenseFeatures,
type LicenseOwner,
type LicensePayload,
type LicenseStatus,
type LicenseTier,
type OrganizationEntitlement,
} from "@copilotkit/license-verifier";
verifyLicense(token) 剖析所签名的有效载荷,核实Ed25519签名,检查过期,并返回 a LicenseStatus. 已签名的有效载荷可能包含额外的特性密钥,因此较老的核查者仍然可以从结构上解析出较新的符号;帮助者读取的默认情况下仍然否定这些未知密钥.
特征读取为目录化. isFeatureEnabled(license, feature) 返回时 true 仅在 feature 是一个已知的布尔特性 LICENSED_FEATURES 并且所签名的有效载荷值是准确的 true。 。 。 . getFeatureLimit(license, feature) 仅在 feature 是一个已知的数字特征,所签的有效载荷值是一个非负整数。 未知的特性密钥和数值类型的不匹配默认否认 .
LICENSED_FEATURES 从内部再出口 @cpki/license-catalog
构建时使用的投影。 核查者不应另行界定
特性目录.
createLicenseChecker(token?) 核实一次,缓存所签的有效载荷,并重新评估每个有效载荷过期 getStatus() 电话. checkFeature(feature) 使用与目录中的布尔特征行为相同的 isFeatureEnabled。 。 。 .
组织产权合并
createLicenseChecker(token?) 返回 a LicenseChecker 谁
withOrganizationEntitlement(org) 生成一个 非模拟 EntitlementReader
合并解析 OrganizationEntitlement 与部署基地相重叠:
reader.checkFeature(feature)-布尔 或: 如果部署 ( grace- 尊重; 过期但 grace 毫无贡献 ) 或 活动 Org 给它。 非活动 org 或 活动 org 中空features地图, 贡献什么.reader.getFeatureLimit(feature)数字 最热门的数字 :0表示 无限且胜过任何有限度的价值; 否则更大的现值 胜负;null只有在双方都不在场时.
读取器是新鲜的每个呼叫, 从来没有变异 基础有效载荷
在检查器上覆盖状态,所以一个长寿的多租户进程可以称之为
每一份申请都有不同的类别,不泄露应享待遇。 读者
故意不暴露 getStatus() - 使用基座 checker.getStatus()
用于部署诊断。 种子 withOrganizationEntitlement a 一个
已经..parseOrganizationEntitlement'd' 值; 覆盖值为目录
和基数一样,所以未知的id和等值的不匹配被忽略了.
在线密钥验证
该软件包不导出网络客户端进行在线验证. 从在线端点取签名密钥的主机应该验证此包以外的响应, 然后调用 addRuntimeKeyAttestation({ keyId, publicKey, attestationSig })。证明书签名必须结束 keyId:publicKey 并由主密钥签署后被烤入包.
许可证
麻省理工学院——见 自由主义。 。 。 .