Vues :

Question :
Pourquoi le client Web ne s'affiche-t-il pas dans une iframe ?

Notions de base sur les iframes :
Un iframe est un élément HTML qui permet d'intégrer une page web dans une autre page web.
Une intégration d'URL est une partie du WebClient de DocuWare.

Pour intégrer une URL dans une autre page web, vous avez besoin de trois éléments :

  • L'adresse de l'intégration de l'URL
  • Un élément HTML iframe dans votre page web
  • Permission d'intégration : Le navigateur a besoin d'informations de permission de la page web intégrée. Cette information de permission est partagée via des en-têtes. La configuration des en-têtes se fait sur le serveur qui héberge le frontend de DocuWare.

Accorder la permission d'intégration :
Si l'hôte (URL), le port ou le protocole de DocuWare et de votre page web diffère, vous devez accorder la permission.

  1. De DocuWare 6.5 à DocuWare 7.10 > Vers les instructions
  2. À partir de DocuWare 7.11 > Vers les instructions
  3. Avec une connexion SSO d'un prestataire externe
    • Dans ce cas, vous avez besoin, en plus du point 1 ou 2, de la permission de votre prestataire SSO externe, car vous redirigez vos utilisateurs pour l'authentification vers le serveur du prestataire.
DocuWare 7.11
La permission est accordée via la politique CORS dans le fichier appsettings.json de DocuWare\Web\Platform. 
La structure de base du fichier JSON inclut pour cet usage la clé : SecuritySettings
"SecuritySettings": {
      "ContentSecurityPolicy": "frame-ancestors 'self'",
      "Cors": {
        "Enabled": false,
        "AllowedOrigins": ""
      }
    },
Une description et un exemple de configuration de la clé peuvent se trouver dans notre centre de connaissances :
https://knowledgecenter.docuware.com/docs/install-docuware-on-premises-version-711#securitysettings
 

DocuWare 6.5 à DocuWare 7.10 
Dans DocuWare 6.5 à 7.10, la permission peut être accordée en configurant les X-Frame-Options. Configurer les X-Frame-Options peut servir de solution temporaire pour permettre l'intégration. Cependant, cela augmente la vulnérabilité de la page web aux attaques entre sites et pose un risque de sécurité. Techniquement parlant, le navigateur ne reçoit plus d'instructions de la page web DocuWare pour empêcher l'intégration lorsque DocuWare est intégré dans une page web ayant une URL différente via la configuration ci-dessous.

  1. Sécurisez le fichier "C:\Program Files\DocuWare\Web\Platform\Web.config"
    Ou les versions antérieures "C:\Program Files (x86)\DocuWare\Web\Platform\Web.config"
  2. Ouvrez le fichier "Web.config"
  3. Trouvez l'entrée suivante :
    <location path="WebClient">
      <system.webServer>
      <httpProtocol>
       <customHeaders>
        <add name="X-Frame-Options" value="SAMEORIGIN" />
       </customHeaders>
      </httpProtocol>
      </system.webServer>
    </location>
  4. Supprimez cette entrée ou commentez-la (comme dans cet exemple):
    <!--<location path="WebClient">
      <system.webServer>
      <httpProtocol>
       <customHeaders>
        <add name="X-Frame-Options" value="SAMEORIGIN" />
       </customHeaders>
      </httpProtocol>
      </system.webServer>
    </location> -->
  5. Enregistrez vos modifications
  6. Aucun redémarrage de composant n'est requis!

    Le Web Client peut maintenant être affiché dans un iframe cross-domain.
    Si vous utilisez DocuWare 6.5, vous devez également installer le patch correctif 21 :
    https://dwsupport.blob.core.windows.net/supportdownloads/hotfixes/6.5/DW6.5_Hot21.zip


La politique CORS offre plus de sécurité. La mise en place de CORS ou de serveurs proxy est une affaire technique qui doit être réalisée par votre propre administrateur serveur ou fournisseur de services informatiques.
DocuWare n'est pas responsable de la configuration ou du fonctionnement de votre serveur ou de votre réseau. DocuWare offre seulement le Web Client comme une solution logicielle que vous pouvez installer et utiliser sur votre serveur.

Avertissement : Si vous désactivez l'option X-Frame-Options SAMEORIGIN, vous ouvrez une vulnérabilité de sécurité. Cela permet aux attaquants d'envoyer des requêtes à partir d'autres origines et de l'exploiter en tant que cross-site scripting.
Par conséquent, nous recommandons de conserver l'option SAMEORIGIN et de faire fonctionner les deux applications (dans laquelle DocuWare est intégré en tant qu'iframe et DocuWare lui-même) sur le même serveur.


Les navigateurs de dernière génération interdisent également les communications entre domaines sans HTTPS.
Par conséquent, depuis DocuWare 7.4, la HTTP ne prend plus en charge l'utilisation de DocuWare dans un iframe (sauf dans Firefox ou si le domaine de l'iframe est identique au domaine du navigateur).
Voir les modifications techniques dans DocuWare 7.4