最近一段时间项目比较着急,一直没来得及更新博客(上一篇博客还是五一节前写的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如何与外部用户进行直接沟通。