Enforce SSL on Supabase, Then Measure the Restart: A Status Page for Encryption and Downtime A developer built a small test harness and status page to verify that Supabase's "Enforce SSL on incoming connections" setting actually rejects unencrypted connections and to measure the resulting database restart. Using psql with sslmode=disable and sslmode=require, the tests showed unencrypted attempts reached the password check before enforcement and were refused with an ESSLREQUIRED error afterward, while an external poller, pg_postmaster_start_time(), and a pg_cron heartbeat tracked downtime during the restart. "Enforce SSL on incoming connections" is one switch in the Supabase dashboard, and it comes with a warning: the database restarts. I wanted to know three things before I trusted it. Does it actually refuse unencrypted connections? How long is the interruption? And can I see both on one page afterwards? This post does the tests, shows the numbers, and builds a small status page on top. AI disclosure: I used Claude to help draft this post. I ran every test in my own project, checked the results, and edited the text. The mistakes are mine. Repo: https://github.com/tomozilla/ssl-enforcement-check-en https://github.com/tomozilla/ssl-enforcement-check-en Plain-language companion no code, no product names : https://medium.com/p/203aa18f400d https://medium.com/p/203aa18f400d verify-full with the downloaded certificate, big databases, paid plans. Connect through the Session pooler Dashboard, Connect . I use psql with sslmode=disable and sslmode=require , and a password that is wrong on purpose: php for mode in disable require; do printf "sslmode=%-8s - " "$mode" PGPASSWORD=wrong-on-purpose PGCONNECT TIMEOUT=10 psql \ "host=$PGHOST port=5432 dbname=postgres user=$PGUSER sslmode=$mode" \ -c "select 1" 2 &1 | head -1 done With enforcement off: php sslmode=disable - psql: error: connection to server at "aws-0-