Skip to content
Iona Tech home
Menu

Security

Security is built into the platform.

Systems we build on Momentum hold the records, files, and form answers. A new screen uses the platform’s login, tenancy, and file path. Every engagement inherits the same layers.

Trust boundary

The browser is interface only. It holds no database URL and no file-store admin key. Validation, access, and writes run in the API.

Identity

Sign-in is invite-only. An account at the identity provider is not enough: the API then loads a live portal user. Unknown or deactivated people cannot call signed-in routes.

Authorisation

Each area of the product has a permission key. The API rejects the call if the person’s role does not hold it. Hiding a menu item is never treated as protection.

Tenancy

Many customer companies run on one product. The client never chooses the organisation. Signed-in traffic uses the person’s company; a public form uses that form’s company. The database enforces the same rule.

Database

The API runs as a least-privilege role. The owner role is for migrations only. Row-level security is on. The hosted table API that would let a browser talk to the database is off.

Files

Bytes sit in a private bucket, keyed by organisation. Domain tables store document ids, not file bytes. The browser never talks to storage. Uploads are checked by type.

Public internet

Unauthenticated routes are an explicit short list. Public form submit is rate-limited, CAPTCHA-gated on hosted sites, and body-capped. Unpublished forms 404.

HTTP and config

Hosted CORS, origin-bound session tokens, security headers, and generic errors. A missing production setting fails closed. Laptop shortcuts cannot reopen on a hosted site.

Input, audit, and mail

Bodies are validated. Queries are parameterised. A timeline records who changed what. Rows are soft-deleted. Email and SMS are sent from the record; the client never supplies a raw To address.

How a request is shaped

The web application talks only to a REST API over HTTPS. That API is the only process with database and file-store credentials. Identity is checked, then the live portal user, then the permission keys on their role, then the organisation on that user (or on the published form).

Local development, hosted development, test, and production follow the same path. Code is promoted. Production data is not copied backwards. Hosted processes run as production, so a missing variable cannot reopen demo login or an API catalogue.

This website

www.ionatech.co.uk is a static company site. It has no portal login and no customer records. The contact form opens your email app; we do not store submissions here. How we handle enquiry mail is on the privacy notice.

A hosted Momentum portal used by a customer organisation has its own privacy information, because it processes that organisation’s records.

Ask for the detail

This page is the public map. A procurement or security questionnaire can go further, under NDA, against a specific host.

Talk to us