Loading page...Загружаем страницу...正在加载页面...
AtlasRepo

Can I make the live stream public?

说明与用途

开发者实现了需要身份验证和 RBAC 的安全工作流程,防止摄像头流被公开访问。

问题

A developer was asked to expose a live camera stream publicly, but the system is designed for permissioned access only.

结果

The system now guarantees that only authenticated, authorized users can view live streams, preventing accidental public exposure and ensuring compliance with security policies.

工作流

  • 1. User logs in and requests a live stream via POST /sites/:id/cameras/:id/live.
  • 2. Server verifies session.user and checks RBAC for site and camera.
  • 3. If authenticated and authorized, vendor live session returns a short‑lived handle.
  • 4. Browser mounts the player with the handle.
  • 5. On logout or role revocation, the player is destroyed and subsequent refreshes are denied.
  • 6. For kiosk usage, a device JWT is verified and a device‑specific live session is opened.
  • 7. All playlists are served over HTTPS and never exposed in public URLs or QR codes.
  • 8. Tests verify that unauthenticated, cross‑user, or revoked sessions cannot access the stream.
  • 9. Debug code and leftover playlist strings are removed before launch.
  • 10. Temporary event streams are revoked automatically after the event ends.

证据

I will not publish an unauthenticated HLS, FLV, or RTMP playlist.

来源

I re-run RBAC on handle refresh.

来源

I emit live_open with user_id or device_id. If that field is null, the deploy is a bug.

来源

  • 记录日期: 2026-09-22T05:00:28.206Z