This really depends on what you're trying to accomplish. If you are creating database users, i.e. people who will be connecting directly to the database and executing queries, then yes, you should let postgresql do the authentication.
IF, however, you are creating user accounts for a web based application, it is much better to use some other method. My preferred one is to use openldap. Then, you don't create individual accounts in postgresql, but rather do all your access control from apache/php/ldap.
That's how I do it.