Exchange和Lync2013集成能够做到什么效果,并且在单独部署Lync的环境有一定的问题,比如用户头像的问题,比如Exchange和Lync的统一联系人存储,Lync将存档放在Exchange中,以及在Lync客户端使用历史对话记录选项卡等等,这些都是很有意义的功能。并且,将Lync和Exchange集成、一起来部署,这也是实现我们统一沟通的真正的价值和意义,从而实现真正的企业内外部的即时通信和异步通信。
2013平台的Lync和Exchange集成相比2010来说集成度更高,这是由于2013平台使用了Oauth的方式来建立服务器到服务器的身份验证,从而获得更好的、安全的相互通信。以下引用微软官方的文字来简单介绍一下Oauth:
对于2013版本,LyncServer2013(以及其他Microsoft服务器产品,包括Exchange2013和MicrosoftSharePointServer)都支持对服务器到服务器身份验证和授权使用OAuth(开放式授权)协议。OAuth是许多重要网站使用的标准授权协议,使用该协议时,用户凭据和密码不会从一台计算机传递到另一台计算机,而是通过交换安全令牌来进行身份验证和授权;这些令牌会授予在特定时间段内对一组特定资源的访问权限。
OAuth身份验证通常涉及到三方:一台授权服务器和两个需要相互通信的领域。(也可以在不使用授权服务器的情况下执行服务器到服务器身份验证,下文中将会讨论这一过程。)安全令牌由授权服务器(也称为安全令牌服务器)颁发给需要通信的两个领域;这些令牌会确认一个领域是否应信任源自另一个领域的通信。例如,授权服务器颁发的令牌可能验证来自LyncServer2013领域的用户是否能够访问指定的Exchange2013领域,以及相反情况。
然而使用Oauth的方式来做集成的话,需要Exchange和Lync服务器都有Oauth证书,那么,什么样的证书可以用作Oauth使用呢?
对于Lync来说是这样:
  • 证书包括主题字段中SIP域的名称。

  • 在所有前端服务器上配置与OAuthTokenIssuer证书相同的证书。

  • 该证书长度至少为2048字节。

对于Exchange2013来说,系统在安装时就会自动生成一个名为MicrosoftExchangeServer的自签名证书,即可用作Oauth服务器到服务器的身份验证。
除了对证书有特别要求外,在Exchange方面我们还需要准备的是Exchange的自动发现服务,我们可以通过在ExchangeManagementShell来快速的配置这一块内容。大致上我们需要准备的工作就是如此,可能大家比较关心的还是证书这一块,LyncServer2013在部署前端时会自动的要求我们配置一个Oauth证书。

141302609.png

在exchange中,安装完毕Exchange2013时就会自动的在我们的客户端访问服务器中安装一个自签名的Oauth证书。我们可以在Exchange管理中心-服务器-证书中看到这个证书。

141306123.png

证书准备完毕,下面来建立伙伴关系。

这里可给出technet的链接Lync与exchange集成

建立合作伙伴分为两步,需要在lync与exchange上分别运行命令来建立伙伴关系

首先在exchange服务器上建立,打开EMC,定位到:C:\Program Files\Microsoft\Exchange Server\V15\Scripts\

执行以下命令:

.\Configure-EnterprisePartnerApplication.ps1 -AuthMetaDataUrl ' https://lync13.contoso.com/metadata/json/1 ' -ApplicationType Lync
AuthMetaDataUrl是Lync前端服务器的地址。

141314277.png

检查DNS,确定正确建立autodiscoverA记录指向exchange客户端服务器,然后打开EMC,输入:

Get-ClientAccessServer|fl

141320991.png

保证我们的AutodiscoverServiceInternalUri地址格式为https://autodiscover.domainname/autodiscover/autodiscvoer.xml
从上面的运行结果可以看到,自动发现服务虽然默认就已经启用,但这里的uri是与我们所期望的不同的。所以这里建立大家将其修改为autodiscover.domainname形式,而不要是默认的exchange服务器FQDN形式。我们可以通过以下命令快速的将其进行配置:
Get-ClientAccessServer | Set-ClientAccessServer -AutoDiscoverServiceInternalUri " https://autodiscover.contoso.com/autodiscover/autodiscover.xml "
其中的-AutoDiscoverServiceInternalUri地址就是我们的新自动发现服务地址,其中的域名大家根据需要自行修改,这里如果成功的话执行结果不会给出任何反馈,没有错误提示那就表明我们已经成功配置了。

141324451.png

141327317.png

exchange上面基本配置完成。

下面进入lyncserver前端服务器,打开lyncserver命令行管理程序,输入

Set-CsOAuthConfiguration -Identity global -ExchangeAutodiscoverUrl "https://autodiscover.contoso.com/autodiscover/autodiscover.svc"

OAuth身份验证的配置,将全局配置的自动发现地址配置为我们刚刚所指定的地址。

141330989.png

这个时候报错了,查看了报错了原因。查了查网络上的解决方法,大概是DNS的问题,重新修改了autodiscover的DNSA记录

这里给出一个链接,可以去看看解决方法。http://social.technet.microsoft.com/Forums/lync/en-US/b4a3513a-0981-4254-b6b7-4ff9b9ac5d1b/problems-with-lync-and-exchange-ews-integration?forum=ocsucintegration

再次运行,成功。


做完这些操作,执行以下命令来建立与Exchange的伙伴应用程序关系了。
New-CsPartnerApplication -Identity Exchange -ApplicationTrustLevel Full -MetadataUrl " https://autodiscover.contoso.com/autodiscover/metadata/json/1"
这里的命令与我们刚才在Exchange服务器上执行的命令非常的相似,都需要指定一个Metadataurl和名称。但Lync多了一个ApplicationTrustLevel的参数,这是针对不同系统的不同参数,对于微软自家的系统来说我们需要将其配置为Full,但可能一些第三方的系统则可能不是这样配置。Exchange的元数据URL与Lync有一些不一样,是放在自动发现服务的虚拟目录中的,后面的/metadata/json/1也是一个固定值。autodiscvoer的域名还是根据不同的环境自行修改



141335628.png

使用命令检查。因为我的lync用户中有李飞的账户:lif@contoso.com。所以在这里输入:

test-CsExStorageConnectivity -SipUri lif@contoso.com

原理:Test-CsExStorageConnectivity -SipUri users@contoso.com命令来测试Lync与Exchange的集成了。此命令为验证服务器到服务器身份验证,会登录到Exchange2013将一个项目写入指定邮箱中的“对话历史记录”文件夹,然后删除该项目

141339550.png

这里报错,错误原因为accessdenied。

我们将运行命令的用户加入到RTCuniversaluseradmins组。这里我们将administrator加入。

141340418.png

添加完成之后注销

再次运行,测试通过。

141342760.png

第一部分完成。