I used to have the problem that if someone logged in and had no permission on the database, that they were moved to the default database without noticing. This results could be unpleasant.
If it was a similar database it could take some time before they found out.
And sometimes they tried to "repair" the master database, if that was the default database.
Therefore I created a nothing database as default database for all users.
It had one table with one field, which told people they were at the wrong place.
Of course everyone had only select permission on that table and nothing else.
That works fine.