Configuration de Excel Services (ECS) sur SharePoint 2010

Ce post a pour objectif de tracer les principaux point de la configuration de Excel Services pour SharePoint 2010. Comme methode de configuration je vous propose de suivre le cheminement d’une requête entre l’utilisateur et le dernier maillons de la chaîne, dans ce cas Analysis Services.

Principe Général

Excel services, permet à un utilisateur de se connecter à un fichier Excel qui consomme des données d’une source externe. Les données peuvent être également rafraichies à partir de la source dans le contexte de la session utilisateur.

Voici le trajet de la requête du client :

clip_image002

Apres avoir configuré la partie Active Directory (AD) il faut configurer Excel Services au niveau de SharePoint :

1)            Démarrer le service Claims to Windows Token Service sur le serveur exécutant Excel Services.

2)            Démarrer l’instance Excel Services

3)            Créer le Service Application et proxy pour Excel Services

4)            Définir pour le service Application : trusted file location et trusted data connections libraries

Nous reprenons ci-après ces étapes de manière détaillée.

Scenario

Ferme SPS 2010 avec un front end et un back end avec un serveur SQL qui contient aussi l’instance Analysis Services.

Les tableaux ci-dessous résument les paramètres que nous allons utiliser :

Utilisation (URL)

Application pool for web application ( https://intranet.domain.com )

Account

Domain\portal

Privilèges

X

SPN

HTTP/intranet

HTTP/intranet.domain.com

Trusted for delegation

yes

Constrained Delegation (use any authentication protocol)

X

 

Utilisation

Service Application for the Excel Calculation service (ECS)

Account

Domain\svcExcel

Privilèges

X

SPN

SP/Excelservices (fake SPN)

Trusted for delegation

X

Constrained Delegation (use any authentication protocol)

MSOLAPSvc.3/sql01.domain.com

MSOLAPSvc.3/sql01

MSSQLSvc/sql01.domain.com

MSSQLSvc/sql01

MSSQLSvc/sql01.domain.com:1433

MSSQLSvc/sql01:1433

 

Utilisation

Service account for the service C2WTS

Account

Domain\svcC2WTS

Privilèges

*Act as part of the operating system

*Impersonate a client after authentication

*Log on as a service

SPN

SP/C2WTS (fake SPN)

Trusted for delegation

X

Constrained Delegation (use any authentication protocol)

MSSQLSvc/sql01.domain.com;

MSSQLSvc/sql01;

MSSQLSvc/sql01.domain.com:1433;

MSSQLSvc/sql01:1433;

 

Utilisation

Compte Machine du Front End

Account

Domain\WFE_SPS$

Privilèges

X

SPN

X

Trusted for delegation

yes

Constrained Delegation (use any authentication protocol)

X

 

Utilisation

Compte Machine du Back End

Account

Domain\BACK_SPS$

Privilèges

X

SPN

X

Trusted for delegation

yes

Constrained Delegation (use any authentication protocol)

X

 

Utilisation

Compte Machine SQL / AS

Account

Domain\SQL1$

Privilèges

X

SPN

MSSQLSvc/sql01.domain.com;

MSSQLSvc/sql01;

MSSQLSvc/sql01.domain.com:1433;

MSSQLSvc/sql01:1433;

Trusted for delegation

yes

Constrained Delegation (use any authentication protocol)

X

Légende : X : ne pas configurer et n’est pas nécessaire

Note :

Les 2 comptes (Domain\svcExcel et Domain\svcC2WTS) qui vont être utilisés au niveau SharePoint doivent faire partie des comptes gérés par SharePoint à définir dans :

Central Administration (CA) > Security > Configure Managed Accounts > Register Managed Account .

Instructions détaillées

1) Démarrer le service Claims to Windows Token Service sur le serveur exécutant Excel Services.

i.  Dans la  Central Administration (CA) > Manage Services on server, sélectionner le serveur exécutant ECS et cliquer sur « start » pour le service « Claims to Windows Token Service ».

ii.  Vérifier que dans CA > Security > Configure service accounts que le compte pour « Windows Service – Claims to Windows Token Service » correspond bien à domain\svc2CWTS.

Note : Il existe un soucis au redémarrage d’un serveur pour le service C2WTS. Il conseillé de créer une dépendance avec le service Cryptsvc :

En ligne de commande comme administrateur exécuter

sc config “c2wts” depend= CryptSvc

iii. Au niveau du système de fichier dans <system drive>\program files\Windows Identity Foundation\v3.5\c2wtshost.exe.config ,

Ouvrir le fichier dans notepad.

Dans la section <allowedCallers>, ajouter le compte du pool d’application pour ECS

<allowedCallers>

      <clear />

      <add value="WSS_WPG" />

      <add value="domain\svcC2WTS" />

</allowedCallers>

2) Démarrer l’instance Excel Services

i. Pour que ECS puisse tourner correctement il faut que le compte domain\svcExcel ait des permissions sur la base de contenu de la web application. Pour cela lancer les commandes PowerShell suivantes :

$w = Get-SPWebApplication -Identity https://intranet.domain.com

$w.GrantAccessToProcessIdentity("domain\svcExcel")

ii. Dans la CA > Manage Services on server,

sélectionner le serveur qui fait tourner ECS,

cliquer sur « start » pour le service Excel Calculation Services

3) Créer le Service Application et proxy pour Excel Services

i. Il faut maintenant créer le Service Application pour ECS.

Dans CA > Application Management > Manage service applications, dans le ruban sélectionner « New » et « Excel Services Application »

clip_image001

 

4) Configuration du Service Application et des paramètres “trusted file location” et “trusted data connections”

Apres avoir validé cette page vous devez définir les sites qui seront autorisés à utiliser ECS.

i. Dans CA > Application Management > Manage service applications > « Excel Services Service Application name » > Trusted file locations > Add Trusted File Location,

Définir l’url de votre web application,

ii. Options de configuration : 

si vous voulez utiliser ECS dans l’ensemble de la collection de site, sélectionner l’option « children trusted » dans Location.

Si vous utilisez les connexions embarqués dans les fichiers Excel dans la partie « External Data » sélectionnez “trusted data connection libraries and embedded”.

C’est Fini !

Voilà nous avons terminé les étapes de configuration de ECS pour SharePoint 2010.

Il ne reste plus qu’à tester le rafraichissement des données à partir d’une web part Excel Web Access ou d’un fichier Excel qui utilise une connexion de donnée.

Cette partie ainsi que le troubleshooting feront partie d’un autre post …

Miguel Godinho | Support Escalation Engineer | SharePoint & Technologies | CSS