Security Notes
The Provision Portal UI is a thin browser client. Most security controls (authentication, authorization, session management, data validation) are enforced by the Provision Portal backend; the UI must not be the only line of defence.
Transport
-
Enable HTTPS in production and provide a CA-issued certificate. The shipped Nginx config always listens on
443and requiresfriendly.crt+friendly.key. See Installation & Deployment — TLS Certificate. -
Redirect or firewall plain HTTP if required by your environment.
Backend trust boundary
-
The browser never calls the backend directly: it uses the same-origin
/prov-api/path, which Nginx proxies toFT_PROV_API_URL. This avoids CORS and keeps the backend address out of the browser. -
FT_PROV_API_URLmust point at a backend reachable from the container. Do not expose the raw backend to the public internet if it is meant to sit behind the UI proxy.
Session and token handling
-
On login,
AuthServicestores the auth token insessionStorage(token).AuthInterceptorattaches it asAuthorization: Bearer <token>to outgoing requests.sessionStorageis cleared on logout. -
Tokens in
sessionStorageare readable by any script running on the origin; keep the app free of untrusted third-party scripts and XSS sinks.