It might be possible that in your company, all users don't need to access to all contacts.
This is why you can:
- Assign a user as contact owner.
- Create roles offering different permissions about create, view, modify and delete contacts.
Using roles, your users can be limited in their usage by administrator depending if they own or not the contact.