Sécuriser les connexions pour Talend Data Stewardship - 7.0

Guide d'installation de Talend Real-Time Big Data Platform pour Linux

EnrichVersion
7.0
EnrichProdName
Talend Real-Time Big Data Platform
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 DQ Portal
Talend ESB
Talend Identity and Access Management
Talend Installer
Talend JobServer
Talend Log Server
Talend Repository Manager
Talend Runtime
Talend SAP RFC Server

Pour sécuriser les connexions entre Talend Data Stewardship, le serveur MongoDB et Apache Kafka, modifiez 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:<ssl_port>/login",
        "https://127.0.0.1:<ssl_port>/login"
      ],
      "post_logout_redirect_uris": [
        "https://<datastewardship_url:port>/",
        "https://localhost:<ssl_port>/",
        "https://127.0.0.1:<ssl_port>/"
      ],
      "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.