Thoughts on row-level security for webapps?

From: Siegfried Bilstein <sbilstein(at)gmail(dot)com>
To: pgsql-general(at)lists(dot)postgresql(dot)org
Subject: Thoughts on row-level security for webapps?
Date: 2018-12-31 16:57:19
Message-ID: CAOd5ZkpQw7OG=bezbF9HDaM_TnSx=PHWGmmdZsL_XXbGKt_qmQ@mail.gmail.com
Views: Raw Message | Whole Thread | Download mbox | Resend email
Thread:
Lists: pgsql-general

Hi all,

I'm evaluating using a tool called Postgraphile that generates a GraphSQL
server from a postgres setup. The recommended way of handling security is
to implement RLS within postgres and simply have the webserver take a
cookie or similar and define which user is querying data.

I've normally built webapps like this: pull out user id from a session
cookie -> the API endpoint verifies the user and whether or not it has
access to the given data -> app code mutates the data.

With Postgraphile the request specifies the mutation and the server
processes the request and relies on Postgres to determine if the user has
correct access rights.

It seems like I would need to create a ROLE for every single member that
signs up for my website which I'm a little concerned about. Is this a
common usage pattern for SQL security? Any gotchas relying on RLS?

--
Siggy Bilstein
CTO of Ayuda Care <https://www.ayudacare.com>
Book some time <https://calendly.com/siggy-cto> with me!

Responses

Browse pgsql-general by date

  From Date Subject
Next Message Jeff Janes 2018-12-31 17:04:44 Re: getting pg_basebackup to use remote destination
Previous Message chiru r 2018-12-31 16:19:50 Relocatable Binaries (RPMs) : custom installation path for PostgreSQL