This blog post provides few options to share some of the content with external users – clients, vendors or contractors and explains pros and cons of each. The assumption here is that you are using SharePoint Online (Office 365). For those of you who are on premises and need to share externally, the below mechanisms would not be relevant.
Option 1: External sharing via OneDrive
If your team sites reside in SharePoint internal site collection, and you only need to share just few files and folders – using your own OneDrive might not be a bad idea. By default, root site collection is not setup for external sharing, while OneDrive is. So if you only need to share few files here and there externally – using OneDrive might be the way to go – no extra sites to build or configure.
Nothing to setup
As an owner of your own OneDrive, you are the only one in charge of the files/folders being shared and not the whole team like with the SharePoint team site
Need to copy (duplicate) content from Team site to OneDrive in order to share externally
Occasional sharing of small fraction of the team site content
Option 2: Single team site setup for internal/external collaboration
Another option would be to use the same SharePoint site used for Internal collaboration and opening it up for external users as well. While convenient in theory, (one place for all materials), it does open up a security/integrity loophole. If you opt to share the whole site with the external users, they will have access to the whole site. That means all the document libraries, tasks lists, issue logs, calendar, etc. When sharing site as a whole, your external users end up in the same Members Group, just like your regular employees.True, you can designate certain folders within the site for external sharing and just share those. But now, you are creating an administrative nightmare for yourself with micro-management and individual security/permissions maintenance.
Single place for all the content, no need to duplicate, like with the previous option
Possible security/integrity issues, administrative overhead
When you need to share most, if not all the site content with external users and there is no risk if they see it all on a site. Make sure you have partners your can trust and have a NDA (Non-Disclosure Agreement) executed and in place before you share anything.
Option 3: 2 Separate team sites for internal and external collaboration
This option is my favorite as it mitigates most negatives of the previous two options. Essentially, the big idea here is that you maintain a (project) team site for internal collaboration and have a separate site (residing on a separate site collection – this is important) specifically set up for collaborating with the external users (vendors, clients, contractors).
Since in most cases, the external sharing is only for files and folders, you don’t really have to build anything fancy for the external site. It could be a simple site with a single document library, unlike the internal team sites which could have other web parts like calendar, tasks list, issues log, etc.
Peace of mind. You can be rest assured that internal content can’t be seen by an external party
External team site would be sharable by the whole team, and all the site members can potentially invite or dis-invite external users
Content duplication. Yes, you will need to copy some content to another site to share with external folks, but would not you rather sleep well at night? It is security vs. convenience. Pick one.
A bit of overhead upfront, you need to setup that other site collection that is opened up for external sharing, but that is usually a one-time deal
When you do lots of external sharing with external parties and don’t want to sacrifice the integrity of your data