Database modelling best practice question
The first method is cleaner.  I would make a few suggestions, however.  You don't need the UserDocumentID surrogate Primary Key.  A composite key of UserID and DocumentID would suffice, while also provide a unique constraint for the junction table.  Also, is HasAccess really necessary?  I believe the existence of the record in the junction table is enough to indiciate that access is granted.

Do you have different levels of access?  Read-only, read/write, delete?

Hope this helps,

Matt