掌握企业环境中集成Smart Money API的复杂认证机制。学习OAuth 2.0流程、JWT令牌模式、安全密钥轮换及多因素认证实现。
Smart Money API支持多种认证方法,旨在适应不同的应用架构、安全需求和组织策略。理解这些模式可确保您的集成既安全又高效。
Smart Money API的认证操作分为三个主要层面:
安全原则: 切勿在客户端代码、日志、版本控制或错误消息中暴露认证凭证。应定期实施凭证轮换,并在凭证泄露时立即执行。
每种方法都有独特优势。API密钥最适合后端到后端通信且凭证存储受控的场景。JWT令牌在无共享状态的分布式架构中表现优异。OAuth 2.0为第三方应用提供用户委托访问权限。
API密钥是最简单的认证机制——它们是专为您的账户生成的随机字符串,用于向Smart Money API标识您的应用程序。每个请求都必须在请求头或查询参数中包含您的API密钥。
推荐的方式是使用Bearer方案在Authorization请求头中传递API密钥:
对于WebSocket连接或无法修改请求头的情况,可将API密钥作为查询参数传递:
| 属性 | 描述 |
|---|---|
| 格式 | 128位十六进制字符串,前缀为sk_test_或sk_live_ |
| 权限范围 | 继承创建该密钥的账户所有权限 |
| 有效期 | 不会自动过期;必须手动轮换 |
| 轮换机制 | 生成新密钥,迁移流量,然后停用旧密钥 |
| 速率限制 | 使用同一密钥的所有请求共享速率限制 |
Bearer令牌通过添加上下文、有效期和刷新机制扩展了基础API密钥概念,适合需要程序化凭证管理的应用场景。
用API密钥和密钥兑换24小时有效的Bearer令牌:
该端点返回带有元数据的Bearer令牌:
在所有后续请求的Authorization头中包含令牌:
当令牌临近过期时,使用刷新令牌获取新令牌(无需提供API密钥):
OAuth 2.0允许用户授权应用访问其Smart Money API账户而无需共享凭证,这对SaaS平台、第三方集成和多租户应用至关重要。
Web应用的标准流程:
仅请求应用所需的权限范围。Smart Money API定义了以下范围:
| 范围 | 描述 |
|---|---|
| whales | 访问鲸鱼钱包追踪与持仓量指标 |
| derivatives | 访问期货、永续合约及资金费率数据 |
| onchain | 访问链上交易流与分析数据 |
| alerts | 创建并管理Webhook警报 |
| offline | 获取刷新令牌以实现离线访问令牌更新 |
JWT(JSON Web令牌)提供无状态认证——服务器无需存储会话数据。Smart Money API采用RS256(RSA SHA-256签名)进行令牌签名,无需联系API即可验证。
JWT令牌由三部分组成,以点号分隔:
头部标识算法与令牌类型:
载荷包含声明(关于用户/应用的陈述):
下载Smart Money的公钥并在接受令牌前验证:
定期密钥轮换对维护安全至关重要。即使安全措施完善,也应假设密钥可能泄露并实施系统化轮换。
Smart Money根据密钥类型和使用场景推荐不同轮换周期:
| 密钥类型 | 推荐轮换周期 | 最低轮换要求 |
|---|---|---|
| 测试API密钥 | 每月 | 每季度 |
| 生产API密钥 | 每季度 | 每年 |
| OAuth刷新令牌 | 自动(90天后) | 手动(180天后) |
| 服务账户密钥 | 每半年 | 每年 |
在不中断服务的情况下轮换密钥:
若怀疑密钥泄露:
使用Kubernetes Secrets和Operator实现自动轮换:
对访问生产数据的账户,MFA通过要求除凭证外的第二验证因素提供额外安全层。
部分操作即使认证后仍需MFA确认:
认证强度取决于实施方式。遵循以下实践以保持安全:
大型组织通常需要额外安全控制和合规能力。
面向企业客户,Smart Money API支持与组织身份提供商(Okta、Azure AD等)的SAML 2.0集成:
限制API访问权限至特定IP地址或CIDR范围:
企业版套餐包含全面的合规审计日志:
| 事件 | 记录数据 |
|---|---|
| 身份验证 | 用户、时间戳、成功/失败、IP、MFA状态 |
| 密钥操作 | 密钥ID、操作、发起者、时间戳 |
| 账户变更 | 变更内容、操作者、时间戳、变更前后值 |
| 数据访问 | 用户、端点、权限范围、时间戳、记录数 |
问题: 收到"401 Unauthorized - Invalid API Key"
解决方案:
问题: Bearer令牌过期,请求失败
解决方案:
问题: 浏览器因CORS错误阻止请求
解决方案:
问题: 即使输入正确验证码,MFA操作仍失败
解决方案:
Smart Money API支持企业级身份验证,集成OAuth 2.0、JWT、MFA和SAML。采用行业最佳实践保障API集成安全。
查看企业版套餐