Lenteur du site en raison de la vérification de la liste de révocation de certificats STS SharePoint

Symptômes

Supposons que vous disposez d’une application web qui utilise l’authentification basée sur les revendications dans SharePoint Foundation 2010 ou SharePoint Server 2010. Le serveur SharePoint n’a pas accès à Internet, ou le serveur est protégé par un pare-feu dont les ports sont limités. Dans ce cas, les utilisateurs subissent par intermittence de longs retards lorsqu’ils effectuent certaines opérations, telles que la connexion au site ou l’exécution d’une recherche. Les utilisateurs peuvent également rencontrer des délais d’expiration HTTP lorsqu’ils effectuent ces opérations.

Cause

SharePoint utilise des certificats pour signer les jetons de sécurité émis par le service STS (Security Token Service). Comme tous les certificats, la validité du certificat STS doit être vérifiée régulièrement pour s’assurer que le certificat n’a pas été révoqué. Par défaut, le certificat racine dans la chaîne n’est pas ajouté au magasin autorités de certification racines approuvées des serveurs SharePoint. Pour cette raison, la liste de révocation de certificats (CRL) case activée pour le certificat est effectuée sur Internet. Si le serveur de liste de révocation de certificats en ligne n’est pas accessible à partir du serveur SharePoint pour une raison quelconque, l’opération expire au bout de 15 secondes par défaut. Même si la validation de la liste de révocation de certificats échoue après 15 secondes, la page SharePoint peut toujours être affichée après le délai.

Les échecs de validation de certificat peuvent être suivis en activant la journalisation des événements CAPI2 sur le serveur SharePoint. Lorsque la journalisation des événements CAPI2 est activée et que la validation des certificats Internet échoue, les messages d’erreur suivants s’affichent fréquemment dans le journal des événements CAPI2 :

  • Erreur de chaîne de build

    ID d’événement : 11
    Catégorie de tâche : Chaîne de génération
    subjectName (tiré des détails de l’événement) : Service de jeton de sécurité SharePoint

  • Récupérer un objet à partir d’une erreur réseau

    ID d’événement : 53
    Catégorie de tâche : Récupérer un objet à partir du réseau

    URL (extraite des détails de l’événement) : https://www.download.windowsupdate.com/msdownload/update/v3/static/trustedr/en/authrootstl.cab

Reportez-vous à la section « Plus d’informations » pour plus d’informations sur l’activation de la journalisation CAPI2.

Résolution

Pour résoudre ce problème, effectuez l’une des solutions de contournement suivantes :

Solution de contournement 1

Installez le certificat d’autorité racine SharePoint dans le magasin Autorités de certification racines de confiance. Une fois le certificat racine ajouté au magasin de certificats local, la validation du certificat n’est plus effectuée sur Internet. Les étapes ci-dessous entraînent la réussite de BuildChain en recherchant le certificat dans le magasin local, éliminant ainsi la nécessité de récupérer un objet à partir du réseau. Les étapes suivantes doivent être effectuées sur chaque serveur SharePoint de la batterie de serveurs pour ajouter le certificat racine au magasin de certificats local :

  1. Exportez le certificat d’autorité racine SharePoint en tant que fichier physique (.cer). Démarrez SharePoint 2010 Management Shell en tant qu’administrateur, puis exécutez les commandes Windows PowerShell suivantes :

    $rootCert = (Get-SPCertificateAuthority).RootCertificate   
    $rootCert.Export("Cert") | Set-Content C:\SharePointRootAuthority.cer -Encoding byte
    

    Note Cela permet d’exporter le certificat racine interne (fichier .cer) pour SharePoint vers le lecteur C. Vous pouvez copier et utiliser ce fichier sur tous les serveurs de la batterie de serveurs à des fins d’importation sans avoir à réexécuter les commandes PowerShell.

  2. Importez le certificat d’autorité racine SharePoint dans le magasin Autorités de certification racines de confiance. Pour ajouter le certificat d’autorité racine SharePoint au magasin Autorités de certification racines de confiance, procédez comme suit :

    Note « Administrateurs » est l’appartenance de groupe minimale requise pour effectuer ces étapes.

    1. Appuyez ou cliquez sur Démarrer, tapez mmc dans Démarrer la recherche, puis appuyez sur Entrée.
    2. Dans le menu Fichier, cliquez sur Ajouter/Supprimer un composant logiciel enfichable.
    3. Sous Composants logiciels enfichables disponibles, cliquez sur Certificats, puis sur Ajouter.
    4. Sous Ce composant logiciel enfichable gère toujours les certificats pour, sélectionnez Compte d’ordinateur, puis cliquez sur Suivant.
    5. Sélectionnez Ordinateur local, puis cliquez sur Terminer.
    6. Si vous n’avez plus de composants logiciels enfichables à ajouter à la console, cliquez sur OK.
    7. Dans l’arborescence de la console, double-cliquez sur Certificats.
    8. Cliquez avec le bouton droit sur le magasin Autorités de certification racines de confiance.
    9. Cliquez sur Toutes les tâches, sur Importer pour importer le certificat, puis suivez les étapes de l’Assistant Importation de certificat.

