Security
How we protect Nexus
The practical controls RLC SCO Nexus relies on to keep accounts, content and records secure.
Last updated 13 September 2026
In short
- Access is by request and review. Accounts aren't self-service, and roles are enforced by the database itself, not just hidden in the interface.
- Every table holding your data has row-level security, independently tested with negative tests.
- Assessments are marked entirely on the server. Your device is never trusted for a score, a role, or a certificate.
- Classified, protectively marked or operationally sensitive material must never be uploaded to Nexus. See "Sensitive and official material" below.
- We welcome responsible security reports through Contact or security.txt.
On this page
Account security
Accounts are provisioned through Supabase Auth. Passwords are stored as salted hashes, never in plain text, and are never visible to platform staff. Sign-in requests are rate-limited, so repeated failed attempts are slowed down rather than allowed at will.
Access control
Accounts are created by administrator approval, not self-service sign-up. Every role operates on a least-privilege basis, checked on the server for every page and action, never assumed from what the interface shows or hides. Row-level security is enabled on every table holding your data, so a learner can't read another learner's records, alter a score, or grant themselves a role regardless of what the interface does or doesn't show them. These controls are checked against written test plans covering each role and table, including negative tests that confirm access is actually refused, not just that it looks refused.
Content security
Learning content moves through a draft → review → publish workflow before it reaches learners. Material flagged as sensitive is placed on hold and can only be released by an administrator, never automatically, and never by the person who submitted it. Files behind a hold are kept in private storage, not a publicly reachable location.
Data protection
Secrets that could bypass access control (service-role keys and similar) exist only in server-side configuration, never in code shipped to your browser. Accounts are isolated from one another at the database level. You can export your own personal data or ask for your account to be anonymised (see Privacy), and routine retention rules run automatically rather than relying on someone remembering to clean up old data.
Sensitive and official material
Do not upload or submit, in any lesson, message, attachment or free-text field:
- classified or protectively marked material of any grading;
- OFFICIAL-SENSITIVE material, unless its use here has been explicitly approved;
- operationally sensitive material of any other kind;
- credentials, tokens or live account details for any other system; or
- personal information about anyone that isn't necessary for the platform's purpose.
Anything that reaches Nexus in one of these categories is withheld from normal access and reviewed by an administrator rather than published or left visible.
Monitoring and audit
Sensitive actions, namely role changes, certificate issuance and revocation, content publication, account status changes and account anonymisation, are written to an append-only audit log that no role can edit or delete through the application. Certificate events and content review history are kept the same way.
Reporting a security concern
We welcome responsible reports of security issues. The quickest routes are Contact(choose "Security") or the details published at /.well-known/security.txt. We'll acknowledge a genuine report. There's no bug bounty or payment for reports.
Please don't test against the live service without our permission first. Use a disposable account and avoid accessing, changing or extracting anyone else's data. Unauthorised access, attempts to bypass access control, credential misuse, interference with the service, or extracting restricted content without authorisation are all prohibited, and may be an offence under the Computer Misuse Act 1990.
Your responsibilities
- Keep your password and sign-in details to yourself. Don't share an account.
- Use a unique, reasonably strong password, and update it if you suspect it's been compromised.
- Tell us straight away, through Contact, if you think your account has been accessed without your permission.
- Don't upload material covered by "Sensitive and official material" above.