API 密钥 - Entity Enricher 文档

API 密钥

创建用于编程访问 Entity Enricher 的 API 密钥。为服务间集成、CI/CD 流水线和自动化工作流使用组织访问密钥。

密钥类型

Entity Enricher 支持两种类型的 API 密钥,各自适用于不同的使用场景:

推荐

组织访问密钥

拥有独立角色的独立密钥,不绑定任何用户账户。是服务间集成的最佳选择。

  • 拥有各自的角色(所有者、编辑者或操作员)
  • 不受用户账户变更影响
  • 限定于该组织
  • 创建需要所有者角色

旧版用户密钥

与特定用户账户绑定的密钥。它们会继承创建者的角色,并受用户账户变更的影响。

  • 继承创建用户的角色
  • 如果该用户被停用,该密钥将停止工作
  • 任何已认证用户均可创建

密钥格式与安全

格式:ent_a1b2c3d4e5f6g7h8

密钥使用 ent_ 前缀,后跟随机字节。完整密钥在创建时仅显示一次——之后无法再取回。

访问密钥(用于调用 Entity Enricher 的 API)在数据库中以 SHA256 哈希形式存储,因此即使拥有数据库访问权限,也无法恢复原始密钥。仅前 12 个字符(前缀)以明文形式存储以供识别。

提供商密钥(如 Anthropic、OpenAI 等 LLM API 密钥)在静态存储时采用 Fernet 对称加密(AES-128-CBC + HMAC)。它们必须能在运行时解密,以便向 LLM 提供商进行身份验证。只有最后 4 个字符以明文存储。

正在创建 API 密钥

在应用的 API 密钥页面创建密钥,或通过 REST API 以编程方式创建:

密钥配置

字段描述
名称用于标识的描述性名称(例如“CI/CD Pipeline”、“n8n Integration”)
角色权限级别:owner、editor 或 operator。决定该密钥可以访问的内容。
范围读取、写入或两者。控制该密钥是可以修改数据还是仅能读取数据。
过期可选的过期日期。未设置过期时间的密钥在被撤销前一直有效。

使用 API 密钥

在每次请求的 X-API-Key 请求头中发送你的 API 密钥:

curl -H "X-API-Key: ent_your_key_here" \
     https://your-instance.example.com/api/enrichment/options

身份验证方式

方法标头用例
API 密钥X-API-Key: ent_...服务间调用、CI/CD、自动化
Bearer TokenAuthorization: Bearer <jwt>Web 客户端、交互式会话

按角色划分的端点访问权限

API 密钥的角色决定了它可以访问哪些端点:

端点类别最低角色
丰富化(单个、批量)运算符
记录(列表、详情、删除)运算符
Schema(读取)运算符
Schema(创建、编辑、删除)编辑器
融合运算符
提供商信息运算符
成本分析运算符
API 密钥管理所有者
用户管理所有者

管理密钥

API 密钥页面提供所有组织密钥的完整视图及使用统计:

查看用量查看每个密钥的最近使用时间戳和总使用次数
更新角色更改组织访问密钥的角色(仅限所有者)
撤销永久停用某个密钥。已吊销的密钥无法重新启用。
过期将在 7 天内过期的密钥会被标记。过期的密钥将被自动拒绝。

提供商密钥与访问密钥

API 密钥页面包含多个用途不同的标签页:

提供商密钥

您组织的 LLM provider API 密钥(Anthropic、OpenAI 等),用于独立计费。支持每个 provider 配置多个密钥并自动进行 LRU 轮换。有关 BYOK 系统,请参阅 Models & Pricing

提供商密钥使用 Fernet 对称加密(带 HMAC 认证的 AES-128-CBC)进行静态加密。仅在进行 LLM API 调用时于运行时解密。仅最后 4 个字符以明文存储用于显示。

全局密钥

由管理员管理的全系统范围 LLM provider 密钥。在没有可用的 organization 密钥时用作后备。支持每个 provider 配置多个密钥,采用 LRU 轮换,并在永久性故障时自动停用。

组织访问密钥

用于访问 Entity Enricher 自有 API 的密钥。供外部系统以编程方式调用丰富化、模式、记录及其他端点。端点文档请参阅API 参考

后续步骤