最近一段时间项目比较着急,一直没来得及更新博客(上一篇博客还是五一节前写的Teams语音落地前置条件在Azure上部署虚拟语音网关),今天正好有朋友在微信群里问Teams上的一些东西,然后又正好晚上有点时间,就在生产环境中实际测试了一次来给大家分享Teams与Office365组的关系。

在本系列第二篇文章中我详细的阐述了Teams的后端其实就是Office365组及SharePoint。OneNote等Office365产品,Office365组其实贯穿了整改Office365服务产品,包括:Exchange\Teams\SharePoint\OneDrive\OneNote等等,这篇文章就将通过实际的案例来分享Office365组与这些产品之间的关系。

在微信群里有同学问:我已经创建好了的团队,是公共的但是现在不想让其他人发现这个团队并加入,能不能改成专用(私有)团队?

或者创建的是专用(私有)团队由于某些原因希望将这个团队改成公共的

大多数同学可能都会回答:NO!因为确是在创建团队的时候就会让你选择专用或者公共,创建好了之后即时团队所有者也不能来进行修改这个团队的属性。

可我要回答你的确是:Yes!而且方法很多!但需要一定的权限。

      首先我们点击Teams客户端左下角的创建团队,如下图(如没有这个按钮出现则说明你没有权限创建团队)


选择团队的类型,这里我先选择“公共“


        创建好后如下图,可用看到这个团队是公共的,也就是任何人都可以搜索和访问到的

接下来就跟大家分享一下如何来更改这个团队的隐私属性,首先你至少需要是Teams管理员或者至少是Exchange管理员,或者是全局管理员

修改隐私属性的方法我分两类:

A、图形化界面修改

Office365 AdminCenter修改

Exchange AdminCenter修改

Teams AdminCenter修改

B、 PowerShell命令行修改

1、在Office365 AdminCenter中修改隐私

创建好了团队之后,使用Office365全局管理员登录AdminCenter,选择组然后搜索到刚刚创建好的团队对应的组,例如我创建的团队叫teams,那么我就搜索teams这个组

       选择这个组,在隐私说明中显示为公共,这时候点击右侧的编辑


隐私中选择为专用


修改完成如下图已经变成专用组了

2、Exchange AdminCenter中修改

接下来使用Exchange管理员登录Exchange Online ECP https://outlook.office365.com/ecp

在收件人选项卡中选择组,依次进行组的搜索,并选择要更改的组进行编辑

常规栏中修改为“私有“然后点击保存即可

3、Teams AdminCenter中修改

使用Teams管理员登录到Teams管理中心 https://admin.teams.microsoft.com

在团队中搜索需要修改的团队,然后选择团队,点击编辑

在编辑中选择隐私为专用点击保存即可完成团队隐私修改

以上就是通过图形化界面去修改团队的隐私,上面说过了,还可以通过PowerShell来进行修改。

首先使用connect-msolservice连接到Office365 AAD

使用get-msolgroup来获取当然AAD中所有的组

然后记录下来teams组对应的objectid,这个是唯一值

接下来我们使用fl参数来显示这个组的所有详细参数,很可惜并没有access相关的配置,也就是说在AAD中使用PowerShell进行修改可能进行不下去了

鉴于可用在Exchange中进行修改,那么我们尝试通过Exchange Online PowerShell来进行修改这个组的隐私,先通过PowerShell远程连接到Exchange Online(关于PS1内容可参考我之前的博客

然后使用Set-unifiedgroup命令加accesstype参数来进行修改组的隐私模式

修改完成后get一下发现这个参数已经进行了修改

注意:accesstype参数只接受private和public

最终完成对团队的隐私修改

然后我们试下将一个专用的团队修改为公共团队,我这里很早之前建好了一个Take Photo的专用团队,如下

然后同样使用Set-unifiedgroup命令加accesstype参数来进行修改组的隐私模式,这里就要用public了,如下图

修改完之后Teams上这个团队也变成公共团队了

另外,如果团队创建者离职或因为其他原因无法控制团队,而此时团队中已经积淀了太多的数据,显然创建新的团队是非常不明智的做法,此时管理员也可通过增加此团队对应Office365组的所有者来增加新的团队负责人,新的团队负责人就拥有该团队最高的控制权限了。

以上是通过更改Office365组的配置信息来达到更改Teams团队访问属性,那么可以通过Teams PowerShell来直接更改吗?我的同事@Nome给我分享到微软已经在2019.04.30正式公开发布了Microsoft Teams Powershell,我测试了下也可以通过Teams PowerShell来更改团队访问权限,下面也跟大家分享一下吧。

首先需要使用Install-Module MicrosoftTeams来安装Teams PowerShell模块,安装完成后使用Connect-MicrosoftTeams远程连接到Teams

接下来使用Get-Team来获取当前Office365订阅下的所有团队

找到对应的团队,我这里以Teams这个团队作为演示,可以看出来在Teams中团队的唯一标识符是GroupID,而在Office365组中唯一标识符是Objectid,细心的同学可能已经发现其实这两个所谓的唯一标识符ID都是一模一样的,如下图

然后再Get-team看下针对Teams这个团队的所有信息,可以看到前面我将这个团队的访问权限已经改成了专用(私有),而这里的Visibility属性也是私有

接下来就使用Set-Team命令来设置Visibility属性了,如下图

然后重新打开Teams客户端,可以发现之前改成公共团队的Teams现在又变回专用团队了

经过以上的实际案例操作,大家应该对Office365组应该有了更深入的理解了。

其实Office 365组就是是Office 365中的跨应用程序成员身份服务。Office 365组是AAD中的一个对象,其中包含成员列表以及与相关工作负载的松散耦合,包括SharePoint团队站点,Yammer Group ,共享Exchange邮箱资源,Planner,Power BI和OneNote以及Teams!

当我们创建好了一个团队的时候,整改Office365后台将创建Office 365组以及关联的SharePoint文档库和OneNote笔记,以及与其他Office 365云应用程序的关联。

我从网络上找了两张图应该足以说明Office365组是个什么鬼

Before

Now

更多Office365组与Office365各组件的关系有机会再跟大家一起分享下吧。

下一篇文章给大家分享Teams如何与外部用户进行直接沟通。