Configurer des connexions TLS sur un serveur de rapports en mode natif

S’applique à : SQL Server 2016 (13.x) Reporting Services et versions ultérieures Power BI Report Server

Le mode natif de Reporting Services utilise le service HTTP SSL pour établir des connexions chiffrées avec un serveur de rapports. Le protocole TLS (Transport Layer Security) était précédemment appelé protocole SSL (Secure Sockets Layer). Si le fichier de certificat (.cer) est installé dans un magasin de certificats local sur le serveur de rapports, vous pouvez lier le certificat à une réservation d’URL Reporting Services de manière à prendre en charge les connexions de serveur de rapports via un canal chiffré.

Conseil

Pour plus d'informations sur le mode SharePoint de Reporting Services, consultez la documentation SharePoint pour plus d'informations. Par exemple, Comment activer TLS sur une application Web SharePoint 2010.

Comme IIS (Internet Information Services) utilise aussi HTTP SSL, il existe des problèmes d’interopérabilité significatifs que vous devez connaître si vous exécutez IIS et Reporting Services sur le même ordinateur. Veillez à consulter la section Problèmes d'interopérabilité avec IIS pour des informations sur la manière de traiter ces problèmes.

Exigences des certificats de serveur

Vous devez installer un certificat de serveur sur l'ordinateur (les certificats clients ne sont pas pris en charge). Les services de rapports n'offrent pas de fonctionnalité pour demander, générer, télécharger ou installer un certificat. Windows Server 2012 et version ultérieure fournit un composant logiciel enfichable de certificats que vous pouvez utiliser pour demander un certificat à une autorité de certification approuvée.

Vous pouvez créer un certificat localement à des fins de tests. Si vous employez l’utilitaire MakeCert et l’exemple de commande comme modèle, veillez à spécifier le nom de votre serveur comme hôte et à supprimer tous les sauts de ligne avant d’exécuter la commande. Si vous exécutez la commande dans une fenêtre DOS, vous devrez peut-être augmenter la taille de la mémoire tampon de la fenêtre pour prendre en compte toute la commande.

Si vous exécutez IIS et Reporting Services ensemble sur le même ordinateur, utilisez l'application de la console du Gestionnaire IIS pour obtenir le certificat installé sur votre ordinateur. Le Gestionnaire IIS comprend des options pour la création et l'empaquetage d'un fichier de demande de certificat (.crt) pour les traitements suivants par une autorité de certification approuvée. L'autorité de certification que vous utilisez génère un fichier de certificat (.cer) et vous le renvoie. Vous pouvez utiliser la console de gestion IIS pour installer le fichier de certificat dans le magasin local. Pour plus d'informations, consultez Using SSL to Encrypt Confidential Data (Utiliser SSL pour chiffrer des données confidentielles) sur le site Technet.

Problèmes d'interopérabilité avec IIS

La présence d'IIS sur le même ordinateur que Reporting Services affecte considérablement les connexions TLS à un serveur de rapports :

  • Si IIS est installé, le service World Wide Web (W3SVC) doit toujours être en cours d'exécution. Le service HTTP SSL établit une dépendance sur IIS s'il détecte que le service est en cours d'exécution. Cette dépendance signifie que le service World Wide Web (W3SVC) doit être en cours d'exécution lorsque IIS et Reporting Services sont installés sur le même ordinateur et que vous configurez les URL du serveur de rapports pour les connexions TLS.

  • La désinstallation d'IIS peut interrompre temporairement le service à une URL du serveur de rapports liée à TLS. Pour cette raison, vous devez redémarrer l'ordinateur après avoir désinstallé IIS.

    Il est nécessaire de redémarrer l’ordinateur pour effacer toutes les sessions TLS du cache. Certains systèmes d'exploitation mettent en cache les sessions TLS jusqu'à 10 heures, ce qui fait qu'une URL https:// continue de fonctionner même après que la liaison TLS a été supprimée de la réservation d'URL dans HTTP.SYS. Le redémarrage de l’ordinateur ferme toutes les connexions ouvertes qui utilisent le canal.

Lier TLS à une réservation d'URL Reporting Services

Les étapes suivantes n'incluent pas d'instructions pour demander, générer, télécharger, ou installer un certificat. Un certificat doit être installé et disponible. Les propriétés de certificat que vous spécifiez, l'autorité de certification émettrice, et les outils et utilitaires que vous utilisez pour demander et installer le certificat relèvent entièrement de votre choix.

Vous pouvez utiliser l’outil de configuration de Reporting Services pour lier le certificat. Si le certificat est bien installé dans le magasin de l'ordinateur local, l'outil de configuration de Reporting Services le détecte et l'affiche dans la liste Certificats SSL des pages URL du service web et URL du portail web.

