Yo hice algo similar pero con Mysql como BD .. puedes tomarlo y adaptarlo a PostgreSQL .. es muy simple el modelo de datos que se usa.
http://php.cluster-web.com/autentificator/
El proceso se trata de autentificar al usuario y crear X variables de sesión para que las puedas leer y validar constantemente en tu aplicación .. En tu caso miraras el nivel de acceso para determinar si se muestra o no tal cosa ...
Un saludo,