Finally! Shared Channels are in Public Preview, and I’ve been waiting to publish this blog post. I’ve had the privilege to try out this feature for a while now and will in this blog post describe the feature itself, its functionalities, and ways to use it. I will later follow up with part 2, how you set them up including all the technical details you need.
Shared channels were announced by Microsoft a while ago and the anticipation has been high ever since. The idea is to be able to share a specific channel to a user outside of the team itself. That person can in turn, add that channel to a team he/she is an owner of -enabling collaboration between teams. That includes all workloads within that channel including conversations, files, and additional apps. (No, not Planner at release unfortunately) And best of all, this works between tenants as well.
Why use Shared Channels? – Internal scenario
Let’s divide usage into two use cases, internal and external collaboration
How we used to do
Every team in Microsoft Teams is a silo from an access and permissions perspective. To access any content within a certain team, you need to be a member of it. (With exception for public teams) This mean that users can’t collaborate between teams in a good way.
Let’s say team1 needs to access a file in team2. Team1’s members are not members of team2. Before shared channels, we had a few options. Each with its own limitations.
- Either make all members of team1, a member of team2, also meaning they now would have access to everything within that team.
- We can also utilize sharing and share that single file directly to specific users. This approach is better and well suited in many scenarios, especially when its fewer users involved. But what if Team1 needs access to a certain set of files and other workloads like conversations and apps? We can of course work with direct permissions on group level, but the more we manually add/edit permissions, the more administrative overhead we get.
- We can create a private channel in team2 and add the members of Team1 here. Although, for someone to be a member of a private channel -they need to be added to the team where the private channel exists. This means we are back to option 1. The only viable way here is for all channels (except the general channel) to be private channels. Not a good approach since you can’t convert standard channels to private and vice versa.
Comparison chart Private channels vs Shared channels
|Private channels||Shared channels|
|Who can create (default)||Owners/members||Owners only|
|Need to be member of the team||Yes||No|
|Can be shared with another team||No||Yes|
|Channel count limitation||30 per team||200 per team|
|MS Planner available||No (as of now)||No (as of now)|
- We can create a common team where all members from team1 and team2 are added. This way we can collaborate between borders. This is a common approach but nonetheless not without its downsides. We need an additional team to keep track of including content that will be spread over separate teams. Duplicates are never a good option, so you need to be aware of in what team content are created and moved if necessary to enable collaboration between the teams.
Solution with Shared channels:
Let’s continue above scenario, now using shared channels instead. The owner of team1 create a shared channel with the purpose of collaborating with team2. The channel is then shared to an owner of team2 which accepts the share and add it to team2. This shared channel now exists in both team1 and team2. Members of each respective team can use the posts tab, collaborate on files, and use the apps available within that channel. We can also share the same channel to up to a total of 50 other teams.
Microsoft Teams enables external users to be invited as guests (using B2B) to a team. As a guest you will receive an invite that must be accepted. After that, the guest user can access the team including all channels and resources within.
There are a few limitations and quirks using B2B guests.
- When a guest accepts an invite, a guest account will be created in the inviting tenants Azure AD. This guest account will remain until being removed either by an admin, the guest itself or by a “Access Review” process. This account will remain even if that guest user is removed from the team after invitation. This can cause a mess having lots of guest accounts in your tenant even though they might no longer be needed. There should be a governance process in place to deal with this, although by experience there often isn’t.
- The guest experience is not the best, having to do a tenant switch every time the guest needs to access the team. Having to do so will make it easy to miss what’s going on in the team. A workaround is having the web client of Teams open in a browser, always logged into the guest tenant.
- The guest has full access to the team and all the channels. This can both be good and bad, depending on your use case. You can still structure your team with private channels, but the same limits apply that was discussed earlier for these.
Solution with Shared channels:
Instead of using B2B guests, we can now create a Shared channel and share that channel to an external user. That user accepts and have that channel added to his own home tenant team’s view. No tenant switching is needed to access the Shared channel. The external user can in turn also add this channel to a team in the external users own tenant. The user must be an owner of the team where the shared channel is added. This works just like in the internal collaboration scenario. No guest accounts will be created in the inviting tenant since shared channels are using something called B2B direct. This means that we can have better control over who can access resources in our own tenant.
Comparison chart B2B guest’s vs Shared channels
|B2B (guest access)||B2B direct (Shared channels)|
|Creates a guest account||X||–|
|Supports Access Reviews||X||X|
|Access to the whole team||X||–|
|Access only to selected channel||–||X|
|Tenant switching required||X||–|
Sometimes using guest accounts is preferred though.
- You have a working governance organization in place for managing B2B guest’s
- You want any guest to have access to a team’s all channels
- You only want to share with single users and not to a team
- Have many teams and/or enterprise apps being shared to an external user
- You want the guest to be able to collaborate with other users in the inviting tenant, for example using private chat
- You want members to be able to invite guests to a team (if applicable)
Some additional facts about Shared channels
|Shared channels per team||50|
|Number of SC channels per team||50|
|Number of members per SC||1000|
That’s it for part 1. In part 2, I will go through all the technical details and how to set up Shared channels. Please contact me for any questions or feedback and keep an eye open for my next blog post!