As I can give you full permission to a user in a database. For everything you have that database and the objects to be created in the future. This means you can access all the schemes, all tables, views, functions, etc . If in the future you create a new view does not have to do a specific GRANT to that user since the user is the "owner" of the database.
Try saying the user is super-user and restrict access only to the database from pg_hba. But being super-user can for example delete another database that is not theirs. Thank you very much, Gabriel.