cancel
Showing results for 
Search instead for 
Did you mean: 

[Résolu] Authnetification web sripts

richardb
Champ in-the-making
Champ in-the-making
Bonjour,

Dans le cadre d'un déploiement d'alfresco, un client nous a demandé d'écrire un webscript permettant de visualiser et d'accéder à l'historique d'un document. Ce web scriptscript est appelé à partir d' une application (un ERP).

le webscipt se lance avec l'option "&guest=true" afin d'éviter une authentifcation.

le résultat se présente sous la forme de liens http ( le premier correspond la version en cours, les suivants à son historique).

Le probléme que je rencontre est :
          - Si l'utilisateur clique sur le lien correspondant à la version en cours, pas de probléme, le document s'ouvre bien sans authentification
          - Si l'utilisateur clique sur les liens correspondant à l'historique, une fenêtre d'authentification windows demande à l'utilisateur de s'identifier en tant qu'invité ce qui est trés génant

Je n'ai pas réussi à trouver la solution pour supprimer cette fenêtre. Pourquoi ?  Erreur de syntaxe dans le script ? Si quelqu'un a une piste ce sera avec plaisir

je vous mets en ligne le code de ce webscript

<#assign datetimeformat="EEEE dd/MM/yyyy">
<html>

  <head>

   <STYLE TYPE="text/css">
      a.rouge { color: red; }

      table.ged
      {
         font-family:verdana;
         font-size:12px;
      }


      td.ged
      {
         font-family:verdana;
         font-size:12px;
         padding-left:10px;
         padding-top:3px;
         padding-bottom:3px;
      }

   </STYLE>

  </head>
  <body BGCOLOR="E8EFF9">
    <h3>Recherche du dossier ${args.nom}</h3>
    <table class="ged" border=1 cellpadding=0 cellspacing=1 width=100%>
   
   <#list resultset?sort_by(["properties","{http://www.bonifay.com/model/content/1.0}type"])  as model>
         <tr>
         <td bgcolor="#DFE6EE"><i><b>${model.properties["{http://www.bonifay.com/model/content/1.0}type']}    &nbsp;</b></i><a href="http://192.168.10.47:8080/alfresco/service/bonifay/delete?nom=${model.name}?guest=true" class="rouge">Supprimer</a></td>
         </tr>
         <tr>
            <th></th><th bgcolor="#DFE6EE">Version</th><th bgcolor="#DFE6EE">Date de modification</th><th bgcolor="#DFE6EE">Commentaire</th><th bgcolor="#DFE6EE">Date d&#39;effet</th><th bgcolor="#DFE6EE">Date d&#39;échéance</th>
         </tr>
         <#assign first="true">
         <#list model.versionHistory?sort_by("versionLabel")?reverse as record>
            <#if first="true">
            <#assign first="false">
               <tr>
                  <td class="ged" ></td>
                  <td class="ged" ><a href="${url.serviceContext}/api/node/content/${model.nodeRef.storeRef.protocol}/${model.nodeRef.storeRef.identifier}/${model.nodeRef.id}/${model.name?url}?guest=true">${record.versionLabel}</a></td>
                  <td class="ged" >${record.createdDate?string(datetimeformat)}</td>
                  <td class="ged" ><#if record.description?exists>${record.description}<#else>Version initiale</#if></td>
                  <td class="ged" >${model.properties["{http://www.bonifay.com/model/content/1.0}emis']?string(datetimeformat)}</td>
                  <td class="ged" >${model.properties["{http://www.bonifay.com/model/content/1.0}validite']?string(datetimeformat)}</td>
               </tr>
            <#else>
               <tr>
                  <td class="ged" ></td>
                  <td class="ged" ><a href="/alfresco${record.url}?guest=true">${record.versionLabel}</a></td>
                  <td class="ged" >${record.createdDate?string(datetimeformat)}</td>
                  <td class="ged" ><#if record.description?exists>${record.description}<#else>Version initiale</#if>
                  <td class="ged" >${record.properties["{http://www.bonifay.com/model/content/1.0}emis']?string(datetimeformat)}</td>
                  <td class="ged" >${record.properties["{http://www.bonifay.com/model/content/1.0}validite']?string(datetimeformat)}</td>
               </tr>
            </#if>
            <#if record_has_next>
            </#if>
         </#list>
   </#list>
    </table>
  </body>
</html>

lien correspondant à la version en cours : <a href="${url.serviceContext}/api/node/content/${model.nodeRef.storeRef.protocol}/${model.nodeRef.storeRef.identifier}/${model.nodeRef.id}/${model.name?url}?guest=true">${record.versionLabel}</a>

lien correspondant à l&#39;historique du document : <a href="/alfresco${record.url}?guest=true">${record.versionLabel}</a>

Bien cordialement

Richard

Configuration :
  - Alfresco 3.0 Stable
  - Serveur Linux Centos 5.4
  - Authentification AD
  - ERP : X3
2 REPLIES 2

rivarola
Champ on-the-rise
Champ on-the-rise
Bonjour,
Le paramètre guest=true n'est pas reconnu par toutes les URL dans Alfresco. Dans le cas d'un accès à une version dans l'historique je pense que l'URL utilisée commence par /alfresco/d/a ou /alfresco/d/d. Si c'est le cas il suffit de remplacer le premier /d par /gd pour avoir une URL sans authentification requise.

richardb
Champ in-the-making
Champ in-the-making
Merci pour cette réponse rapide. Je confirme que le remplacement de /d/d par /gd/d empéche l'authentification client sur une version d'un document.

Je n'aurais jamais trouvé la solution sans votre aide.

Bien cordialement

Richard
Getting started

Tags


Find what you came for

We want to make your experience in Hyland Connect as valuable as possible, so we put together some helpful links.