Security and trust

Controls designed for teams that can change production websites.

Content Signal treats tenant boundaries, credentials, approvals, and audit history as product requirements, not deployment footnotes.

AccessLeast privilege

Access is granted through organization membership and role checks.

ApprovalExplicit approval

Risky SEO operations stay behind a visible human confirmation step.

RestoreRecoverable change

Supported write fields capture prior state for restoration workflows.

AuditEvidence trail

Critical activity is recorded with tenant, actor, state, and outcome context.

Implemented safeguards

Security controls across account, application, plugin, and delivery layers.

The list below describes controls present in the product today. Enterprise SSO and a formal compliance package remain roadmap items and are not represented as complete.

Tenant isolation and RBAC

Every organization-scoped read and mutation verifies membership. Seven roles (Owner, Admin, SEO Manager, Editor, Writer, Billing Manager, Viewer) constrain sensitive actions, and a member's access can be scoped down to specific sites.

Encrypted integration secrets

Google refresh tokens, WordPress apply tokens, and TOTP secrets are encrypted before database persistence.

TOTP two-factor authentication

Users can enroll an authenticator app. Login verification prevents reuse of an already accepted TOTP counter.

Review-first WordPress writes

Supported changes require preview, validation, dry run, explicit confirmation, signed execution, and a recorded result.

Auditability

Membership, connections, tasks, billing, and bulk operation activity remains associated with organization and actor context.

Secure delivery checks

CI runs dependency auditing and CodeQL analysis alongside linting, tests, builds, database migration verification, and PHP checks.

Restore verification

A disposable-database smoke workflow validates that PostgreSQL backups can be restored and migration history can be read.

Bounded background work

Queue payloads carry tenant scope, use deterministic job identifiers where needed, and expose failure and lag signals for operations.

Responsible disclosure

Found a potential security issue?

Do not include credentials, customer content, or active exploit details in a public issue. Use the demo contact form and select “Security review” so the report can be routed privately.

Contact security
Review the controls together

Bring your security and workflow questions to a guided demo.

We will distinguish implemented controls from roadmap items and walk through the review-first operation flow.