Sécurisation du trafic entre les clients et votre serveur

Ce chapitre décrit comment Tableau Server communique avec les autres ordinateurs et comment renforcer la sécurité du trafic.

 

Tâches difficiles

Si les précédents chapitres de Tableau Server : Guide d'installation à l'usage de tous ont pu vous sembler fort simples, celui-ci va sans doute paraître plutôt ardu. Pas une mission impossible, mais tout de même une tâche nécessitant un certain focus.

Cela vous soulagera peut-être de savoir que ces opérations peuvent être ardues même pour les informaticiens. Mais quand il s'agit de sécurité de vos données sensibles, feriez-vous confiance à une approche trop simple ?

Si vous êtes arrivé jusqu'à ce point du guide par vous-même, le moment est venu de faire appel à un professionnel de votre service informatique. Si vous n'avez pas de service informatique interne, vous pouvez envisager de demander l'aide des services professionnels Tableau.

Même avec l'aide d'un informaticien, il est important que toute personne administrant Tableau Server comprenne les principes et les procédures de sécurisation de l'environnement. De plus, ce n'est pas à nous de décider ce que vous aurez plaisir à apprendre, peut-être jusqu'à devenir vous-même un professionnel. Nous allons donc faire de notre mieux pour expliquer ce qu'il vous faut pour réussir la configuration. Vous trouverez en outre de nombreuses informations en ligne, y compris dans l'aide de Tableau et les articles de sa base de connaissances.

Présentation de HTTP et de la communication client-serveur

Par défaut, Tableau Server, comme de nombreuses applications serveur, communique avec les clients à l'aide du protocole Web standard, à savoir HTTP. Avec le protocole HTTP, lorsqu'un navigateur envoie une demande au serveur, puis que le serveur répond, les informations sont échangées en texte clair. Cela signifie que toute personne capable de capter cette communication pourra en lire le contenu.

Les informations que vos utilisateurs et le serveur échangent peuvent être de nature sensible. Par exemple, un utilisateur peut accéder à Tableau Server via un navigateur Web et envoyer un nom d'utilisateur et un mot de passe pour se connecter au serveur. Ou un utilisateur peut demander une vue Tableau créée avec des données sensibles. Si une personne peut voir ce trafic (et il n'est pas difficile d'espionner sur HTTP avec un peu d'expérience informatique), elle peut également voir des informations non autorisées.

Vos objectifs de sécurité : confidentialité et confiance

En matière de sécurisation des communications entre Tableau Server et ses clients, vous recherchez la confidentialité et la confiance. Pour garantir la confidentialité, vous rendez le contenu HTTP illisible pour tout intrus cherchant à espionner. Vous le faites en cryptant le trafic.

Il vous faut également établir une relation approuvée entre le serveur et le client. Cela signifie que, lorsque le serveur envoie l'information, le client a l'assurance que les informations proviennent du serveur avec lequel il pense être en communication. La confiance est établie via l'authentification, de la même manière que vous-même, en tant qu'utilisateur, êtes authentifié lorsque vous fournissez un nom d'utilisateur et un mot de passe pour vous connecter à votre ordinateur. L'authentification empêche un client d'être entraîné à son insu dans une communication avec un site frauduleux.

Utilisation de SSL pour crypter les communications Tableau Server

Le protocole SSL (Secure Sockets Layer) est un protocole similaire au protocole HTTP, à cette différence qu'il permet aux ordinateurs d'envoyer des informations cryptées sur un réseau, par exemple le Web. (Nous utilisons le terme SSL comme terme générique pour ce protocole. Il peut également être appelé TLS.) SSL remplit les deux fonctions dont nous avons discuté précédemment : la confidentialité et la confiance, via le cryptage et l'authentification que nous venons de mentionner. Lorsque SSL est activé pour Tableau Server, les utilisateurs peuvent utiliser https:// au lieu de http:// seulement pour demander un contenu auprès du serveur.

L'activation de SSL renforce considérablement la sécurité du trafic client-serveur. Si votre instance de Tableau Server est accessible depuis Internet (et pas simplement sur votre réseau interne), il est essentiel de configurer SSL pour le serveur. Rendre un serveur accessible sur un réseau public sans SSL constitue un grave risque de sécurité. Même si votre serveur n'est pas accessible publiquement, il est recommandé d'activer SSL pour la communication client-serveur sur votre réseau local.

Les sections suivantes détaillent le mode de fonctionnement de SSL. Nous décrirons également la configuration requise pour utiliser SSL avec Tableau Server, que vous souhaitiez sécuriser le trafic sur Internet ou sur votre réseau local. Il décrit comment activer SSL et vous renvoie vers des ressources externes pour des informations complémentaires. Le mode d'activation de SSL sur votre réseau local dépend de nombreux facteurs de votre environnement. Adressez-vous à votre service informatique qui saura comment gérer au mieux votre installation serveur spécifique.

