Configuration de la communication HTTPS

Par défaut, le serveur Spectrum™ Technology Platform utilise HTTP pour la communication avec Enterprise Designer, les applications basées sur un navigateur telles que Management Console et Metadata Insights, ainsi que pour le traitement des requêtes de services Web et des appels d'API et pour la communication avec les serveurs distants. Vous pouvez configurer Spectrum™ Technology Platform afin qu'il utilise HTTPS si vous souhaitez sécuriser ces communications réseau.

Remarque : Spectrum™ Technology Platform utilise TLS 1.2 pour chiffrer la communication. Les applications ayant accès à l'API ou aux services Web Spectrum™ Technology Platform doivent prendre en charge TLS 1.2 afin de se connecter via HTTPS.

Cette procédure explique comment activer la communication HTTPS sur une installation avec un seul serveur Spectrum™ Technology Platform. Si vous souhaitez qu’il utilise HTTPS et que vous exécutez Spectrum™ Technology Platform dans un cluster, ne suivez pas cette procédure. Pour ce faire, configurez l’équilibreur de charge pour qu'il utilise HTTPS pour la communication avec les clients. La communication entre l’équilibreur de charge et les nœuds Spectrum™ Technology Platform et entre les nœuds eux-mêmes ne sera pas chiffrée, car la mise en cluster de Spectrum™ Technology Platform ne prend pas en charge HTTPS. L’équilibreur de charge et les serveurs Spectrum™ Technology Platform du cluster doivent être derrière un pare-feu afin de fournir un environnement sécurisé.

Pour configurer la communication HTTPS pour une installation avec un seul serveur Spectrum™ Technology Platform :

  1. Arrêtez le serveur Spectrum™ Technology Platform.
    • Pour arrêter le serveur sous Windows, cliquez avec le bouton droit de la souris sur l'icône Spectrum™ Technology Platform dans la barre d'état système de Windows et sélectionnez Arrêter Spectrum. Vous pouvez également utiliser le panneau de configuration des services Windows et arrêter le service Spectrum™ Technology Platform de Pitney Bowes.
    • Pour arrêter le serveur sous Unix ou sous Linux, recherchez le script SpectrumLocation/server/bin/setup, puis exécutez le script SpectrumLocation/server/bin/server.stop.
  2. Créez un certificat signé par une autorité de certification sécurisée (CA).
    Remarque : Le certificat doit respecter les exigences de chiffrement et de longueur pour la version de Java utilisée par Spectrum™ Technology Platform. Pour connaître la version de Java, ouvrez Management Console et accédez à Système > Version. Pour plus d’informations, voir java.com/en/jre-jdk-cryptoroadmap.html.
  3. Chargez le certificat dans un magasin de clés JSSE. Pour obtenir davantage d'informations, consultez l'adresse suivante : www.eclipse.org/jetty/documentation/current/configuring-ssl.html#loading-keys-and-certificates.
  4. Créez un fichier XML nommé spectrum-override-container-ssl.xml contenant les éléments suivants :
    <beans xmlns="http://www.springframework.org/schema/beans"
        xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
        xmlns:util="http://www.springframework.org/schema/util"
        xsi:schemaLocation="http://www.springframework.org/schema/beans
           http://www.springframework.org/schema/beans/spring-beans-3.0.xsd
           http://www.springframework.org/schema/util
           http://www.springframework.org/schema/util/spring-util-3.0.xsd">
        
        <bean id="defaultWebServerConnector" class="org.eclipse.jetty.server.ServerConnector">
            <constructor-arg ref="webServer"/>
            <constructor-arg>
                <bean class="org.eclipse.jetty.util.ssl.SslContextFactory">
                    <property name="keyStorePath" value="/SpectrumKeystore"/>
                    <property name="keyManagerPassword" value="password"/>
                    <property name="keyStorePassword" value="password"/>
                </bean>
            </constructor-arg>
            <property name="host" value="${spectrum.bind.address}"/>
            <property name="port" value="${spectrum.http.port}"/>
            <property name="idleTimeout" value="-1"/>
        </bean>
    </beans>
  5. Modifiez ces lignes selon vos besoins, afin de refléter votre environnement :
    <property name="keyStorePath" value="/SpectrumKeystore"/> Modifiez la valeur de sorte qu'elle soit le chemin d'accès complet au magasin de clés Java.
    <property name="keyManagerpassword" value="password"/> Modifiez la valeur par le mot de passe du fichier de clés.
    <property name="keyStorePassword" value="password"/> Modifiez la valeur par le mot de passe de la clé dans le fichier de clés.
  6. Enregistrez le fichier spectrum-override-container-ssl.xml dans SpectrumLocation/server/app/conf/spring.
  7. À l'aide d'un éditeur de texte, ouvrez le fichier spectrum-container.properties qui se trouve dans SpectrumLocation/server/app/conf. Décommentez et définissez ces propriétés :

    spectrum.http.port=port
    spectrum.runtime.port=port
    spectrum.runtime.hostname=dnsname

    port est le port réseau à utiliser pour la communication avec les clients (par exemple, 8443) et dnsname le nom d'hôte du serveur Spectrum™ Technology Platform. Le port que vous indiquez doit être identique pour spectrum.http.port et pour spectrum.runtime.port.

  8. Si vous configurez la communication HTTPS pour le module Location Intelligence et les services Spectrum Spatial, vous devez procéder à une configuration supplémentaire avant de redémarrer le serveur Spectrum™ Technology Platform :
    1. Modifiez le fichier java.properties (SpectrumLocation\server\modules\spatial) en remplaçant tous les noms d'hôte et les ports par ceux utilisés pour le serveur Spectrum™ Technology Platform. Le nom d'hôte doit correspondre au nom DNS du serveur et au CN du certificat. Définissez la propriété repository.useSecureConnection sur true. Par exemple,
      repository.host=www.spectrum.com
      repository.port=8443
      repository.useSecureConnection=true
    2. Dans Spatial Manager, modifiez les URL de ces configurations de service pour qu'elles utilisent HTTPS :
      • Mapping (nécessaire uniquement lors de l’accès à Mapping Service via SOAP et lorsque le paramètre ReturnImage d'une requête RenderMap est défini sur False)
      • WFS
      • WMS
      • WMTS

      Pour obtenir des instructions, reportez-vous au Guide Spatial Manager de la section Utilitaires du Guide Spectrum Spatial.

  9. Démarrez le serveur Spectrum™ Technology Platform.
    • Pour démarrer le serveur sous Windows, cliquez avec le bouton droit de la souris sur l'icône Spectrum™ Technology Platform dans la barre d'état système de Windows et sélectionnez Démarrer Spectrum. Vous pouvez également utiliser le panneau de configuration des services Windows pour démarrer le service Spectrum™ Technology Platform de Pitney Bowes.
    • Pour démarrer le serveur sous Unix ou Linux, exécutez le script SpectrumLocation/server/bin/server.start.