配置Secure Store Service以访问Excel Service 2010

 [作者:林冠斌、葛伟华工程师 ,  Office/Project支持团队, 微软亚太区全球技术支持中心 ]

SharePoint  Server  2010作为微软新一代的拳头产品,已经在越来越多的企业中得到应用。文档管理、报表展示、商业智能等服务正在不断为企业的知识工作者 (Information Worker)服务。将来Office系列产品的发展趋势是过去在客户端使用的Office软件将逐步向服务器集成,形成Office Web App。用户在任何平台上通过浏览器即可实现文档的浏览和编辑(编辑功能会逐步完善,接近客户端体验),而不用端坐在办公室的电脑前,用特定的Office软件打开共享文件夹里的那个文档。

 

在诸多的Office Web App中,Excel Service是最早出现的。在 SharePoint Server 2007时它就已经发布,那时候还只提供阅读功能。在SharePoint Server 2010Excel Service已经具备在线编辑功能,于此同时其他借助于SharePoint Server的产品(比如Project ServerTeam Foundation Server等)也会使用Excel Service的功能来在线展示报表和图表。为了检查身份验证的步骤,这些产品通常都会让Excel Service(通过Secure Store Service)使用一个公共帐号去访问数据库中的数据,然后这个帐号会匹配到需要在线浏览Excel报表的用户组。这样只有特定用户组中的用户才能访问Excel报表。

 

由于Excel Service的配置过程比较复杂,出错的几率也较高。在我们处理过的案例中,绝大多数Excel Service无法访问的问题,都是环境配置的问题(比如用户权限、服务是否开启、帐号匹配是否正确等)。本文将介绍配置Secure Store Service以访问Excel Service 2010的完整步骤,希望对企业的IT管理员们有所帮助。

 

创建用户组和权限

 1.       AD中建立一个projdataaccess用户,赋予其数据库中db_datareader权限,如图:

 

2.       AD中建立一个安全组report viewers group

3.       AD中建立一个安全组report authors group(此安全组不是必须)。

 

启动SharePoint上的服务

 

我们要启动Excel Calculation Service服务Secure Store Service

1.       依次点击SharePoint管理中心-> 系统设置->管理服务器上的服务

 

2.       找到Excel Calculation Service,如果状态为已停止,请点击启动

3.       找”Secure Store Service,如果状态为已停止,请点击启动

 

 

新建Excel Service应用程序

 1.       依次点击应用程序管理-> 管理服务应用程序,如果已经列出Excel Services应用程序,可以跳过这一步。如果列出没有Excel Services应用程序,就请点击新建->Excel Services应用程序

 

2.       依次填入名称,是否使用新建应用程序池(需提供新应用程序池名称)或使用现有应用程序池

3.       再确定可配置账户,此处我们使用场管理员账号(实际情况中,可以改用其他管理员帐号)。

 

 

新建Secure Store Service

 

仿照上一步新建Secure Store Service,而且我们必须指定Secure Store Service上的数据库的名称或使用默认的数据库名称(默认命名方式为“服务名+DB+ 随机GUID”)。

 

对于应用程序池的设置,可以点击Secure Store Services->使用现有应用程序池->SharePoint Web Services Default

 

新建State Service

 

方法同上。

 

将服务应用程序代理关联到Web应用程序

 

服务应用程序代理默认与当前的Web应用程序进行关联,我们可以在SharePoint管理中心->应用程序管理->配置服务应用程序关联中查看关联:

 

关联如下图所示:

 

以上都配置好后,我们的Excel Service应用程序Secure Store Service就处于可用状态了。

 

配置Secure Store Service

 1.       管理服务应用程序页面上,点击Secure Store Service应用程序,点击管理

 

2.       点击生成新密钥,务必妥善保管此密钥,此密钥用于加密早先创建Secure Store Service的数据库。

 

3.       输入两次通行短语之后,点击确定

4.       点击新建来创建新的目标应用程序

 

5.       依次填入目标应用程序ID显示名称联系人邮件目标应用程序类型

 

6.       点击下一步

7.       下面设置目标应用程序ID的验证方式。默认会使用Windows验证,因此我们可以看到两个字段:Windows用户名Windows密码。保留以下设置,点击下一步

 8.       依次填入目标应用程序管理员和成员。下图中v9\report viewers group为域用户级别安全组。

注:目标应用程序管理员是拥有可以此目标应用程序的管理权限的设置权限。

成员是映射到为此目标应用程序定义的凭据的用户和组,下一步会讲解此用户组具体的意思。

9.       确定后,我们要给此目标应用程序设置凭据。请勾选要设置凭据的目标应用程序,然后点击设置

 

10.   我们看到,此处凭据所有者report viewers group,它是灰色的状态,不能修改,在之前我们建立目标应用程序的时候指定了它为成员。下面是另一个域用户,v9\projdataaccess。这里的意思是,report viewers group使用v9\projdataaccess用户的身份来读取数据库中的权限。

 

11.   点击确定之后,Secure Store Service就配置完成了。

 

配置Excel Service处理外部数据连接

 

如果您需要Excel Service打开的Excel文件中有外部数据连接(比如连接到SQL Server的表格),我们需要进行下面的1-3步。如果Excel文件没有外部连接数据的话,可以跳过这一节。

 1.       全局设置

a.       回到管理服务应用程序中。

b.      选择Excel Service应用程序->全局设置

c.       全局设置中,找到应用程序ID,填入之前我们设置的ExcelServiceTest,然后点击确定。

 2.       受信任文件位置

a.       点击Excel Service应用程序->受信任文件位置

b.      点击添加受信任文件位置

c.       填入Excel档案将会放置的文档库地址,或其父站点的地址。勾选信任子库或子目录下的受信任的子级

d.      其它保持默认。

3.       受信任数据连接库

a.       点击Excel Service应用程序->受信任数据连接库

b.      点击添加受信任数据库连接库

c.       填入数据库连接库的地址,然后按确定

 4.       Excel文件上传到SharePoint文档库

 a.       您需要使用一个有权限访问数据库的用户来登录计算机。

b.      启动Excel,来创建一个有外部数据的文件。

c.       在保存数据连接文件并完成的对话框中,点击浏览。

d.      输入数据连接文档库的连接,将此连接文件保存至此。

e.      保存数据连接文件并完成的对话框中,点击身份验证设置

f.        选择SSS,填入SSS ID,这里就是填入ExcelServiceTest,然后点确定

g.       点击完成

h.      将数据编排放好后,保存到SharePoint的共享文档库里(此为受信任位置中所设的网址)。 

i.        点击保存

 

大功告成!

 

当您把需要的用户加到report viewers group当中之后,所有的配置已经完成。您可以用这些在report viewers group中的用户通过浏览器来查看Excel文档了,如下图所示:

 

 

参考资料

 

Excel Services 概述 (SharePoint Server 2010)

http://technet.microsoft.com/zh-cn/library/ee424405.aspx

 

Excel Services 体系结构概述

http://technet.microsoft.com/zh-cn/library/ff604006.aspx

 

规划 Excel Services 数据源和外部连接

http://technet.microsoft.com/zh-cn/library/ff604007.aspx

 

规划 Excel Services 身份验证 (SharePoint Server 2010)

http://technet.microsoft.com/zh-cn/library/ee662541.aspx#section4

 

配置 Project Server 2010 报告(使用Excel Service 2010

http://technet.microsoft.com/zh-cn/library/ee662106.aspx