Rencontre Mensuelle Québec OCTOBRE 2009
Transcription
Rencontre Mensuelle Québec OCTOBRE 2009
Groupe d’usagers SharePoint Québec Rencontre Mensuelle – Chapitre Montréal Mardi le 10 juillet 2012 Agenda Discussion sur l’organisation du groupe d’usagers Présentation Secure Store Services (Serge Tremblay) Présentation configuration de Reporting Services avec Kerberos (Nicolas Georgeault) Conclusion Discussion sur l’organisation du groupe d’usager Rencontre pour la prochaine année Soirée Thème Langue Invitation de 3rd party Organisation d’une journée SharePoint Annonces WPC Live Fin du support pour MOSS 2007 et WSS 3.0 le 9 Octobre 2012 http://www.digitalwpc.com/ http://www.sharepointquebec.org/blog/Lists/Billet s/Post.aspx?ID=63 Yammer et Microsoft http://www.sharepointjoel.com/Lists/Posts/Post.a spx?ID=562 Nouvelles publications How to configure Claim to Windows Token Services in SharePoint 2010 with Kerberos Authentication How to configure Visio Graphics Services in SharePoint Server 2010 for Kerberos authentication http://support.microsoft.com/kb/2722087 http://support.microsoft.com/kb/2723977 Change in behavior of SharePoint Server 2010 Output Cache after April 2012 CU http://support.microsoft.com/kb/2714963 Unable to customize form for published content types H ttp://support.microsoft.com/kb/2717706 Présentation Secure Store Service Serge Tremblay Pourquoi utiliser le service SSS Windows ne permets à un serveur de passer les informations utilisateur d’un serveur vers l’autre. On appel ça communément le double hop. 7 Solution La solution est d’utilisé l’authentification Kerberos ou le service de banque d’informations sécurisé Service Banque d’informations sécurisé (SSS) Le Service Banque d’informations sécurisé remplace la fonctionnalité Authentification unique (single sign-on) de Microsoft Office SharePoint Server 2007. 9 Service Banque d’informations sécurisé (SSS) Le service Banque d'informations sécurisé est un service d'autorisation qui s'exécute sur un serveur d'applications: C’est un service partagé qui fournit le stockage et le mappage d’informations d’identification telles que les noms de comptes et les mots de passe. Fonction Le service Banque d'informations sécurisé fournit une base de données qui est utilisée pour le stockage des informations d'identification (composées d'une identité utilisateur et d'un mot de passe) pour les ID d'application qui peuvent être utilisées par les applications pour autoriser l'accès aux ressources partagées. SharePoint Foundation et le SSS SharePoint Foundation n’a pas de SSS vous aurez donc besoin de Kerberos. Mais Search Server Express vient avec SSS, donc si vous ajoutez SSE (gratuit) sur un Foundation (gratuit) vous pourrez vous connecter aux BD externe sans frais. http://technet.microsoft.com/frfr/library/ee806889.aspx 12 Création d’application Type d’application cible Il existe plusieurs types d’applications cibles qui appartiennent à deux catégories principales : les applications cibles individuelles et les applications cibles de groupes. Application de groupe ou individuel? Si chaque utilisateur possède un compte dans l’application cible, choisissez le type « individuelle ». Si l’application cible utilise un compte pour tous les utilisateurs, choisissez le type « groupe » Application de groupe L’application de groupe permet au membres d’un groupe définit d’utiliser le même compte générique lors d’une connexion. Les utilisateurs ne connaissent pas le nom du compte et le mot de passe utilisé et n’auront pas à fournir d’information lors de la connexion. Application individuel Lors de l’utilisation d’application individuel, chaque utilisateur devra fournir un compte et un mot de passe la première fois qu’il se connectera. Ces informations seront stockés dans la base de données et pourront être utilisé lors des prochaines connexions. Définir les autorisations pour l’application Une fois l’application créée vous devrez définir les autorisation et les information d’identification Autorisations Champs pour authentification Autorisations SQL Démo Configuration et utilisation du Secure Store Service Recommandations Exécutez le service Banque d'informations sécurisé dans un pool d'applications distinct qui n'est utilisé pour aucun autre service. Exécutez le service Banque d'informations sécurisé sur un serveur d'applications distinct qui n'est utilisé pour aucun autre service. 23 Recommandations Créez la base de données du service Banque d'informations sécurisé sur un serveur d'applications distinct exécutant SQL Server. N'utilisez pas la même installation de SQL Server qui contient les bases de données de contenu. Recommandations Vous devez sauvegarder la base de données service Banque d'informations sécurisé après qu'elle a été initialement créée, puis à nouveau à chaque fois que le renouvellement du chiffrement des informations d'identification est effectué à l'aide de la nouvelle clé. Recommandations (Suite) Avant de générer une nouvelle clé de chiffrement, sauvegardez la base de données du service Banque d'informations sécurisé. 26 Recommandation Si l'actualisation de la clé échoue ou si la phrase de passe est oubliée, les informations d'identification ne seront pas utilisables. Recommandation (Stockage) Ne stockez pas le support de sauvegarde de la clé de chiffrement au même emplacement que le support de sauvegarde du service Banque d'informations sécurisé. Si un utilisateur obtient une copie à la fois de la base de données et de la clé, les informations d'identification stockées dans la base de données risquent d'être compromises. Liens http://technet.microsoft.com/fr-fr/library/ee806866.aspx http://office.microsoft.com/fr-fr/sharepoint-online-enterprisehelp/gerer-le-service-banque-dinformations-securiseHA102677932.aspx#_Toc295729075 http://msdn.microsoft.com/fr-fr/library/ee556780.aspx Configurer Kerberos et SharePoint 2010 10 Juillet 2012 Nicolas Georgeault Architecte SharePoint, MVP SharePoint, Public Consulting Group Courriel: [email protected] Agenda Qu’est-ce que Kerberos, et pourquoi en avons-nous besoin? Les SPNs requis pour SharePoint 2010 Configurer le service C2WTS Démos Scenario 1 – Services Excel vers les Services d’Analyses Scenario 2 – Applications Web (Afficheur RSS) Scenario 3 – Bases de données SQL Server Scenario 4 – Services de Rapports SQL Server Trucs, astuces et Liens utiles Questions References… Martin Hatch - SharePoint User Group UK (SUGUK) http://www.martinhatch.com/ De longues journées et nuits a comprendre et a mettre en place… Demo Environment Domaine AD: “skopus.local” Web Server App Server Data Server wfe1.skopus.local app1.skopus.local olap1.skopus.local http://portail/ http://portail-rss/ Services d’ Analyses SQL Services Excel Bases de données SQL Server (DBs SP) En general… Alors vous deployez en production… Mais alors que ce passe-t-il? CHAMPAGNE!! Tous fonctionne bien… C’est facile Production Développent ;) BAM! “Login failed for user 'NT AUTHORITY\ANONYMOUS LOGON'" Le fameux problème de “Double-Hop” Le “double hop” fait référence a la situation ou un service (Service A) doit utiliser l’identite de l’utilisateur (John) pour être identifier auprès d’un autre service comme cet utilisateur. C’est ce qu’on appelle la “Délégation” bob bob Delegation John Client Service A Service B Le défis c’est que l’authentification par défaut de Windows (NTLM) ne supporte pas la délégation. Voila pourquoi le second service reçoit une demande de connexion NULL (connexion anonyme) Qu’est-ce que Kerberos ? Protocole d’Authentification Le plus sécurisé des Protocoles d’Authentification Windows Tellement plus efficace que NTLM Vous permets de “déléguer l’authentification” (ex: multi-hop) Si vous être authentifie par une source de données “au nom de l’utilisateur actuel” Alors vous n’y couperez pas… Kerberos est indispensable! SQL Server n’est pas “Claims aware” (en version pré SQL 2011) Services de Rapports SQL Server (SSRS) Services d’Analyses SQL Server (SSAS) Kerberos Authentication Example svcPortal SPN: HTTP/portail KRB_AS_REQ 1 John 2 Client KRB_TGS_REQ 5 KRB_AS_REP SPN 6 svcPortal KRB_TGS_REP KRB_AP_REQ 7 HTTP GET svcPortal 3 KRB_AP_REP Serveur 4 ACCESS 8 DENIED svcPortal http://portail KDC skopus.local Prérequis Kerberos Avoir le temps… Etre super copain avec l’administrateur du domaine. Un Service de synchronisation du temps! Une ferme SharePoint 2010 Des comptes de services correctement crées (Dépend de vos besoins) Un services DNS opérationnel (un fichier Host peut dépanner) Configuration d’Active Directory (SPN, Délégation) Configuration de SharePoint Configuration IIS (Kernel Mode) Port de communication non bloque (par défaut TCP/UDP 88) Ok… Mais c’est quoi un SPN? “SPN pour Service Principal Name est le nom par lequel un client identifie de manière unique une instance d'un service.” Plusieurs instances > Un SPN pour chaque instance. Plusieurs noms > Un SPN pour chaque nom si besoin d’authentification. Une instance de service peut enregistrer un SPN pour chaque nom ou l'alias de l'hôte. http://support.microsoft.com/kb/929650/fr DNS Nom D’Hote (A Record) seulement, PAS D’ALIAS (CNAME) Nom D’Hote (A Record) seulement, PAS D’ALIAS (CNAME) Nom D’Hote (A Record) seulement, PAS D’ALIAS (CNAME) Nom D’Hote (A Record) seulement, PAS D’ALIAS (CNAME) Nom D’Hote (A Record) seulement, PAS D’ALIAS (CNAME) Nom D’Hote (A Record) seulement, PAS D’ALIAS (CNAME) Nom D’Hote (A Record) seulement, PAS D’ALIAS (CNAME) Nom D’Hote (A Record) seulement, PAS D’ALIAS (CNAME) !!! On vous l’a dit? SPNs Active Directory utilise les “Service Principal Names” (SPNs) pour identifier les objets dans une implémentation Kerberos. Un SPN consiste en: <un type de service> / <un nom de domaine> : <un port> Vous créez les SPNs en utilisant la commande setspn.exe: setspn.exe –S <SPN> <domain>\<account> Il faut être administrateur du domaine pour utiliser la commande Lister tous les SPNs pour un compte setspn.exe –L <domain>\<account> Trouver tous les SPNs dupliques setspn.exe –X Déléguer ses supers pouvoirs! Vous avez déjà probablement essaye de déléguer ce pouvoir… Avec un Control total ce sera parfait ;) Failed!!! La délégation n’est pas une permission… Mais un droit d’utilisateur ntrights -u DOMAIN\useraccount +r SeEnableDelegationPrivilege Web Applications Les Applications Web utilisent le protocole “HTTP”. Le numéro de Port est EGALEMENT requis si vous n’utilisez pas un numéro de port non-standards Note, Le SPN reste HTTP même pour les applications en SSL! Vous devez déclarer le nom de domaine ET le FQDN de l’URL pour cette application web. Ex: http://portail ou https://portail dans le domaine skopus.local HTTP/portail HTTP/portail.skopus.local Ex: http://nonstandardport:8080/ dans le domaine skopus.local HTTP/portail:8080 HTTP/portail.skopus.local:8080 HTTP/portail HTTP/portail.skopus.local A appliquer au COMPTE DE SERVICE du POOL D’APPLICATION de cette Application Web. Bases de données SQL Les Bases de données SQL utilisent le protocole “MSSQLSvc” Vous devez déclarer le FQDN du serveur SQL (Indépendamment du fait que vous utilisiez les alias SQL!) Création automatique du SPN Si le Server SQL fonctionne avec les comptes Local System ou un compte Admin du domaine, il créera automatiquement le SPN quand l’instance est démarrée. Ok… Vous devriez vraiment faire cela manuellement! Mes serveurs SQL sont “app1.skopus.local” Les SPNs devront être: MSSQLSvc/app1.skopus.local MSSQLSvc/app1.skopus.local:1433 (Bonne pratique SQL… Changer le port par défaut) A appliquer au COMPTE DE SERVICE de l’instance de la base de données! Les Services d’Analyses SQL Server Les services SSAS utilisent le protocole “MSOLAPSvc.3” Vous devez déclarer le nom de domaine ET le FQDN de votre server SSAS sans aucun numéro de port! Mes services SSAS sont installes sur “olap1.skopus.local” Les SPNs dont j’ai besoin sont: MSOLAPSvc.3/olap1 MSOLAPSvc.3/olap1.skopus.local A appliquer au COMPTE DE SERVICE des Services d’Analyses SQL de l’instance SSAS! L’Authentification dans SharePoint 2010 Clients Ferme SharePoint Classic (Windows Auth) Systeme externe Classic (Windows Auth) Claims Claims Authentification Entrante Claims Authentification Intra/Inter Ferme Authentification Sortante Normalisation de l’identite Classique Claims/Revendications NT Token NT Token Windows Identity Windows Identity ASP.Net (FBA) SAL, LDAP, Custom SAML Token Claims Based Identity SPUser SAML1.1+ ADFS, etc. Normalisation des revendications vers l’identite Windows NTLM Kerberos CLAIMS John WFE APP SQL Le service C2WTS C2WTS: Claims to Windows Token Service traduit les “Informations d’autorisation basées sur les revendications” interne a SharePoint en Informations d’autorisation Windows. C2WTS est un Service Windows Fonctionne par défaut avec le compte “Local System” Bonne pratique: Utiliser un Compte de Domaine Vous devrez créer un SPN fictif pour le C2WTS. Nous en auront juste besoin pour la Délégation Contrainte. Nous créons le SPN “SP/C2WTS” A appliquer au COMPTE DE SERVICE du service Windows C2WTS Le service C2WTS “ Les applications de service suivantes exigent la traduction des informations d’identification fondées sur les revendications vers les informations d'identification Windows. Ce processus de traduction utilise le Claim To Windows Token Service (C2WTS): Excel Services PerformancePoint Services InfoPath Forms Services Visio Services TechNet - http://technet.microsoft.com/enus/library/ff607695.aspx ” Example de service C2WTS C2WTS S4U Logon SAML Kerb AD Excel Services SAML Kerb NTLM Kerberos SAML John WFE APP SQL Configurer C2WTS C2WTS requière le service “Cryptographic Service” veillez vous assurer de mettre en place la dépendance! Le service C2WTS essayera de vérifier les certificats de sécurité Microsoft a son démarrage; cela nécessite une connexion Internet et les connexions par Proxy ne sont pas supportées! Contournement1 - .Net 4 Install .Net Framework 4 (which supports Proxy connections) Some reported issues with SharePoint PowerShell and .Net 4 Contournement2 – Desactiver le controle de CRL (Liste de Revocation des Certificats) HKEY_USERS\.DEFAULT\SOFTWARE\Microsoft\Windows\CurrentVersion\WinTrust\Trust Providers\Software Publishing Value = State Radix= decimal Changer la valeur a '146944' pour desactiver le controle de CRL Contournement3 – Fichier HOSTS Ajouter une entrée dans le fichier host “crl.microsoft.com” vers 127.0.0.1 Configurer C2WTS Le compte de service C2WTS doit être administrateur local sur le server sur lequel il est en fonction. Ce compte doit en plus avoir les permissions suivantes: Act as part of the operating system Impersonate a client after authentication Log on as a service En utilisant la gestion des règles de sécurité de la machine locale (secpol.msc) Scenario 1: Services Excel vers les Services d’Analyses Requête Web WFE Interne Requête de donnée (Claims) (Kerberos) Service Services Excel d’Analyses STS SQL Server C2WTS SP/c2wts MSOLAPSvc.3/ SP/excel olap1.skopus.local Delegation Contrainte Services Excel et C2WTS Dans notre démo nous avons les paramètres suivant: Le compte de service des Services Excel: “SKOPUS\SkpSvcExcel” Le compte de service de C2WTS: “SKOPUS\SkpSvcC2WTS” Les services SSAS fonctionnent sur le serveur “olap1.skopus.local” Le compte de service des services SSAS est “SKOPUS\SkpSvcSQLAnalysis” Donc il nous faut configurer les SPNs suivant: setspn.exe –S SP/excel SKOPUS\SkpSvcExcel setspn.exe –S SP/c2wts SKOPUS\SkpSvcC2WTS setspn.exe –S MSOLAPSvc.3/olap1.skopus.local SKOPUS\SkpSvcSQLAnalysis setspn.exe –S MSOLAPSvc.3/olap1 SKOPUS\SkpSvcSQLAnalysis La Délégation Contrainte est paramétrée par Active Directory Users & Computers Services Excel vers les Services d’Analyses DEMO Configurer Kerberos et SharePoint 2010 Conclusion: Services Excel vers les Services d’Analyses Les SPNs NE sont pas requis sur l’Application Web C2WTS fait tout le “Sale” boulot ;) Tant que vous utilisez des comptes du domaine, vous n’aurez a configurer les SPNs et la Délégation Contrainte qu’une seule fois.. Peut importe le nombre de serveurs Excel vous installerez! PerformancePoint Services Fonctionne exactement de la même façon (et si vous avez déjà configure les Services Excel alors le paramétrage de C2WTS a déjà été fait!) Scenario 2: Le Lecteur de flux RSS http://portail/ http://portail-rss/ Requete Web Requette Lecteur RSS (Kerberos) (Kerberos) WFE 1 APP 1 Lecteur RSS HTTP/portail-rss HTTP/portail Delegation Constrainte Configurer l’Application Web Administration Centrale – Changer le fournisseur d’authentification pour Kerberos Vous devez créer les SPNs pour votre application Web Dans notre exemple, vous avez 2 URLs d’Application Web http://portail et http://portail-rss/ Le domaine AD est skopus.local Le compte du pool d’application est SKOPUS\SkpAppPool Il vous faut donc configurer les SPNs suivants: setspn.exe –S HTTP/portail SKOPUS\SkpAppPool setspn.exe –S HTTP/portail.skopus.local SKOPUS\SkpAppPool setspn.exe –S HTTP/portail-rss SKOPUS\SkpAppPool setspn.exe –S HTTP/portail-rss.skopus.local SKOPUS\SkpAppPool Délégation Contrainte: portail portail-rss Application Web DEMO Configurer Kerberos et SharePoint 2010 Scenario 3: Serveur SQL de données Pas réellement “requis” mais recommande nous avons dons Kerberos de disponible dans l’installation (Plus efficace aussi!) SQL fonctionne sur le serveur app1.skopus.local Le compte de service SQL est “SKOPUS\SkpSqlDbSvc” Le port de la base de donnees SQL est 60433 Il nous faut donc configurer les SPNs suivants: setspn.exe –S MSSQLSvc/app1.skopus.local:60433 SKOPUS\SkpSqlDbSvc setspn.exe –S MSSQLSvc/app1.skopus.local SKOPUS\SkpSqlDbSvc Le Serveur SQL de donnees DEMO Configurer Kerberos et SharePoint 2010 Conclusion: Le Serveur SQL de données Rapide et facile (Pas de redémarrages nécessaires) Requête SQL pour vérifier que les connexions fonctionnent: Select s.session_id, s.login_name, s.host_name, c.auth_scheme from sys.dm_exec_connections c inner join sys.dm_exec_sessions s on c.session_id = s.session_id where s.host_name = ‘WFE1’ Le journal d’evenements sur le Serveur Web Evènement de connexion (4624) Le Package d’authentification devrait être “Kerberos” Scenario 4: SQL Server Reporting Services Web Request Web Service Data Request (Kerberos) (Kerberos) (Kerberos) WFE HTTP/kerberos SQL Server SQL Server Reporting Analysis Services Services HTTP/app1 MSOLAPSvc.3/ olap1.sp2010.local Constrained Delegation Scenario 4: Services de Rapports Les Services de Rapport SQL Serveur (SSRS) fonctionne depuis un Service Web sur la machine Reporting Services, c’est une connexion HTTP standard La web part de l’affichage de rapport (sur le Frontal Web) est le lien de communication avec SSRS Ainsi nous aurons besoin de: Un SPN pour l’application Web (Ou s’execute la web part de l’afficheur de rapports) Un SPN pour notre URL du service Web de SSRS Une délégation depuis l’Application Web Le service Web SSRS (2ieme hop) Un SPN pour le service SSAS Une délégation depuis le service Web SSRS SSAS (3ieme hop) Scenario 4: Services de Rapports Nous avons deja configure les SPNs suivants (dans les etapes 1 et 2): L’Application Web Les Services d’Analyses SQL Server (SSAS) Donc il nous manque juste les SPNs pour les services de rapport setspn.exe –S HTTP/app1.skopus.local SP2010\SkpSqlRpSvc setspn.exe –S HTTP/app1 SP2010\SkpSqlRpSvc La Délégation Contrainte est, cette fois encore, paramétrée par Active Directory Users & Computers SSRS SSAS DEMO Configurer Kerberos et SharePoint 2010 Désolé Mais ca prend du temps! Conclusion: SSRS SSAS Le Service Web SSRS est une Application Web Les SPNs sont requis pour les Services Web SSRS Comme SSRS ne support pas le Claims en 2008 R2, Kerberos fera toujours le hop depuis le Frontal Web! Mais ca change ;) Vive SQL 2012… Si les Services SSRS sont montes en grappe, il faut alors utiliser l’adresse du cluster. Le journal d’evenements Windows et le Profiler SQL sont des moyens simples pour voir si cela fonctionne Le même journal d’evenements est utilise pour l’Application Web Les mêmes vérifications faites pour les services Excel avec le Profiler SQL Trucs et astuces… C2WTS peut être compliquer a paramétrer. Le service doit fonctionner sur le bon serveur… Les applications web utilisant une authentification basée sur formulaires ou sur SAML personnalise NE PEUVENT PAS UTILISER C2WTS Les Délégations Contraintes Kerberos ne peuvent pas traverser les frontières du domaine Les Applications de Service Applications et les sources de données externes doivent donc être dans le même domaine Le Serveur Windows 2008 contient un bug connu Kerberos AES bug Limitée toutefois au fait de fonctionner avec 2 machines qui seraient équipées de Windows Server 2008 ou Windows Vista (ca ne serait quand même pas de chance :P) Un Hotfix Microsoft est disponible; http://support.microsoft.com/kb/969083 Note – Ce bug n’existe pas avec Windows Server 2008 R2! Les SPNs sont vraiment très faciles a casser... Toutes erreur de type peut être fatale! Trucs et astuces… PowerPivot Pensez a paramétrer le fichier web.config caché dans : “C:\Program Files\Common Files\Microsoft Shared\Web Server Extensions\14\ISAPI\PowerPivot” Reporting Services Pensez a paramétrer le fichier de connexion rsreportserver.config caché dans le répertoire du service SSRS “ C:\Program Files\Microsoft SQL Server\MSRS10_50.MSSQLSERVER\Reporting Services\ReportServer ” Lancez vous.. PREVOYEZ PREVOYEZ PREVOYEZ Plus de 90% des mauvaises implémentations proviennent d’erreurs de configuration des SPNs Kerberos est un prérequis pour certains scenarii de business intelligence Pas besoin d’exorciste, ni magie noire… Vous pouvez vérifier le fonctionnement avec des outils standards Journaux d’evenements Windows (Sur les Serveurs Web) SQL Profiler (Sur les Bases de Données) Fiddler (Sur le Client) Il faut maitriser l’AD… Donc prévoyez de vous faire de nouveaux amis chez les Administrateurs de votre domaine. La délégation est un prérequis si vous vous engages sur le service Liens Utiles… TechNet – What is Kerberos Authentication? http://technet.microsoft.com/enus/library/cc780469(WS.10).aspx Microsoft Guide – Configuring Kerberos Authentication for Microsoft SharePoint 2010 products http://www.microsoft.com/download/en/details. Questions... A mon tour ;) Question 1 Une nouvelle Application web vient d’etre ajoutée a SharePoint avec le host header REPORTS. Le site SharePoint se trouve sur le serveur frontal SP2010-WFE-01.skopus.com. L’application devra etre accessible par l’adresse https://reports.skopus.com. Quelle(s) ligne(s) de commande dois-je utiliser pour ajouter les Service Principal Names corrects? setspn.exe –s HTTP/reports SP2010-WFE-01 setspn.exe –s HTTP/reports.skopus.com SP2010-WFE-01 Question 2 Que dois-je verifier dans mon DNS pour assurer le bon fonctionnement de Kerberos? Nom d’Hote (A Record) seulement Et surtout… Surtout pas d’Alias (CNAME) Problèmes Kerberos connus Annexes Configurer Kerberos et SharePoint 2010 HTTP and non-default ports Issue: Clients (.NET, IE) create malformed SPNs for HTTP services running on non-default ports by forming the SPN without port number. http://support.microsoft.com/kb/908209/en-us http://technet.microsoft.com/enus/library/cc263449.aspx Example: If the web application is running at http://intranet.contoso.com:1234, the client will create a SPN for http/intranet.contoso.com instead of http/intranet.contoso.com:1234 HTTP and non-default ports To workaround this issue, register SPNs with and without port number. Example: Actual URL: http://intranet.contoso.com:12345 SPNs: http/intranet http/intranet.contso.com http/intranet:12345 http/intranet.contoso.com:12345 Option 2: To resolve this issue, you'll need to set the FEATURE_INCLUDE_PORT_IN_SPN_KB908209 registry value (as per http://support.microsoft.com/kb/908209). SPN Uses Host Name instead of Alias Issue: Clients (.NET, IE) create malformed SPNs by using the host name instead of the alias name of the target service http://support.microsoft.com/kb/911149/en-us http://support.microsoft.com/kb/938305/en-us Example: A Record: wfe01.skopus.local CNAME: intranet.skopus.local (aliases wfe01.skopus.local) If the client attempts to authenticate with http://intranet.skopus.local it creates a malformed SPN and requests a Kerberos ticket for http/wfe01.skopus.local instead of http/intranet.skopus.local SPN Uses Host Name instead of Alias To workaround this issue, configure Kerberos enabled services using DNS A records instead of CNAME aliases. Use the FEATURE_USE_CNAME_FOR_SPN_KB91114 9 registry key documented in this article: http://support.microsoft.com/kb/911149. Kerberos will fail if ticket is too large In some environments, users may be members of many Active Directory groups, which can increase the size of their Kerberos tickets. If the tickets grow too large, Kerberos authentication can fail. For more information about how to adjust the max token size see: New resolution for problems with Kerberos authentication when users belong to many groups Note: When adjusting max token size, be aware that if you configure the max token size beyond the maximum value for the registry setting, you may see Kerberos authentication errors. It is recommended to not exceed 65535 decimal, FFFF hexadecimal, for max token size. Kerberos Web App Setup Appendix Web Application Settings AuthN Provider Friendly Warning, More to Do… IIS Authentication Double Check Ensure Windows Auth is Enabled Make Sure not to Use Kernel Mode Auth Ensure the Negotiate Provider is Enabled This is done by SharePoint via the Web App Settings Don’t use Aliases in DNS (CNAME) Register the SPNs Ways to Verify SPNs (Ensure no Duplicates) You can also check for SPNs in Active Directory Purge your tickets before testing the web app After Making a Request, Check the Ticket Cache Netmon Capture of the AuthN Sequence Excel Services Appendix Check Data Source to Ensure Kerberos is Enabled Register SPNs for Data Source (SQL Example) Start the Claims to Windows Token Service Register Dummy SPN to get to Delegation Tab Configure Constrained Delegation to Data Source Dump of claims on Windows Claims Site You must use Windows Claims for Excel Services with C2WTS to work Test Connection Refresh BCS Screen Shots Appendix Configure SPNs on the Web App Service Account Configure Delegation from Web App to Data Source Configure ECT Connection Use Per-User (User’s Identity) AuthN