上一篇文章介绍了Teams如何与外部组织通信。但是在日常的工作中不免不了跨组织的协作,如:XX项目实施,可以通过Teams将甲方和乙方同时加到一个Teams当中,让项目进行更顺畅。下面跟大家分享如何将外部组织用户加入现有团队中。

在企业内部自建的各种系统中都会存在一个组织架构的东西,里面包含了公司分部门及人员分布情况,终端用户可以根据组织架构找到整个公司中任意一个用户。那么在Office365中有没有这样类似的东西呢?答案是肯定的,在全球版Office365中Teams就提供企业内部组织架构图。先来看看效果图(以下内容均为展示Demo内容)

感觉是不是很炫酷?找人是不是更加容易了?以人员信息卡作为分层卡片,可以很直观的看到当前这个用户是什么职务属于哪个部门,同时也可以一键发起IM音视频沟通,或者发送邮件。

往往在大型企业中还会有这样的应用场景,A部门员工小a某个项目可能需要B部门的小b提供技术支持,但是整个公司员工有成千上万,小a和B部门的员工基本不认识,那么这时候小a就需要通过邮件的形式告知自己部门领导和B部门领导及小b需要取得小b的技术支持,通过Teams的组织架构图就可以很轻松的找到B部门的领导以及小b。

要形成这套组织架构展示,需要Office365后台管理员完善每个用户的manager关系(其实这个东西就是AD用户属性中的经理,虽然在本地部署中大多数企业都不会去维护这个信息)。整理方式有两种:

第一:在Azure AD中找到用户属性,编辑属性中的经理信息就可以达到这样的效果。这个适用于小型组织只有几十个用户的情况

第二:通过在PowerShell中进行批量设置,也能达到一样的效果。适用于大中型企业如果组织架构比较复杂或者人员较多的时候推荐使用这种方法。

下面分别介绍下两种实现方法,图形化界面操作如下:

首先需要登录在office365管理中心,进入Azure AD

然后点击用户,搜索需要添加经理的用户

在作业信息中点击编辑

填写好经理关系(部门职务等也可以在这里维护),并点击保存

这样就设置完成了。

那么如果要批量进行设置呢,首先我搜索了Set-Msoluser命令发现,并不能在Azure AD PowerShell中直接去设置用户的manager属性。Set-MsolUser参考链接如下:

https://docs.microsoft.com/en-us/powershell/module/msonline/set-msoluser?view=azureadps-1.0

可以看到并没有Manager属性,那么我们就不能使用Set-MsolUser命令来进行批量设置了。

但是办法总归是有的,细心的同学可能会发现在Exchange 用户属性中也是是有经理属性的(由此可以发现图形化界面不仅仅可以在Azure AD中操作,也可以在Exchange管理中心操作),那么我们能不能用Exchange的PowerShell来进行设置呢?

我试了下连到Exchange Online PowerShell去设置是生效的,那么我们需要批量设置的话,就需要创建一个CSV文件,来对应用户和相应的经理是谁了

然后使用Powershelll连到Exchage Online 具体怎么连接可以参考Exchange Online基于网络位置限制使用中的描述

然后切换目录到存放CSV的位置,并使用以下命令进行设置

Import-CSV .csv|%{Set-User $_.Identity -Manager $_.Manager}

完成后查看打杂小弟B的属性,发现经理已经出现

这样就完成了整个设置。

CSV文件中可以包含整个组织的所有用户和经理关系,不需要一个部门一个csv文件去维护。