apiKey 存在于客户端:提供者在应用加载时将其发送到钱包 引导 (/waas/config)。这对于客户端 SDK 是预期的。本页面详细解释了该密钥可以和不能做什么,以及如何锁定它。
密钥可以和不能做什么
从这里开始,因为这部分很容易出错:Helius API 密钥是一个 RPC/额度凭据,而不是一个钱包密钥。 泄露的密钥 不能:- 签署交易或消息,
- 移动或访问资金,或
- 接触任何用户的嵌入式钱包。
暴露也不是计费绕过。 WaaS 签名是在嵌入钱包签署时计量的,而不是在 API 密钥层——泄露的密钥无法从他人网站制造免费签名或计费签名。计量不依赖于密钥的保密性。
锁定它
这些层级从最低的努力到最严的界限。第一个是必需的基线;根据您的风险承受能力堆叠其余部分。1. 限制您的密钥域(必需)
将密钥锁定在您的应用运行的来源上,因此从您的捆绑包中获取的密钥在其他地方是无用的。1
打开 RPC 访问控制
在 dashboard 中,转到 RPCs 部分下的您的密钥并打开 访问控制。
2
将您的域添加到允许的域
添加您应用提供服务的每个来源——生产、暂存和预览:
3
为每个环境使用单独的密钥
为本地、暂存和生产保持不同的密钥,这样您可以旋转一个而不影响其他。
**域允许列表防止基于浏览器的滥用,而不是一个坚定的脚本。**检查读取请求的
Origin/Referer 标头——浏览器会诚实地设置它,但非浏览器客户端(例如 curl -H "Origin: yourdapp.com")可以伪造它。这是所有客户端 API 密钥的通病,而不仅是 Helius。域限制可可靠地阻止常见情况——您的密钥出现在其他网站上——但对于不可伪造的边界,请使用锁定到您 IP/CIDR 的服务器端密钥(步骤 4)。2. 无密钥安全 RPC URL(自动)
RPC 流量根本不携带您的密钥。SDK 在引导时解析您的项目的 无密钥安全 RPC URL,并自动使用它进行connection 调用——无需配置。
因为这些 URL 不包含 任何密钥,所以 RPC 请求中没有内容可以提取,并且它们 每 IP 最高限制为 5 RPS——因此其保护不依赖于 Origin 检查。(适用于付费计划;当项目没有安全 RPC URL 时,RPC 回退到步骤 3 中的同源路由处理器。)
3. 将密钥移动到服务器端——无服务器
为了将密钥从浏览器中移出,以进行 RPC、发送和交易历史调用,通过您自己的端点路由它们,该端点从一个 服务器端 秘密中注入密钥。这也是您选择发送者优化着陆和交易历史的方法。 这两个选项都是 100% 无服务器 的——无需运行服务器:-
Next.js 路由处理 — 作为无服务器函数(Vercel,Netlify,Cloudflare)部署。从服务器环境中读取
HELIUS_API_KEY。app/api/helius/[...path]/route.ts -
Cloudflare Worker 代理 — 最干净的完全无服务器选项:密钥存在于 Worker 秘密中,永远不会进入浏览器。
Helius RPC Proxy
开源 RPC 代理,您可以一键部署到 Cloudflare。
4. 添加不可伪造的 IP/CIDR 边界
对于攻击者无法伪造的边界,将服务器端密钥锁定到您后端的 IP 地址或 CIDR 范围。与Origin 标头不同,请求的 源 IP 无法通过正常连接进行伪造——因此来自您服务器之外的任何地方的 curl 都会被直接拒绝。
这只适用于 服务器端 密钥——您不能对浏览器密钥进行 IP 限制,因为您的用户从不可预测的 IP 连接。明智的模式是 两个密钥:
无服务器函数具有 动态出口 IP,因此固定 CIDR 需要一个稳定的出口——具有专用出口 IP 的 Cloudflare Worker、Vercel Secure Compute 或前端的固定 IP NAT。没有一个,你仍然得到主要的好处(密钥在服务器端,从不在浏览器中);你只是不在顶部添加 IP 边界。
各层比较
无论您选择哪些层级,这些都不是您用户的钱包密钥——那些永远不会参与其中。
钱包引导
在 路由处理器(生产)设置 中,钱包引导
(
/waas/config) 也通过您的路由处理器使用 服务器端
密钥——所以没有 Helius 密钥会被发送到浏览器。在 原型 设置中,浏览器发送用于引导的密钥;
限制其域(步骤1)。无论哪种方式,它都是 RPC 范围的密钥——无法触及钱包或资金。检查清单
发货前:- 客户端密钥限于您的确切来源
- 不同环境使用不同的密钥(本地/暂存/生产)
- 密钥从环境变量中读取,绝不硬编码
- (可选)通过无服务器路由处理器或 Cloudflare Worker 路由 RPC、发送和历史记录
- (可选)服务器端密钥锁定到您的 IP/CIDR 以获取不可伪造的边界
下一步
保护您的密钥
完整的访问控制参考:域、IP、CIDR 和代理。
配置
提供者配置和仪表板登录方法。