使用 JWT 访问控制,您可以将流或资产标记为受限制。观看者必须发送一个由 Studio JWT 签名的 签名密钥。您在后端验证用户后发出 JWT。
1. 创建签名密钥
在仪表板中或通过签名密钥 API,创建签名密钥。存储私钥 在你的后端 (env) 中并使用 “公钥 在 Studio 中进行验证。
2. 创建受限制的内容
设置 “playbackPolicy.type 为 “"jwt"在创建流或资产时:
await livepeer.stream.create({ name: "Gated", playbackPolicy: { type: "jwt" } });
await livepeer.asset.create({ name: "Gated", playbackPolicy: { type: "jwt" } });
3. 从您的 API 签名并返回一个 JWT
在后端路由(例如/api/sign-jwt)中,验证用户,然后使用私钥签名一个 JWT。包含playbackId、过期时间和任何自定义声明。将令牌返回给客户端。使用@livepeer/core/crypto signAccessJwt或任何具有相同声明的 JWT 库 Livepeer 期望(参见Livepeer Studio 文档)
4. 将 JWT 传递给播放器
<Player.Root src={src} jwt={jwt}>
<Player.Container><Player.Video /></Player.Container>
</Player.Root>
自定义播放器: 将 JWT 作为 Livepeer-Jwt 请求头 发送给 WebRTC/HLS,或作为查询参数 jwt 在播放 URL 上。 Last modified on March 1, 2026