Aktivieren der AJAXGlideRecord-ACL-Überprüfung (Härtung der Instanzsicherheit)

  • Freigeben Version: Washingtondc
  • Aktualisiert 1. Februar 2024
  • 2 Minuten Lesedauer
  • Verwenden Sie die Eigenschaft glide.script.secure.ajaxgliderecord, um eine Validierung der Zugriffskontrollregel (ACL) durchzuführen, wenn auf serverseitige Datensätze, z. B. Tabellen, mit GlideAjax-APIs in einem Client-Skript zugegriffen wird.

    Von Client-Skripts ist es möglich, beliebige Daten vom Server abzufragen, indem AJAXGlideRecord () verwendet wird.GlideAjax Client)-API, indem Sie eine Syntax wie einen serverseitigen Glide-Datensatz verwenden. Es ist ein leistungsstarkes und nützliches Tool in vielen Bereitstellungen.

    Wenn Sie Zugriffskontrolllisten (ACLs) auf Aufrufe der GlideAjax-API anwenden, können Sie nur Daten abfragen, auf die der aktuell verbundene Benutzer Zugriff hat. Wenn beispielsweise ein ESS-Benutzer angemeldet ist, der keine Rechte zum Lesen der Tabelle „cmn_location“ hat, schlägt ein Aufruf der GlideAjax-API für diese Tabelle fehl.

    Wenn Now Platform ohne Überprüfung des Aufrufs der GlideAjax-ACL ausgeführt wird, kann eine API Informationen zurückgeben, auf die der aktuell angemeldete Benutzer andernfalls nicht zugreifen könnte.

    Weitere Informationen

    Attribut Beschreibung
    Eigenschaftsname glide.script.secure.ajaxgliderecord
    Konfigurationstyp Systemeigenschaften (/sys_properties_list.do)
    Konfigurieren Sie im Instanz-Sicherheitszentrum Ja
    Zweck Stellt sicher, dass Sicherheits-ACLs auch dann überprüft und validiert werden, wenn auf die Datensätze über clientseitige APIs zugegriffen wird.
    Empfohlener Wert Wahr
    Funktionale Auswirkung (Hoch) Diese Korrektur erzwingt die ACL-Beziehung zu serverseitigen Datensätzen, wenn die Anforderungen mithilfe der AJAXGlideRecord-API-Aufrufe gestellt werden. Wenn die ACL-Konfiguration nicht ordnungsgemäß konfiguriert ist, kann dies Auswirkungen haben. Weitere Informationen zu ihren Auswirkungen und ihrer Identifizierung finden Sie im Artikel Audit and review client-side GlideRecord (AJAXGlideRecord)Transaktionen [KB0550828] im HI Knowledge Base .
    Sicherheitsrisiko (Hoch) Über Client-Skripts ist es möglich, beliebige Daten vom Server über die GlideAjax-API abzufragen. Auf serverseitige Ressourcen kann ohne entsprechende Autorisierung zugegriffen werden. Daher hilft die Verwendung der ACL-Validierung der Anwendung, die Anforderung basierend auf der konfigurierten Autorisierung zu validieren.
    Workaround

    Stellen Sie sicher, dass die richtigen ACLs für Skripteinbindungen, Prozessoren und andere Entitäten erstellt werden, die von einer GlideAjax-API (AJAXGlideRecord) verwendet werden, damit sie mit der richtigen Autorisierung ausgeführt wird.

    Implementieren Sie Methoden wie canRead (), canWrite (), canCreate ()und canDelete (), um eine Benutzerautorisierung durchzuführen, bevor Sie mit GlideRecord auf Tabellendatensätze zugreifen.

    Eine andere Methode ist die Verwendung von GlideRecordSecure. Die Klasse wird vom GlideRecord-Server geerbt, der dieselben Funktionen wie GlideRecord ausführt und auch ACLs erzwingt.

    Referenzen ACLs auf AJAXGlideRecord anwenden (clientseitiger Glide-Datensatz)
    Diese Eigenschaft gehört zu derselben Familie von Eigenschaften, die die Ausführung von Skripts sichern und einschränken, die vom Client stammen:

    Weitere Informationen zum Hinzufügen oder Erstellen einer Systemeigenschaft finden Sie unter Add a system property.