Skip to content

Enable RLS on every guarded table #878

Open
Open

Description

@bencap

Summary

After the pilot, this issue turns RLS on for the rest of the guarded tables, in staging and then production, in one step.

Terms are defined in the glossary on #808.

Scope

Rollback

Per table, ALTER TABLE ... DISABLE ROW LEVEL SECURITY as mavedb_migrate, and put the table back on the not-yet-enabled list. Don't drop the policies. Rehearse on one table in staging before production.

Acceptance criteria

  • In production, this returns no rows:

    SELECT c.relname FROM pg_class c JOIN pg_namespace n ON n.oid = c.relnamespace
     WHERE n.nspname = 'public' AND c.relname = ANY (:guarded_tables) AND NOT c.relrowsecurity;
  • The not-yet-enabled list is empty.

  • The RLS checks pass in production.

  • The rollback was rehearsed in staging.

Activity

  1. added this to the R2026.4 milestone on Sep 24, 2026
  2. added
    app: backendTask implementation touches the backend
    app: databaseTask implementation requires database changes
    on Sep 24, 2026
  3. added theissue type on Sep 24, 2026
  4. changed the title [-]Enable RLS on every guarded table in production[/-] [+]Enable RLS on every guarded table[/+] on Sep 28, 2026
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Metadata

Metadata

Assignees

No one assigned

    Labels

    app: backendTask implementation touches the backendapp: databaseTask implementation requires database changes

    Type

    Projects

    No projects

      Relationships

      None yet

      Development

      No branches or pull requests

      Issue actions