Activation du support du partage des ressources d'origine croisée dans la solution MDM de Talend

author
Talend Documentation Team
EnrichVersion
6.5
EnrichProdName
Talend MDM Platform
Talend Data Fabric
task
Administration et monitoring > Monitoring des services
EnrichPlatform
Talend MDM Server

Support du partage des ressources d'origine croisée dans MDM

Vous pouvez activer le support du partage des ressources d'origine croisée (Cross-origin resource sharing, CORS) dans MDM, lorsque vous développez une application Web consommant des ressources MDM REST.

Par défaut, MDM ne supporte pas le partage des ressources d'origine croisée pour des raisons de sécurité.

Cet article s'applique à tous les produits Platform avec MDM à partir de la version 6.0.

Qu'est-ce que le partage de ressources d'origine croisée ?

La section suivante explique les concepts de base du partage de ressources d'origine croisée.

Une politique HTML5 de partage de ressources d'origine croisée contrôle si et comment le contenu s'exécutant sur d'autres domaines peut effectuer des interactions dans les deux sens avec le domaine publiant la politique. La politique est très granulaire et peut appliquer des contrôles par requête en se basant sur l'URL et d'autres fonctionnalités de la requête.

Pour plus d'informations concernant le partage de ressources d'origine croisée et son fonctionnement, consultez http://www.html5rocks.com/en/tutorials/cors/ (en anglais).

Activer la partage des ressources d'origine croisée dans MDM

La section suivante vous présente comment activer le support du partage des ressources d'origine croisée dans MDM, avant des consommer des ressources MDM REST.

Procédure

  1. Arrêtez votre serveur Tomcat.
  2. Parcourez votre système jusqu'au fichier <TomcatPath>/webapps/talendmdm/WEB-INF/web.xml et ouvrez-le.
  3. Ajoutez le filtre suivant sur les applications Web :
    <!-- CORS for development only -->
    <filter>
       <filter-name>CorsFilter</filter-name>
       <filter-class>com.amalto.core.util.CorsFilter</filter-class>
       <init-param>
          <param-name>allowed-origin</param-name>
          <param-value>YOUR WEB APP URL</param-value>
       </init-param>
    </filter>
    <filter-mapping>
       <filter-name>CorsFilter</filter-name>
       <url-pattern>/services/rest/*</url-pattern>
    </filter-mapping>

    Dans cet filtre, "YOUR WEB APP URL" indique que l'URL de base de votre application Web s'affiche dans votre navigateur Web, par exemple, http://192.168.174.170:3000.

    Comme les services MDM REST nécessitent une authentification, cette URL est obligatoire et ne peut utiliser de caractère de remplacement (*).

  4. Redémarrez le serveur Tomcat.
  5. Vérifiez que le support des ressources d'origine croisée est bien activé.
    Vous pouvez tenter d'accéder à une ressource MDM depuis un navigateur Web, avec des outils de développeur et vérifier que les en-têtes HTTP suivants sont renvoyés au corps de la réponse :
     Access-Control-Allow-Credentials: true
    
     Access-Control-Allow-Headers: x-requested-with
    
     Access-Control-Allow-Methods: POST, GET, OPTIONS, DELETE, PUT, PATCH
    
     Access-Control-Allow-Origin: YOUR WEB APP URL
    
     Access-Control-Max-Age: 3600