SSL et VPN

Certains utilisateurs Tableau Server peuvent accéder à votre serveur depuis l'extérieur du site en utilisant une connexion VPN (réseau privé virtuel) à votre réseau. Dans ce cas, bien que les utilisateurs ne soient pas sur site, la connexion VPN offre à la fois confidentialité et confiance. L'activation de SSL reste conseillée, mais elle n'est pas essentielle si l'accès de vos utilisateurs à Tableau Server s'effectue via un VPN.

Certificats SSL

Pour prendre en charge SSL, le serveur a besoin d'un certificat numérique. Vous pouvez obtenir un certificat numérique auprès d'une entité tierce, publiquement approuvée, appelée autorité de certification ou CA. Une autorité de certification approuvée vérifie l'identité de votre organisation puis émet un certificat signé unique à votre organisation. Ces CA approuvées incluent par exemple Symantec (VeriSign), thawte et GlobalSign, mais il en existe de nombreuses autres.

« Approuvé publiquement » signifie que tous les systèmes d'exploitation, les navigateurs pris en charge par Tableau, et autres clients font confiance de manière inhérente aux certificats racine de ces autorités de certification. Ils sont conformes aux normes de l'industrie pour le cryptage recommandé, et nécessitent moins de travail de votre part pour configurer la relation approuvée client-serveur.

Une fois que vous avez terminé la procédure d'obtention d'un certificat, la CA vous envoie vos certificats sous forme d'un ensemble de fichiers. À réception, vous installez les fichiers de certificat sur votre serveur. Ensuite, lorsqu'un client tente d'accéder au serveur, les informations que le client obtient du certificat du serveur permettent au client d'authentifier le serveur. Votre objectif de confiance est rempli. Le certificat inclut également une clé publique permettant au client d'établir des communications cryptées avec le serveur, ce qui couvre l'objectif de confidentialité.

Pour décrire ce processus de vérification à un haut niveau, lorsqu'un client souhaite démarrer une session cryptée avec le serveur, le client demande le certificat du serveur. (ce qui d'ailleurs a lieu automatiquement lorsqu'un utilisateur saisit https:// au début d'une URL.) Le serveur répond avec son certificat. En règle générale, le certificat du serveur renvoie au certificateur de l'émetteur, qui peut à son tour renvoyer au certificat d'un autre émetteur, en remontant jusqu'à la CA. En pratique, il y a généralement toute une chaîne de certificats. Le client examine le certificat, ou tous les certificats de la chaîne, et compare les informations de CA contenues dans le certificat avec les informations de CA qui sont déjà en possession du client. (Les navigateurs et autres clients gèrent une banque d'autorités de certification connues.) Si le client détermine que les certificats sont valides et approuvés, le client et le serveur peuvent démarrer une session cryptée et échanger des informations.

SSL mutuel (bidirectionnel)

Nous mentionnerons simplement ici qu'il est possible de configurer SSL mutuel, parfois appelé SSL bilatéral, dans quel cas le serveur et le client possèdent tous deux des certificats. SSL mutuel est particulièrement utile si vos utilisateurs accèdent au serveur depuis des emplacements publics, tout particulièrement sur un wi-fi public, car il fait en sorte que seuls les clients préconfigurés soient autorisés à accéder au serveur.

Le certificat client pour SSL mutuel est généralement généré par les informaticiens au sein de votre organisation. Ce certificat contient un nom d'utilisateur et des informations garantissant que le certificat ne peut pas être forgé. Avec SSL mutuel, lorsqu'il démarre une session avec le serveur, le client demande et examine le certificat du serveur, comme d'habitude. Ensuite, le serveur demande et examine le certificat du client pour déterminer sa validité.

Nous n'explorerons pas plus en détail SSL mutuel dans ce guide, mais plus loin dans ce chapitre, vous trouverez des liens vers des informations complémentaires, au cas où vous souhaiteriez activer cette fonction pour votre installation Tableau Server.

Certificats autosignés

Votre organisation peut générer son propre certificat sans passer par le processus de vérification fourni par une CA. Un certificat autosigné est créé dans ce cas. Ce certificat autosigné permet au client et au serveur d'établir des sessions cryptées. Toutefois, il ne permet pas à un client de vérifier l'identité du serveur (authentification du serveur). Lorsque des utilisateurs se connectent au serveur, ils voient un message du type "Ce certificat n'est pas approuvé". Le texte exact dépend du navigateur ou autre client.

