If you would like only people with existing email addresses to have access to see everyone's contact information, then our miniExtensions Portal should be able to handle your use case. You'd need to include a view that shows all records as well so members can see everyone's information (instead of just records that are linked to them).
What extension is best for creating a community platform?
Create a directory of people for a community
Updated this week