我们集成TFS和SharePoint Server以后,一个最常见的需求是通过SharePoint Server的Excel Service读取TFS报表中的信息,利用Excel Service的强大功能,展现出各种漂亮的报表图像。
Excel Service读取外部数据需要账户,我们可以将这个账户配置在Secure Store Service (SSS)中,实现所有报表使用同一个账户链接TFS的数据库。
可以参考微软官方的文档https://technet.microsoft.com/en-us/library/ee806866.aspx 了解如何配置SSS,但是在配置过程中,当生成新密钥时间,经常出现下图提示的这个问题:
(“生成密钥”过程中发现错误。请重试或与管理员联系。)
这个错误提示实在太狗血了,完全不知道原因是什么。因为我使用的操作账户(TFSAdmin)已经是服务器的场管理员角色。
通过查询SharePoint Server的日志文件(C:\Program Files\Common Files\microsoft shared\Web Server Extensions\15\LOGS),日志文件详细没有权限,于是我把自己的操作账户配置为SSS的完全控制权限,同时还通过命令IISRESET重现启动了IIS(如下图),但是问题一样。
经过多次测试,重启系统,都无法解决问题。
最后意外的发现,将自己的操作账户添加到SharePoint Server的本地管理员组中(如下图),问题消失,可以生成新的密钥。
问题是的我操作账户本来就在Domain Admins组中,已经具备了本地管理员的权限,这是比较狗血的。成功生成密钥以后,我将操作账户移除出本地管理员组,也可以正常生成密钥。
实在无语!
http://www.cnblogs.com/danzhang/ ALM MVP 张洪君