AJAXGlideRecord-ACL-Überprüfung aktivieren (Instanzsicherheitshärtung)

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

    Von Client-Skripts aus können beliebige Daten vom Server abgefragt werden. Verwenden Sie dazu AJAXGlideRecord (GlideAjax -Client)-API, indem eine Syntax verwendet wird, z. B. ein serverseitiger Glide-Datensatz. Es ist ein leistungsstarkes und nützliches Tool für viele Bereitstellungen.

    Wenn Sie Zugriffssteuerungslisten (Access Control Lists, ACL) auf GlideAjax-API-Aufrufe 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, schlagen alle Aufrufe der GlideAjax-API für diese Tabelle fehl.

    Wenn Now Platform ohne GlideAjax-ACL-Aufrufprüfung ausgeführt wird, kann eine API Informationen zurückgeben, auf die der aktuell angemeldete Benutzer sonst 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 Stellen Sie sicher, dass Sicherheits-ACLs überprüft und validiert werden, auch wenn der Zugriff auf die Datensätze über clientseitige APIs erfolgt.
    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, hat dies potenzielle Auswirkungen. Weitere Informationen zu seinen Auswirkungen und zur Identifizierung finden Sie im Artikel Client-seitige GlideRecord-Transaktionen (AJAXGlideRecord) prüfen und überprüfen [KB0550828] in der HI Knowledge Base .
    Sicherheitsrisiko (Hoch) Mithilfe von Client-Skripts können beliebige Daten vom Server über die GlideAjax-API abgefragt werden. Der Zugriff auf serverseitige Ressourcen ist ohne ordnungsgemäße Autorisierung möglich. Die Verwendung der ACL-Validierung hilft 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 werden kann.

    Implementieren Sie Methoden wie canRead (), canWrite(), canCreate ()und canDelete (), um vor dem Zugriff auf Tabellendatensätze mit GlideRecord eine Anwenderautorisierung durchzuführen.

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

    Referenzen ACLs auf AJAXGlideRecord (clientseitiger Glide-Datensatz) anwenden
    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 von Systemeigenschaften finden Sie unter Add a system property.