Explorer l’assainisseur HTML

  • Rversion finale: Yokohama
  • Mis à jour 30 janv. 2025
  • 2 minutes de lecture
  • Supprimez tout code indésirable et protégez-vous contre les problèmes de sécurité tels que les attaques de script site à site en assainissant le balisage HTML dans les champs HTML et les champs HTML traduits.

    Utilisez l’assainissement HTML pour vous assurer que le contenu HTML de votre instance ne contient pas de contenu potentiellement dangereux. L’assainissement HTML consiste à supprimer les balises HTML qui pourraient être utilisées pour compromettre votre instance, telles que <![CDATA[<script>]]>, <link>ou <embed> les balises qui peuvent être utilisées pour exécuter des scripts indésirables sur votre instance ou diriger vos utilisateurs vers du contenu indésirable. Les balises sûres qui contrôlent la mise en forme de votre contenu sont conservées. En tant qu’administrateur, vous pouvez personnaliser le contenu supprimé ou conservé. Vous pouvez également contrôler si l’assainissement s’applique à tout le contenu ou uniquement aux champs que vous spécifiez.

    L’assainisseur HTML fonctionne en vérifiant la liste d’inclusion intégrée pour le balisage que vous souhaitez toujours conserver. L’assainisseur fournit l’include de script HTMLSanitizerConfig que les administrateurs peuvent utiliser pour modifier la liste d’inclusion intégrée. Des éléments peuvent également être ajoutés à la liste d’exclusion pour supprimer le balisage HTML. Le contenu de la liste d’exclusion remplace la liste d’inclusion.

    Les types d’éléments suivants peuvent être ajoutés aux listes d’inclusion et d’exclusion :
    • Attributs globaux
    • N’importe quel élément HTML
    Remarque :
    Par défaut, les attributs d’URL tels que href et src ne prennent en charge que ces protocoles :
    • http
    • https
    • mailto
    • données
    Par exemple :
    <a href="https://community.servicenow.com/community"> ServiceNow Community </a>
    Remarque :
    Pour en savoir plus sur la propriété qui contrôle l’utilisation glide.html.sanitize_all_fields de l’assainisseur HTML, consultez Activer l’assainisseur HTML [mis à jour dans Centre de sécurité 1.3] Paramètres de renforcement de la sécurité de l’instance.

    Configurer urlAttributes et les protocoles

    Vous pouvez configurer les urlAttributes et leurs protocoles dans l’include de script HTMLSanitizer . Par exemple :

    HTML_WHITELIST : {
    urlAttributes: { "protocols" : [ "file", "notes" ] },
                    -  -
                    -  -
            }

    Étant donné que les notes se trouvent dans la liste d’inclusion dans cet exemple, cette URL n’est pas nettoyée :

    <a title=“Lotus” href=“Notes://ABC/X575C90019DE33/ABC594DCB76D86EB4925653E0011C4C1/ZZ90B7E2D33964749257EEA003456FD”>Lotus</a></p> 

    Liste d’inclusion par défaut

    Remarque :
    La liste d’inclusion par défaut est une liste système et n’est pas accessible aux utilisateurs de l’instance.
    BUILTIN_HTML_WHITELIST :{
     
        globalAttributes:{ attribute:["id","class","lang","title","style"],
     
                                     attributeValuePattern:{}},
     
        label:{ attribute:["for"]},
     
        font:{ attribute:["color","face","size"]},
     
        a:{ attribute:["href","nohref","name","shape"]},
     
        img:{ attribute:["src","name","alt","border","hspace","vspace","align","height","width"},
     
        table:{ attribute:["border","cellpadding","cellspacing","bgcolor","background","align","no resize","height","width","summary","frame","rules"]},
     
        th:{ attribute:["background","bgcolor","abbr","axis","headers","scope","nowrap","height","width","align","valign","char off","char","colspan","rowspan"]},
     
        td:{ attribute:["background","bgcolor","abbr","axis","headers","scope","nowrap","height","width","align","valign","char off","char","colspan","rowspan"]},
     
        tr:{ attribute:["background","height","width","align","valign","char off","char"]},
     
        thead:{attribute:["align","valign","char off","char"]}, 
     
        tbody:{attribute:["align","valign","char off","char"]}, 
     
        tfoot:{attribute:["align","valign","char off","char"]}, 
     
        colgroup:{attribute:["align","valign","char off","char","span","width"]}, 
     
        col:{attribute:["align","valign","char off","char","span","width"]},
     
        p:{attribute:["align"]},
     
        style:{attributeValuePattern:{"type":"text/css"}}
     
        canvas:{ attribute:["height","width"]},
     
        details:{ attribute:["open"]},
     
        summary:{ attribute:["open","valign","char off","char"]},
     
        button:{ attribute:["disabled","accesskey","type"]},
     
        form:{},
     
        input:{ attribute:["size","maxlength","checked","alt","src","type","disabled","readonly","accesskey","border","usemap"]},
     
        select:{ attribute:["disabled","multiple","size"]},
     
        textarea:{ attribute:["rows","cols","disabled","readonly","accesskey"]},
     
        option:{ attribute:["disabled","label","selected"]},
     
        div:{ attribute:["align"]},
     
        ol:{ attribute:["start","type","square"]},
     
        ul:{ attribute:["type","square","itemscope","itemtype","itemref"]},
     
        li:{ attribute:["value","fb__id","itemprop"]},
     
        span:{ attribute:["color","size","data-mce-bogus","itemprop","face"]},
     
        br:{ attribute:["clear"]},
     
        h3:{ attribute:["itemprop"]},
     
        html:{ attribute:["xmlns","lang","xml:lang"]},
     
        link:{ attribute:["rel","type","href","charset"]},
     
        meta:{ attribute:["name","content","scheme","charset","http-equiv"]},
     
        pre:{ attribute:["xml:space"]},
     
        noscript:{},    h1:{},    h2:{},      h4:{},    h5:{},    h6:{},   
     
        i:{},    b:{},    u:{},    strong:{},    em:{},    small:{},    big:{},   
     
        pre:{},    code:{},    cite:{},    samp:{},    sub:{},    sup:{},    
     
        strike:{},   center:{},  blockquote:{},    hr:{},      map:{},
     
        dd:{},    dt:{},    dl:{},  fieldset:{},    legend:{}, figure:{},  tt:{},
     
        body:{},   caption:{},   head:{},   title:{},  shape:{},},