Security

Security is a design requirement, not an afterthought

Because AccessLantern crawls URLs and processes documents that customers point it at, we treat request-forgery and file-handling risks as first-class design constraints, not edge cases.

Tenant isolation

Every tenant-scoped query is enforced at the application layer, the ORM layer, and the database layer (PostgreSQL row-level security) - not by a single check that could be missed in one code path.

Crawler safety

The crawler validates URL scheme and port, resolves and checks DNS against private/reserved IP ranges, re-validates at connect time to close DNS-rebinding gaps, and re-validates every redirect hop rather than following redirects blindly.

Credentials and files

Authenticated-scan credentials are stored only as references into a secret vault, never in plaintext. Uploaded files are scanned for malware and validated by content type before being marked available, and are never made public to process them.

Access control and audit

Role-based access control scoped to department, property, or vendor status; multi-factor authentication; and an immutable audit log of security-relevant actions, including any platform-support access to a tenant's data.