This implies that if user A on the local database tries to use this link, then the same account (i.e. A) with the same password exists on the remote database - i.e. all of the users on the local database that use this link are duplicated on the remote database as well.
Yes - it is not necessarily a bad design. It simply is an easy way of defining one public database link rather than many private database links ( A --> A, B --> B, etc). If a schema exists only on the local database (and does not exist on the remote database) then it will be unable to use this database link