Enable AJAXEvaluate

This article is based on the ServiceNow support article. See the original article on the ServiceNow support site: ServiceNow HI: Enable AJAXEvaluate

The glide.script.allow.ajaxevaluate property belongs to the same family as 2.5 (glide.script.use.sandbox) and 3.9 (glide.script.secure.ajaxgliderecord), that secures and restricts execution of scripts originating from the client. There are two cases within the system that allow the client to send scripts to the server for evaluation:

  • Filters and/or queries: It is legal to send a filter to the server such as: assigned_to=javascript:getMyGroups().
  • System API: The API call AJAXEvaluate allows the client to run arbitrary scripts on the server and receive a response. 

When this property is set to false, the system does not allow the use of AJAXEvaluate API call from the client script.

Enable AJAXEvaluate
Property Nameglide.script.allow.ajaxevaluate
Configuration TypeSystem Properties (/sys_properties_list.do)
PurposeRestrict arbitrary client script execution using the system API on the server side
RequirementMandatory
Recommended ValueFalse
Default BehaviorSet to false
Revertible behaviorN/A
Role requiredSecurity_admin 
Release VersionFall 2009
Functional Impact(Medium) This remediation would enforce AJAEvaluate processor to be turned off and could impact functionality is customer is explicitly using the AJAX evaluate processor as part of any customized scripts. For more information, see GlideAjax.
Security Risk(High) AJAXEvaluate can allow arbitrary javascript to execute on the client browser by leveraging the server side objects.
WorkaroundNo other workaround available.
References

ScriptSandboxing

GlideAjax

What's here


Related content

ServiceNow HI: Enable AJAXEvaluate




Last modified on Jun 29, 2020