使用服务管理员和签名的 JWT 令牌 (ES256) 授权从外部 CRM 到 B2COPY API 的请求。本页面涵盖先决条件、密钥生成、令牌发行以及获取/刷新 B2COPY 令牌。
先决条件
- 在管理面板中创建一个服务管理员,CRM 代表该管理员发出 API 请求(建议将其限制为特定的 IP 地址)。
- 配置 CRM 以生成签名的 JWT,其声明包括
admin_id(服务管理员 ID)、device_ip(请求 IP)和key_id(私钥 ID)。
生成密钥
生成 EC (P-256) 密钥对用于签名和验证令牌:
# Private key
openssl genpkey -algorithm EC -pkeyopt ec_paramgen_curve:P-256 \
-out ec_private_pkcs8.pem
# Public key
openssl pkey -in ec_private_pkcs8.pem -pubout -out ec_public.pem安全
保密私钥,切勿泄露。仅向 B2COPY 支持团队提供 公钥 密钥 - 它用于验证您签名的 JWT。
联系 B2COPY 支持
要完成集成,请将您的公钥 (ec_public.pem)、唯一密钥标识符以及将调用 API 的 IP 地址发送给支持团队。支持人员注册您的集成并配置公钥。
获取访问和刷新令牌
POST [host]/api/admin/auth/v2/admin/adminservice/authexternalcrm| 名称 | 类型 | 必填 | 描述 |
|---|---|---|---|
| external_token | 字符串 | 是的 | 由您的 CRM 生成的签名 JWT。 |
curl -X POST "[host]/api/admin/auth/v2/admin/adminservice/authexternalcrm" \
-d '{ "external_token": "<your-generated-jwt-token>" }'响应返回服务管理员的访问和刷新令牌;将访问令牌包含在所有其他请求的 Authorization 标头中。
{
"accessToken": "<access-token>",
"refreshToken": "<refresh-token>"
}刷新访问令牌
POST [host]/api/admin/auth/v2/admin/adminservice/refreshtokencurl -X POST "[host]/api/admin/auth/v2/admin/adminservice/refreshtoken" \
-H "Authorization: Bearer <refreshToken>"返回新的访问/刷新令牌对。
