and also permission, between views/stored procedures/roles/grants/rls postgresql has all the features needed to implement any ACL needed.
True. That would also mean creating a database user for every application user. The auth service needs to attach more metadata to the users and since postgres does not allow you to reference system catalogs, the two user systems have to be kept in sync. We were not quite certain how this idea of mapping users would pan out when we started building the auth service.