Exiger la vérification de l’ACL AJAXGlideRecord [mis à jour dans Security Center 1.3]

  • Rversion finale: Xanadu
  • Mis à jour 1 août 2024
  • 2 minutes de lecture
  • Utilisez la propriété pour effectuer la validation de la règle de contrôle d’accès (ACL, Access Control Rule) lorsque l’accès glide.script.secure.ajaxgliderecord aux enregistrements côté serveur, tels que les tables, se fait grâce à des API GlideAjax à l’intérieur d’un script client.

    À partir de scripts clients, il est possible d’interroger des données arbitraires sur le serveur à l’aide de l’attribut AJAXGlideRecord (GlideAjax -Client), en utilisant une syntaxe telle qu’un enregistrement Glide côté serveur. Il s’agit d’un outil puissant et utile dans de nombreux déploiements.

    Si vous choisissez d’appliquer des listes de contrôle d’accès (ACL) aux appels d’API GlideAjax, vous ne pouvez interroger que les données auxquelles l’utilisateur actuellement connecté a accès. Par exemple, si un utilisateur ESS qui n’a pas les droits de lecture de la table cmn_location est connecté, tout appel d’API GlideAjax à cette table échouera.

    Si le est en cours d’exécution sans vérification d’appel Now Platform GlideAjax ACL, une API peut renvoyer des informations auxquelles l’utilisateur actuellement connecté ne pourrait pas accéder autrement.

    Avertissement :
    Il s’agit d’une propriété de sphère de sécurité, ce qui signifie que la valeur ne peut pas être modifiée une fois qu’elle a été modifiée. Il n’est pas réversible.

    En savoir plus

    Attribut Description
    Nom de la propriété glide.script.secure.ajaxgliderecord
    Type de configuration Propriétés système (/sys_properties_list.do)
    Catégorie Contrôle d'accès
    Objectif Assurez-vous que les ACL de sécurité sont vérifiées et validées même lorsque l’accès aux enregistrements s’effectue via des API côté client.
    Valeur recommandée VRAI
    Valeur par défaut VRAI
    Cote de risque de sécurité 8.1
    Impact fonctionnel (Élevé) Cette remédiation applique la relation ACL avec les enregistrements côté serveur lorsque les demandes sont effectuées à l’aide des appels d’API AJAXGlideRecord. Si la configuration ACL n’est pas correctement configurée, il y a un impact potentiel. Pour plus de détails sur son impact et sur la façon de l’identifier, reportez-vous à l’article Audit et examen des transactions GlideRecord côté client (AJAXGlideRecord) [KB0550828] dans le HI Base de connaissances .
    Risque de sécurité (Élevé) Grâce aux scripts clients, il est possible d’interroger des données arbitraires du serveur via l’API GlideAjax. Impossible d’accéder aux ressources côté serveur sans autorisation appropriée, de sorte que l’utilisation de la validation ACL aide l’application à valider la demande en fonction de l’autorisation configurée.
    Solution de contournement

    Assurez-vous que les ACL appropriées sont créées pour les includes de script, les processeurs et les autres entités utilisées par une API GlideAjax (AJAXGlideRecord) afin qu’elle s’exécute sous l’autorisation appropriée.

    Implémentez des méthodes telles que canRead (),canWrite(), canCreate() et canDelete () pour effectuer l’autorisation utilisateur avant d’accéder aux enregistrements de table à l’aide de GlideRecord.

    Une autre méthode consiste à utiliser GlideRecordSecure. La classe est héritée du serveur GlideRecord qui effectue les mêmes fonctions que GlideRecord et applique également les ACL.

    Références Appliquer des ACL à AJAXGlideRecord (enregistrement Glide côté client)
    Cette propriété appartient à la même famille de propriétés qui sécurisent et restreignent l’exécution de scripts provenant du client :

    Pour en savoir plus sur l’ajout ou la création d’une propriété système, reportez-vous à la section Add a system property.