现在的位置: 首页 > 综合 > 正文

读取OWA(Outlook Web Access)中未读邮件

2013年12月01日 ⁄ 综合 ⁄ 共 9118字 ⁄ 字号 评论关闭

      在SharePoint的项目中,经常会把SharePoint Exchange整合到一起,所以我们经常会遇到读取OWA中未读邮件的问题,当然解决的方法 也是多种多样的。有以下几种:

1.  WebDAV的方式

示例代码: 

  

 缺点主要在用户的凭证上面。

a.   通过用户的用户名和密码进行身份的认证。可以通过SharePoint的SSO存储用户的凭证信息

b.   加域的机器通过默认的身份凭证信息进行身份认证。这里面会有一个认证的设置。因为SharePoint中默认的认证方式是NTLM,认证的时候,需要使用用户名和密码,而Kerberos认证是通过票据进行认证的。所以我们要把相应的认证方式进行设置。

2.   通过Exchange Web Services方式

      通过Exchange Web Services 访问的方式也有2中得到未读邮件的方式:

a.   通过用户的用户名和密码进行认证,查询自己的未读邮件

示例代码:

  

b.  通过身份模拟的方式进行,这个好像只有Exchange 2007 中才有

示例代码:

 优点:

可以不用域环境就能访问用户的未读邮件

缺点:

直接使用代码是没有用的,会提示相应的错误信息:

The server to which the
application is connected cannot impersonate the requested user due to
insufficient permission.

 

必须在Exchange上的控制台上面使用以下的命令,才能正常的使用:

foreach ($exchangeServer in
Get-ExchangeServer)

{
     if
($exchangeServer.ServerRole -match 'ClientAccess')
     {
         
Add-ADPermission -Identity $exchangeServer.DistinguishedName -User 'domain"user'
-ExtendedRights ms-Exch-EPI-Impersonation
     }

}

 

抱歉!评论已关闭.