Security Model
Authentication, CSRF, permissions, Customer scope, uploads and license-outage safety.
Separate authentication
Staff authentication and Customer Portal authentication are separate.
CSRF protection
State-changing browser forms use CSRF validation.
Permissions
Employee permissions are enforced server-side, not only by hiding navigation.
Customer scope
Customer Portal queries/actions are scoped to the signed-in customer.
Internal Notes
Internal Notes are Staff-only and must not be exposed through customer-facing routes.
Uploads
Supported image, file and module uploads validate relevant type/format/size/path rules.
Module packages
Module ZIP installation rejects unsafe paths, symbolic links and prohibited server-configuration content.
Passwords
Passwords are stored using secure password hashing rather than plain text.
License outages
Network failure is not treated as an authoritative suspension or revocation of an installation whose last confirmed state was Active.