NR

Hofer Automation Control Plane

Cloudflare Tunnel Orchestrator & FlowFuse Dashboard 2.0 Page RBAC

CF API: Local SimulationStore: Local JSONSSO Login

Node-RED Tunnel Fleet (1 / 5 Tunnels)

Public Edge Hostname
https://home-pi.your-saas.com
Status: online
Runtime Telemetry
Node-RED 4.0.5
D2: 1.18.0 • linux-arm64
Discovered D2 Pages
3
Synced from ui-page nodes
Local LAN Lockdown
LAN + CF Allowed

Dashboard 2.0 Page-Level RBAC Matrix

Every toggle compiles the edge KV policy and instructs the Node-RED plugin to filter /dashboard/_setup per user.

User role and Dashboard 2.0 page permission matrix for Home Controller Pi
User EmailRole
Main Overview
/overview
HVAC & Boilers
/hvac
Admin Diagnostics
/diag
Actions
owner@example.comOwner
operator@example.com

Public Webhook & API Bypass Routes

Prefixes evaluated by the Edge Worker before requiring the __saas_session cookie.

  • /webhook/telegramnone
    Telegram Bot Webhook Receiver
  • /api/ingestbearer
    Telemetry Ingest API

Compiled Cloudflare KV Policy

Key: subdomain:home-pi

{
  "tunnelId": "tun_01JCP8X9",
  "sharedSecret": "9f86d081884c7d659a2feaa0c55ad015a3bf4f1b2b0b822cd15d6c15b0f00a08",
  "status": "active",
  "publicRoutes": [
    {
      "prefix": "/webhook/telegram",
      "auth": "none"
    },
    {
      "prefix": "/api/ingest",
      "auth": "bearer",
      "tokenSha256": "d6a2a0f74e5d014a1bdee3567ce0f16f05ba5e971594e3e2e2557db14748a6df"
    }
  ],
  "acl": {
    "owner@example.com": {
      "role": "admin",
      "pages": [
        "*"
      ]
    },
    "operator@example.com": {
      "role": "viewer",
      "pages": [
        "c84a2f10.1a2b3",
        "d95b3e21.4c5d6"
      ]
    }
  }
}

Fleet Role Templates (Phase 2 IIoT)

Define a reusable role and Dashboard 2.0 page-path pattern once, then roll it out across every provisioned Node-RED instance and sync KV policies in one click.

  • Field Technicianoperator
    tech@integrator.io
    Pages: /overview, /hvac

Node-RED Agent Heartbeat Tester (POST /api/agent/sync)

Create a tunnel above to generate an nrt_... composite token, then test syncing discovered ui-page nodes directly to the control plane.

Provision New Cloudflare Tunnel

Executes the 5-step Cloudflare Tunnel, Ingress, DNS CNAME, KV Policy, and nrt_ token minting sequence.

Invite User to Home Controller Pi

Permitted Dashboard 2.0 Pages