ACL Security Flaw when defining field level ACL, when condition depends on that field while utilizing RESTDescription<!-- div.margin{ padding: 10px 40px 40px 30px; } table.tocTable{ border: 1px solid; border-color:#E0E0E0; background-color: rgb(245, 245, 245); padding-top: .6em; padding-bottom: .6em; padding-left: .9em; padding-right: .6em; } table.noteTable{ border:1px solid; border-color:#E0E0E0; background-color: rgb(245, 245, 245); width: 100%; border-spacing:2; } table.internaltable { white-space:nowrap; text-align:left; border-width: 1px; border-collapse: collapse; font-size:14px; width: 85%; } table.internaltable th { border-width: 1px; padding: 5px; border-style: solid; border-color: rgb(245, 245, 245); background-color: rgb(245, 245, 245); } table.internaltable td { border-width: 1px; padding: 5px; border-style: solid; border-color: #E0E0E0; color: #000000; } .title { color: #D1232B; font-weight:normal; font-size:28px; } h1{ color: #D1232B; font-weight:normal; font-size:21px; margin-bottom:-5px } h2{ color: #646464; font-weight:bold; font-size:18px; } h3{ color: #000000; font-weight:BOLD; font-size:16px; text-decoration:underline; } h4{ color: #646464; font-weight:BOLD; font-size:15px; text-decoration:; } h5{ color: #000000; font-weight:BOLD; font-size:13px; text-decoration:; } h6{ color: #000000; font-weight:BOLD; font-size:14px; text-decoration:; } ul{ list-style: disc outside none; margin-left: 0; } li { padding-left: 1em; } --> Symptoms ACL allows for changes to a field that should be locked down using a field level write ACL. While the ACL is respected on the form view, when transacting via REST (Table API) or GlideRecordSecure, these field level ACLs are not respected. Release Istanbul and Jakarta. This issue is fixed in Kingston. Cause The root cause of the issue is PRB660114. Although the description does not explain this exact situation, the fix provided in this problem resolves the issue mentioned in this knowledge article. Resolution Upgrade to a fixed version as mentioned in PRB660114. There were several fixes done to GlideRecordSecure (GRS) for this PRB660114. The part of the problem that is relevant to the issue mentioned in this knowledge article is that previously GlideRecordSecure would read the current values of the record (including values changed by the user) when evaluating ACLs. After the fix, the values from the original record are used when evaluating the ACLs.