You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.

1.1.0_05_create_readaccess_role.sh 1.2KB

1234567891011121314151617181920212223242526272829
  1. #! /usr/bin/env bash
  2. psql <<-EOF
  3. CREATE ROLE readaccess;
  4. REVOKE ALL ON DATABASE ${POSTGRES_DB} FROM readaccess;
  5. GRANT CONNECT ON DATABASE ${POSTGRES_DB} TO readaccess;
  6. \c ${POSTGRES_DB}
  7. REVOKE ALL ON SCHEMA public FROM readaccess;
  8. REVOKE CREATE ON SCHEMA public FROM readaccess;
  9. GRANT USAGE ON SCHEMA public TO readaccess;
  10. REVOKE ALL ON ALL TABLES IN SCHEMA public FROM readaccess;
  11. GRANT SELECT ON ALL TABLES IN SCHEMA public TO readaccess;
  12. ALTER DEFAULT PRIVILEGES IN SCHEMA public REVOKE ALL ON TABLES FROM readaccess;
  13. ALTER DEFAULT PRIVILEGES IN SCHEMA public GRANT SELECT ON TABLES TO readaccess;
  14. REVOKE ALL ON ALL SEQUENCES IN SCHEMA public FROM readaccess;
  15. GRANT USAGE ON ALL SEQUENCES IN SCHEMA public TO readaccess;
  16. ALTER DEFAULT PRIVILEGES IN SCHEMA public REVOKE ALL ON SEQUENCES FROM readaccess;
  17. ALTER DEFAULT PRIVILEGES IN SCHEMA public GRANT USAGE ON SEQUENCES TO readaccess;
  18. REVOKE ALL ON ALL FUNCTIONS IN SCHEMA public FROM readaccess;
  19. GRANT EXECUTE ON ALL FUNCTIONS IN SCHEMA public TO readaccess;
  20. ALTER DEFAULT PRIVILEGES IN SCHEMA public REVOKE ALL ON FUNCTIONS FROM readaccess;
  21. ALTER DEFAULT PRIVILEGES IN SCHEMA public GRANT EXECUTE ON FUNCTIONS TO readaccess;
  22. EOF