Par défaut, de nombreux clients Tableau, y compris Tableau Mobile, n'utiliseront pas un certificat autosigné sur Tableau Server. Pour certains clients (par exemple des appareils iOS), vous pouvez configurer l'appareil de manière à ce qu'il fasse confiance à un certificat autosigné. Si vous souhaitez approfondir le sujet, consultez l'article de la base de données consacré à l'utilisation de Tableau Mobile avec un serveur SSL, dans les ressources supplémentaires référencées à la fin de ce chapitre.

Nous vous recommandons cette option plutôt que d'essayer d'utiliser l'avertissement de navigateur "certificat non approuvé" ou configurer des appareils de manière à ce qu'ils utilisent des certificats autosignés (pouvant générer des résultats non fiables), vous obtenez un certificat publiquement approuvé d'une autorité CA connue.

SSL pour le trafic client-serveur dans votre organisation

Le certificat que vous obtenez de la CA approuvée vous aide à sécuriser le trafic entre votre serveur et les utilisateurs qui utilisent des ordinateurs à l'extérieur de votre organisation, c'est-à-dire pour le trafic provenant d'Internet. Dans ce cas, les clients utilisent un nom de domaine complet (public), par exemple https://www.example.com/. (Notez le s à la fin de https://)

Vous pouvez également activer le cryptage SSL pour le trafic à l'intérieur de votre réseau local, ce qui protège le trafic lorsque vos collègues accèdent au serveur en utilisant un nom d'hôte interne, tel que https://tableauserver.

Les sections suivantes décrivent des options d'activation de SSL pour le trafic interne. Vous trouverez nos recommandations après ces descriptions. Adressez-vous à votre partenaire informatique pour déterminer l'option qui convient le mieux à votre environnement et vous faire aider lors de la configuration.

Utiliser le certificat de CA interne existant et le certificat de racine autosigné de votre entreprise

Si votre organisation emploie une équipe informatique, demandez-leur s'ils possèdent leur propre autorité de certification interne. Si oui, demandez-leur de créer un certificat pour vous. Ces certificats sont souvent approuvés automatiquement par les ordinateurs de vos utilisateurs Tableau, sans que vous ayez besoin de passer par le processus de configuration d'approbation du certificat pour chaque client.

En l'absence de CA interne, vous pouvez utiliser OpenSSL, un outil open-source livré avec Tableau Server, pour créer une CA interne. Ensuite, vous configurez chaque client de manière à ce qu'il fasse confiance à la CA interne. Lorsque vous avez besoin de mettre à jour le certificat, vous pouvez le distribuer aux clients via l'outil de gestion du système que vous utilisez, par exemple la stratégie de groupe.

Bien que ces étapes soient documentées dans l'aide de Tableau Server et sur le Web, elles nécessitent de coordonner de nombreuses pièces au niveau système de votre ordinateur. Nous vous déconseillons de vous y attaquer sans l'aide d'un partenaire informaticien expérimenté.

Créer un certificat autosigné pour votre serveur, et configurer les clients pour le prendre en charge

Tout à fait, vous sommes en train d'affirmer l'exact opposé de ce que nous venions de formuler dans la section consacrée à l'utilisation de certificats autosignés pour le trafic public. Voici pourquoi cette information est malgré tout correcte : pour le trafic client-serveur au sein du réseau privé de votre organisation, vous n'avez pas besoin de l'approbation de niveau public que vous obtenez avec un certificat émis par une CA.

Même pour votre trafic interne, vous devrez configurer des navigateurs sur chaque ordinateur d'utilisateur, des appareils iOS et d'autres clients pour prendre en charge le certificat autosigné. Sinon, vous devrez expliquer à vos utilisateurs comment gérer l'avertissement "site non approuvé" qui s'affiche dans le navigateur lorsqu'ils tentent de se connecter. Autre mise en garde, même si vous configurez des clients, vous devrez le refaire à l'expiration du certificat et vous devrez émettre à nouveau le certificat.

Comment déterminer l'option à utiliser

En matière d'activation de SSL pour le trafic interne vers Tableau Server, voici notre ordre de préférence. Si l'option préférée n'est pas possible pour votre organisation (par exemple, vous n'avez pas de CA interne), essayez l'option suivante.

  1. Si votre organisation possède une CA interne, utilisez-la. Vous pourrez ainsi activer SSL en interne, tout en évitant à vos utilisateurs les messages déstabilisants du navigateur "certificat non approuvé" .

  2. Utilisez un certificat autosigné et configurez les clients de manière à ce qu'ils lui fassent confiance, ou bien expliquez aux utilisateurs qu'ils peuvent sans risque faire une exception pour Tableau Server et ignorer le message du navigateur "site non approuvé".

  3. Obtenez un certificat d'une CA approuvée publiquement.

  4. Si aucune des trois premières options n'est disponible, demandez à votre service informatique de vous assister dans le processus de création d'une CA interne (voir description).