Configurer une URL de serveur de rapports pour TLS

  1. Démarrez l'outil de configuration de Reporting Services, puis connectez-vous au serveur de rapports.

  2. Sélectionnez URL du service web.

  3. Développez la liste des certificats TLS/SSL. Reporting Services détecte les certificats d’authentification de serveur dans le magasin local. Si vous avez installé un certificat et qu'il ne figure pas dans la liste, vous devrez peut-être redémarrer le service. Vous pouvez utiliser les boutons Arrêter et Démarrer de la page État du serveur de rapports dans l’outil de configuration de Reporting Services pour redémarrer le service (page supérieure).

  4. Sélectionnez le certificat.

  5. Sélectionnez Appliquer.

  6. Sélectionnez l'URL pour vérifier qu'elle fonctionne.

Il est nécessaire de configurer la base de données du serveur de rapports pour tester l'URL. Si vous n'avez pas encore créé la base de données du serveur de rapports, faites-le avant de tester l'URL.

Les réservations d'URL pour l’URL du portail web et l’URL des services web du serveur de rapports sont configurées indépendamment. Si vous souhaitez configurer également l'accès au portail web via un canal chiffré par TLS, continuez les étapes suivantes :

  1. Accédez à l’URL du portail web.

  2. Sélectionnez Avancé.

  3. Dans Plusieurs identités HTTPS pour la fonctionnalité Reporting Services actuelle sélectionnez Ajouter.

  4. Choisissez le certificat, sélectionnez OK, puis sélectionnez Appliquer.

  5. Testez l'URL pour vérifier qu'elle fonctionne.

Comment les liaisons de certificat sont stockées

Les liaisons de certificat sont stockées dans HTTP.SYS. Une représentation des liaisons que vous avez définies est également stockée dans la section URLReservations du fichier RSReportServer.config. Les paramètres dans le fichier de configuration sont uniquement une représentation des valeurs réelles spécifiées ailleurs. Ne modifiez pas les valeurs directement dans le fichier de configuration. Les paramètres de configuration apparaissent dans le fichier seulement si vous avez utilisé l’outil de configuration de Reporting Services ou le fournisseur WMI (Windows Management Instrumentation) de Report Server pour lier un certificat.

Notes

Si vous configurez une liaison avec un certificat TLS/SSL dans Reporting Services et que vous souhaitez par la suite supprimer le certificat de l’ordinateur, n’oubliez pas de supprimer la liaison de Reporting Services avant de supprimer le certificat de l’ordinateur. Sinon, vous ne pourrez pas supprimer la liaison en utilisant l’outil de configuration de Reporting Services ou WMI, et vous recevrez l’erreur « Paramètre non valide ». Si vous avez déjà supprimé le certificat de l'ordinateur, vous pouvez utiliser l'outil Httpcfg.exe pour supprimer la liaison de HTTP.SYS. Pour plus d'informations sur Httpcfg.exe, consultez la documentation produit de Windows.

Les liaisons TLS sont une ressource partagée dans Microsoft Windows. Les modifications apportées par le Gestionnaire de configuration de Reporting Services ou d'autres outils, comme le Gestionnaire IIS, peuvent affecter d'autres applications sur le même ordinateur. La meilleure pratique consiste à utiliser le même outil pour modifier les liaisons que celui utilisé pour les créer. Par exemple, si vous avez créé des liaisons TLS à l'aide de Configuration Manager, vous devez utiliser Configuration Manager pour gérer le cycle de vie des liaisons. Si vous utilisez le gestionnaire IIS pour créer des liaisons, vous devez utiliser le gestionnaire IIS pour gérer le cycle de vie des liaisons. Si IIS est installé sur l'ordinateur avant Reporting Services, c'est une bonne pratique que de vérifier la configuration TLS dans IIS avant de configurer Reporting Services.

Si vous supprimez les liaisons TLS pour Reporting Services à l'aide du Gestionnaire de configuration du serveur de rapports, il se peut que TLS ne fonctionne plus pour les sites Web sur un serveur qui exécute Internet Information Services (IIS) ou sur un autre serveur HTTP.SYS. Le Gestionnaire de configuration de Reporting Services supprime la clé de Registre suivante : HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Services\HTTP\Parameters\SslBindingInfo\0.0.0.0:443. Quand cette clé de Registre est supprimée, la liaison TLS pour IIS l’est également. En l'absence de cette liaison, le protocole TLS n'est pas fourni pour le protocole HTTPS. Pour diagnostiquer ce problème, utilisez le Gestionnaire IIS ou l’utilitaire de ligne de commande HTTPCFG.exe. Pour résoudre ce problème, restaurez la liaison TLS pour vos sites web à l'aide du Gestionnaire IIS. Afin d'éviter ce problème à l'avenir, utilisez le Gestionnaire IIS pour supprimer les liaisons TLS, puis pour restaurer la liaison pour les sites web de votre choix. Pour plus d’informations, consultez l’article de la Base de connaissances SSL ne fonctionne plus après la suppression d’une liaison SSL (https://support.microsoft.com/kb/956209/n).

Authentification auprès du serveur de rapports
Configurer et administrer un serveur de rapports (SSRS en mode natif)
Fichier de configuration RsReportServer.config
Configurer des URL de serveur de rapports (Gestionnaire de configuration du serveur de rapports)