Configuring Kerberos Delegation (without infrastructure update)
This blog post will detail the steps needed to configure a SharePoint farm to successfully delegate credentials to a backend data source without the Infrastructure update (Infrastructure update for SharePoint 2007 resolves an issue with SSP delegation which I will talk about in my next blog post). To configure Kerberos delegation in a SharePoint farm with Infrastructure update already installed please refer to this technet article: Configure Kerberos authentication (Office SharePoint Server).
Configuring Kerberos delegation in a SharePoint farm for Excel Services involves the following steps:
Setting up SPN's:
As mentioned in the Kerberos Protocol blog post, setting up SPN's is an essential prerequisite for Kerberos delegation. Following is an example of the SPN's that will need to be setup where the data source is a SSAS 2005 cube:
Id
Service Class
Host
Service account
1
HTTP
All servers which have WFE configured
Web app's app pool account
2
HTTP
All servers which have ECS configured
SSP Account
3
HTTP
MOSS Server configured for Index server role
SSP Account
4
MSOLAPSvc.3
SSAS Server
SQL Server Analysis Server Account
Note: Setup SPN's for both netbios name as well as FQDN names.
In addition, constrained delegation will need to be setup for the following SPN's:
- Between the set of SPN's in 1 and the set of SPN's in 2
- Between the set of SPN's in 2 and the set of SPN's in 4
Enabling Kerberos for Shared Services Provider:
The web front end (step 1) rendering the excel report calls the ECS component (step 2) to refresh the data (refer section for more details). To make ECS delegate user credentials to back end data sources, Kerberos authentication will have to be enabled for the web site hosting the ECS component.
Running the following stsadm command will change the authentication settings of the "Office Server Web Services" (refer to the following blog posts for more details: SharePoint Server 2007 and Enterprise Search) web site to use only Kerberos protocol:
STSADM –o setsharedwebserviceauthn –negotiate
STSADM –o execadmsvcjobs
Enabling delegation for ECS
Enabling Kerberos authentication protocol would provide the ability for the ECS sitting under that web site to delegate the end user credentials to the back end sources. But to specifically let ECS to do the delegation following stsadm admin command has to be executed:
STSADM –o set-ecssecurity –ssp <SSPTitle> -accessmodel delegation
STSADM –o execadmsvcjobs
Execution of the above commands would result in ECS successfully forwarding the Kerberos token to the data source (step 3).
After completion of the above steps, you should be able to refresh your excel based report in a browser with user credentials successfully getting forwarded to your data source.
Comments
Anonymous
November 14, 2008
PingBack from http://blog.a-foton.ru/index.php/2008/11/14/configuring-kerberos-delegation-without-infrastructure-update/Anonymous
December 04, 2008
If you had followed our blog post Configuring Kerberos Delegation (without infrastructure update) , youAnonymous
December 05, 2008
One of the main charters of our group, Marketing Platform and Services, is to be a partner to Microsoft