Solution de contournement 2

Désactivez la mise à jour automatique des certificats racines sur les serveurs SharePoint. Pour cela, procédez comme suit :

  1. Sous le nœud Configuration de l’ordinateur dans le stratégie de groupe Rédacteur local, double-cliquez sur Stratégies.
  2. Double-cliquez sur Paramètres Windows, double-cliquez sur Paramètres de sécurité, puis double-cliquez sur Stratégies de clé publique.
  3. Dans le volet Détails, double-cliquez sur Paramètres de validation du chemin d’accès au certificat.
  4. Cliquez sur l’onglet Récupération du réseau, sélectionnez la zone Définir ces paramètres de stratégie case activée, puis désactivez la zone mettre à jour automatiquement les certificats dans le programme de certificats racine Microsoft (recommandé) case activée.
  5. Cliquez sur OK, puis fermez le stratégie de groupe Rédacteur local.
  6. Exécutez gpupdate/force pour que la stratégie prenne effet immédiatement.

Note Une fois la mise à jour automatique désactivée, vous devrez peut-être surveiller les nouvelles versions, puis mettre à jour manuellement l’approbation de certificat si nécessaire.

Implications de la désactivation des mises à jour automatiques des certificats racines

Il ne devrait pas y avoir d’implications spécifiques pour SharePoint, car nous utilisons des certificats auto-signés et les gérons nous-mêmes. Les certificats SharePoint ont une expiration, mais il existe une règle d’intégrité qui surveille cette situation, puis avertit l’administrateur de les mettre à jour ou de les restaurer.

L’aspect main à prendre en compte concerne les autres certificats utilisés sur l’ordinateur (tels que les certificats SSL, les certificats de téléchargement de packages d’approbation ou pour la stratégie SAFER, etc.) qui sont émis à partir de certificats chaînés à ceux du magasin autorités de certification racines de confiance.

Informations supplémentaires

Activer et enregistrer le journal CAPI2 à partir de l’interface utilisateur observateur d'événements

  1. Ouvrez l’Observateur d’événements. Pour ouvrir l'Observateur d'événements, cliquez sur Démarrer, puis sur Panneau de configuration, double-cliquez sur Outils d'administration, puis sur Observateur d'événements.
  2. Si la boîte de dialogue Contrôle de compte d’utilisateur s’affiche, vérifiez que l’action affichée correspond à ce que vous souhaitez effectuer, puis cliquez sur Continuer.
  3. Dans le volet Console, développez observateur d'événements, Développez Journaux des applications et des services, Microsoft, Windows, puis CAPI2.
  4. Vous pouvez maintenant effectuer les actions suivantes :
    • Pour activer la journalisation CAPI2, cliquez avec le bouton droit sur Opérationnel, puis sélectionnez Activer le journal.

    • Pour enregistrer le journal dans un fichier, cliquez avec le bouton droit sur Opérationnel, puis sélectionnez Enregistrer les événements sous. Vous pouvez enregistrer le fichier journal au format EVTX (qui peut être ouvert via le observateur d'événements) ou au format XML.

    • Pour désactiver la journalisation CAPI2, cliquez avec le bouton droit sur Opérationnel, puis sélectionnez Désactiver le journal.

    • Si des données sont présentes dans le journal avant d’essayer de reproduire le problème, nous vous recommandons d’effacer le journal. Cela permet de collecter uniquement les données pertinentes pour le scénario de problème à partir du journal enregistré. Pour effacer le journal, cliquez avec le bouton droit sur Opérationnel, puis sélectionnez Effacer le journal.

    • Pour les diagnostics CAPI2, la taille du journal peut augmenter rapidement et nous vous recommandons d’augmenter la taille du journal à au moins 4 mégaoctets (Mo) pour capturer les événements pertinents. Pour augmenter la taille du journal, cliquez avec le bouton droit sur Opérationnel, puis sélectionnez Propriétés. Dans les propriétés du journal, augmentez la taille maximale du journal.

      Note La taille par défaut du journal des événements est de 1 Mo.

Encore besoin d’aide ? Accédez au site de la Communauté SharePoint.