Sécuriser les connexions de Talend Data Stewardship

Guide d'installation de Talend ESB pour Windows

EnrichVersion
6.5
EnrichProdName
Talend ESB
task
Installation et mise à niveau
EnrichPlatform
Studio Talend
Talend Activity Monitoring Console
Talend Administration Center
Talend Artifact Repository
Talend CommandLine
Talend Data Preparation
Talend Data Stewardship
Talend ESB
Talend Identity and Access Management
Talend Installer
Talend Log Server
Talend Runtime

Pour sécuriser les connexions entre Talend Data Stewardship, le serveur MongoDB et Apache Kafka, éditez le fichier application.properties.

Il n'est cependant pas possible d'établir une connexion sécurisée pour MongoDB si vous avez choisi d'utiliser l'instance de MongoDB intégrée lors de l'installation. Si vous souhaitez sécuriser les connexions de MongoDB en utilisant SSL, MongoDB Enterprise Server doit être manuellement installé sur votre machine. Pour plus d'informations, consultez https://docs.mongodb.com/v3.2/security/ (en anglais).

Procédure

  1. Ouvrez le fichier <Data_Stewardship_Path>\config\data-stewardship.properties.
  2. Pour permettre d'accepter le certificat de serveur utilisé par Talend Data Stewardship, modifiez les lignes suivantes :
    http.ssl.truststore.location=<path_to_truststore>
    http.ssl.truststore.password=<truststore_password>
  3. Par défaut, Talend Data Stewardship ne vérifie pas si le nom d'hôte correspond au nom commun du certificat.
    Afin d'activer cette vérification, changez la valeur du champ suivant en true :
    http.ssl.verify.hostname=true
  4. Pour permettre à Talend Data Stewardship d'utiliser une authentification par clé privée, modifiez les lignes suivantes :
    http.ssl.keystore.location=<path_to_keystore>
    http.ssl.keystore.password=<keystore_password>
    http.ssl.key.password=<key_password>
  5. Pour sécuriser les connexions avec MongoDB, modifiez les lignes suivantes :
    spring.data.mongodb.ssl=true
    spring.data.mongodb.ssl.trust-store=<path_to_truststore>
    spring.data.mongodb.ssl.trust-store-password=<truststore_password>
  6. Pour sécuriser les connexions avec Kafka à l'aide du chiffrage de communication uniquement, modifiez les lignes suivantes :
    kafka.security.protocol=SSL
    kafka.ssl.truststore.location=<path_to_truststore>
    kafka.ssl.truststore.password=<truststore_password>
  7. Pour sécuriser les connexions avec Kafka à l'aide de l'authentification, modifiez les lignes suivantes :
    kafka.ssl.keystore.location=<path_to_keystore>
    kafka.ssl.keystore.password=<keystore_password>
    kafka.ssl.key.password=<key_password>
    Notez que les paramètres de chiffrage de communication doivent également être définis pour utiliser l'authentification.
  8. Pour sécuriser les connexions avec le broker de messages, modifiez les lignes suivantes :
    spring.cloud.stream.kafka.binder.configuration.security.protocol=SSL
    spring.cloud.stream.kafka.binder.configuration.ssl.truststore.location=<path_to_truststore>
    spring.cloud.stream.kafka.binder.configuration.ssl.truststore.password=<truststore_password>
    spring.cloud.stream.kafka.binder.configuration.ssl.keystore.location=<path_to_keystore>
    spring.cloud.stream.kafka.binder.configuration.ssl.keystore.password=<keystore_password>
    spring.cloud.stream.kafka.binder.configuration.ssl.key.password=<key_password>
    spring.kafka.properties.security.protocol=SSL
    spring.kafka.properties.ssl.truststore.location=<path_to_truststore>
    spring.kafka.properties.ssl.truststore.password=<truststore_password>
    spring.kafka.properties.ssl.keystore.location=<path_to_keystore>
    spring.kafka.properties.ssl.keystore.password=<keystore_password>
    spring.kafka.properties.ssl.key.password=<key_password>
  9. Pour sécuriser les connexions avec Talend Identity and Access Management, modifiez les lignes suivantes :
    tds.security=iam
    oidc.url=https://<host_name:port>/oidc
    oidc.userauth.url=https://<host_name:port>/oidc
    scim.url=https://<host_name:port>/scim
  10. Modifiez les URL des services actuellement au format http, vers le format https.
    tds.history.service.url==https://${public.ip}:${server.port}/data-history-service
    schema.service.url=https://${public.ip}:${server.port}/schemaservice
  11. Modifiez les URL de la passerelle actuellement au format http, vers le format https.
    frontend.url=https://<datastewardship_server:port>/internal/frontend
    backend.url=https://<datastewardship_server:port>/internal/data-stewardship
    schemaservice.url=https://<datastewardship_server:port>/internal/schemaservice
    historyservice.url=https://<datastewardship_server:port>/internal/data-history-service
  12. Ouvrez le fichier <Data_Stewardship_Path>/iam/apache_tomcat/clients/tds-client.json et mettez à jour l'URL de Talend Data Stewardship :
    {
      "client_name": "TDS OIDC Gateway",
      "client_id": "tl6K6ac7tSE-LQ",
      "client_secret": "cB/gNxe2SXR3SPDbhshZXzErZoxVy8yUcs/f6K39rsg=",
      "redirect_uris": [
        "https://<datastewardship_url:port>/login",
        "https://localhost:19443/login",
        "https://127.0.0.1:19443/login"
      ],
      "post_logout_redirect_uris": [
        "https://<datastewardship_url:port>/",
        "https://localhost:19443/",
        "https://127.0.0.1:19443/"
      ],
      "grant_types": [
        "password",
        "authorization_code",
        "refresh_token"
      ],
      "scope": "openid refreshToken"
    }
    

Que faire ensuite

Pour activer le support de HTTPS sur Tomcat, consultez https://tomcat.apache.org/tomcat-8.0-doc/ssl-howto.html (en anglais).

Pour activer le support de SSL sur MongoDB, consultez https://docs.mongodb.com/v3.0/tutorial/configure-ssl/ (en anglais).

Pour activer le support de SSL sur Kafka, consultez http://kafka.apache.org/documentation.html#security_ssl (en anglais).

Pour activer le support de SSL sur Talend Identity and Access Management, consultez Sécuriser les connexions pour Talend Identity and Access Management.