Obtenir et installer un certificat public pour Tableau Server

Le processus d'obtention d'un certificat est différent pour chaque CA, et le coût varie par CA et selon le niveau de certificat obtenu. Si votre organisation n'emploie pas de service informatique, le meilleur point de départ consiste à effectuer une recherche sur le Web en utilisant une phrase du type "obtenir un certificat ssl" et de consulter les offres des différentes CA.

Si votre organisation a un service informatique, demandez-leur s'ils ont une relation avec des autorités de certificats publiques et peuvent rationaliser le processus d'acquisition.

Votre professionnel de l'informatique devra connaître les exigences suivantes pour les certificats que vous installez sur Tableau Server. (Les acronymes représentent différents algorithmes de cryptage. Dans l'objectif qui nous intéresse, vous n'avez pas besoin d'en savoir plus, sauf pour satisfaire votre curiosité personnelle.)

  • Le certificat serveur doit être un certificat x09 codé au format PEM.

    D'autres formats sont possibles. Veillez donc à obtenir un certificat codé au format PEM, ou utilisez un outil tel que OpenSSL pour enregistrer le certificat au format PEM.

  • Le fichier de certificat .key contient la clé au format RSA ou DSA et inclut une phrase de passe imbriquée. Le fichier en lui-même n'est pas protégé par un mot de passe.

  • Si le certificat serveur n'est pas signé par une CA racine directement, l'émetteur doit fournir un fichier de chaîne.

    Le fichier de chaîne doit également être au fichier PEM et doit contenir tous les certificats intermédiaires entre le certificat serveur et le certificat racine. Vous n'êtes pas obligé d'inclure le certificat racine (ou "trust anchor"). Le fichier de chaîne est requis si vous souhaitez que les utilisateurs de Tableau Mobile ou Tableau Desktop sur le Mac se connectent au serveur.

Activer SSL

  1. Ouvrez TSM dans un navigateur :

    https://<tsm-computer-name>:8850. Pour plus d'informations, consultez Se connecter à l'interface utilisateur Web de Tableau Services Manager(Le lien s’ouvre dans une nouvelle fenêtre).

  2. Dans l'onglet Configuration, sélectionnez Sécurité > SSL externe.

  3. Sous SSL serveur Web externe, sélectionnez Activer SSL pour la communication serveur.

  4. Téléchargez les fichiers de clé et de certificat, et si nécessaire chargez le fichier de chaîne et entrez la clé de phrase de passe :

    Capture d'écran Configurer SSL

  5. Cliquez sur Enregistrer les modifications en attente.

  6. Cliquez sur Modifications en attente en haut de la page :

  7. Cliquez sur Appliquer les modifications et redémarrer.

Afficher le certificat

Après avoir installé les fichiers, vous pouvez accéder à votre site dans un navigateur et afficher le certificat. Nous utiliserons Tableau Online sur Google Chrome pour vous montrer comment cela fonctionne.

  1. Ouvrez votre navigateur et accédez à online.tableau.com.

  2. Cliquez sur le verrou vert qui apparaît dans la barre d'adresses.

  3. Cliquez sur le lien Détails. Une vue d'ensemble de la sécurité du site s'affiche.

    L'écran montre que Chrome a déterminé que le site utilisait un certificat valide et approuvé. Lorsque vous cliquez dans la vue d'ensemble de la sécurité, vous pouvez également voir la CA qui a émis le certificat, ainsi que la chaîne de confiance. Cliquez sur Afficher le certificat ici pour consulter des informations plus spécifiques (ne vous posez pas de grandes questions, ce que vous voyez n'a pas spécialement de sens ici).

    Vous pouvez faire l'essai dans différents navigateurs pour voir comment les informations de certificat s'affichent dans chacun d'eux, ou différents sites auxquels vous vous connectez, par exemple un compte bancaire en ligne.

Se faciliter la tâche

Lorsque vous obtenez les fichiers de certificat, notez leur date d'expiration, et configurez dès maintenant un calendrier de mise à jour du certificat avant qu'il n'expire. Inscrivez un rappel sur votre calendrier, trois mois avant la date d'expiration. Notez qui vous a aidé à obtenir le certificat, et joignez les bons de commande, les factures et les numéros de ticket.

Pensez aussi à faciliter la tâche de la personne qui s'occupera du processus la prochaine fois, et incluez ces informations dans votre documentation système.

Passez à la section Configuration de la communication avec Internet.

Ressources supplémentaires

Merci de vos commentaires !