rls-checker

Audit Row Level Security policies across PostgreSQL and Supabase schemas.

Updated Mar 13, 2026
One-click install
npx skills add https://github.com/jtucker9/mystuff --skill rls-checker
Or copy as Structured Prompt for Agent
Please help me install this Agent Skill.
Skill: rls-checker
Source: https://github.com/jtucker9/mystuff/tree/main/skills/security/rls-checker
Command: npx skills add https://github.com/jtucker9/mystuff --skill rls-checker

SYSTEM DOCUMENTATION & REQUIREMENTS

What problem does it solve?

Row Level Security policies are essential for multi-tenant data isolation, but misconfigurations often leave tables unprotected or overly permissive.

Core Features & Use Cases

  • Discover RLS status across all tables in the target schema, including which tables have RLS enabled or disabled.
  • Audit existing policies to detect permissive rules, missing policies, and potential privilege escalation.
  • Provide actionable templates and test queries to close gaps and verify isolation.

Quick Start

Run the RLS checker against your PostgreSQL or Supabase database to generate a complete RLS audit report.

Frequently Asked Questions about rls-checker

High-intent search queries and answers about installing and using this skill.

FAQPage Schema
How do I audit Row Level Security policies in PostgreSQL and Supabase?

You audit Row Level Security policies by scanning PostgreSQL or Supabase schemas to identify unprotected tables and overly permissive rules. The process checks pg_tables, pg_policies, and information_schema, simulates role impersonation, and generates a complete RLS audit report.

What happens if a Supabase table has Row Level Security disabled?

If a Supabase table has Row Level Security disabled, it leaves multi-tenant data exposed to unauthorized access. An RLS audit discovers the RLS status across all tables, detects missing policies, and provides actionable templates to close security gaps and verify isolation.

Can I use an RLS policy audit for multi-tenant app security reviews?

Yes, an RLS policy audit is designed for multi-tenant app security reviews and policy validation workflows. It evaluates PostgreSQL and Supabase schemas to detect permissive rules, missing policies, and potential privilege escalation across your database.

How do I detect overly permissive RLS policies in my database?

You detect overly permissive RLS policies by applying policy completeness checks and simulating role impersonation against your database. This identifies permissive rules and potential privilege escalation, providing test queries to verify proper data isolation.

What database permissions are required to check Row Level Security status?

Checking Row Level Security status requires access to pg_tables, pg_policies, and information_schema. The audit also requires the ability to simulate role impersonation and perform policy completeness checks across the target PostgreSQL or Supabase schema.

Does the RLS checker generate test queries to verify data isolation?

Yes, the RLS checker provides actionable templates and test queries to close gaps and verify isolation. It audits existing policies to detect missing rules and outputs queries you can run to validate that your multi-tenant data remains properly isolated.